Skip to content

Commit

Permalink
Harden page and include contracts using new acs-tcl feature
Browse files Browse the repository at this point in the history
  • Loading branch information
Elettrotecnica committed Jul 15, 2022
1 parent 619b258 commit c403e31
Show file tree
Hide file tree
Showing 36 changed files with 61 additions and 99 deletions.
6 changes: 3 additions & 3 deletions forums.info
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
<implements-subsite-p>f</implements-subsite-p>
<inherit-templates-p>t</inherit-templates-p>

<version name="1.4.0d4" url="http://openacs.org/repository/download/apm/forums-1.4.0d4.apm">
<version name="1.4.0d5" url="http://openacs.org/repository/download/apm/forums-1.4.0d5.apm">
<owner url="http://openacs.org">OpenACS</owner>
<summary>Online discussion forums.</summary>
<release-date>2021-09-15</release-date>
Expand All @@ -19,9 +19,9 @@
<maturity>2</maturity>
<package_instance_name>#forums.Forums#</package_instance_name>

<provides url="forums" version="1.4.0d4"/>
<provides url="forums" version="1.4.0d5"/>
<requires url="acs-kernel" version="5.10.0"/>
<requires url="acs-tcl" version="5.10.0"/>
<requires url="acs-tcl" version="5.10.1d18"/>
<requires url="acs-mail-lite" version="5.10.0"/>
<requires url="acs-subsite" version="5.10.0"/>
<requires url="attachments" version="0.11"/>
Expand Down
2 changes: 1 addition & 1 deletion lib/forums-portlet.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ ad_include_contract {
@param cache cache interval, seconds, 0 for no cache (default 0)
@param show_empty_p if set, show even if there are no contents (default 1)
} {
{package_id:integer ""}
{package_id:object_type(apm_package) ""}
{base_url:localurl ""}
{n:naturalnum,notnull 2}
{class:word ""}
Expand Down
8 changes: 3 additions & 5 deletions lib/forums/new.tcl
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
ad_page_contract {
ad_include_contract {

Create a Forum
By default redirects to the level above as that is prolly where the index page is
Expand All @@ -7,10 +7,8 @@ ad_page_contract {
@creation-date 2002-05-25
@cvs-id $Id$

}

if { ![info exists name] } {
set name {}
} {
{name ""}
}

set package_id [ad_conn package_id]
Expand Down
4 changes: 2 additions & 2 deletions lib/message/post.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ ad_include_contract {

} {
message_id:object_id,optional
forum_id:object_id,notnull
{parent_id:object_id ""}
forum_id:object_type(forums_forum)
{parent_id:object_type(forums_message) ""}
{subject:printable,string_length(max|200) ""}
{message_body:printable ""}
{message_body.format:token ""}
Expand Down
2 changes: 1 addition & 1 deletion lib/message/row.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ ad_include_contract {
@cvs-id $Id$

} {
{rownum:integer 1}
{rownum:naturalnum 1}
{presentation_type:word ""}
{forum_moderated_p:boolean 0}
{moderate_p:boolean 0}
Expand Down
2 changes: 1 addition & 1 deletion lib/message/threads-chunk.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ ad_include_contract {
@creation-date 2002-05-24
@cvs-id $Id$
} {
forum_id:naturalnum,notnull
forum_id:object_type(forums_forum)
{orderby:token,notnull "last_child_post,desc"}
{flush_p:boolean,notnull 0}
{page_size:naturalnum,notnull 30}
Expand Down
2 changes: 1 addition & 1 deletion lib/search/search-form.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ ad_include_contract {
@creation-date 2007-12-23
@cvs-id $Id$
} {
forum_id:naturalnum,optional
forum_id:object_type(forums_forum)
}

form create search -action search -has_submit 0
Expand Down
2 changes: 1 addition & 1 deletion lib/user/post-history-chunk.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ad_include_contract {
@cvs-id $Id$

} {
user_id:naturalnum,notnull
user_id:object_type(user)
{groupby:word "forum_name"}
{view:word "date"}
{alt_template ""}
Expand Down
2 changes: 1 addition & 1 deletion www/admin/forum-disable.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ad_page_contract {
@cvs-id $Id$

} {
forum_id:naturalnum,notnull
forum_id:object_type(forums_forum)
}

forum::disable -forum_id $forum_id
Expand Down
2 changes: 1 addition & 1 deletion www/admin/forum-edit.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ad_page_contract {
@cvs-id $Id$

} {
forum_id:naturalnum,notnull
forum_id:object_type(forums_forum)
{return_url:localurl "."}
}

Expand Down
2 changes: 1 addition & 1 deletion www/admin/forum-enable.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ad_page_contract {
@cvs-id $Id$

} {
forum_id:naturalnum,notnull
forum_id:object_type(forums_forum)
}

forum::enable -forum_id $forum_id
Expand Down
2 changes: 1 addition & 1 deletion www/admin/permissions-user-add.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ ad_page_contract {
@creation-date 2003-06-13
@cvs-id $Id$
} {
object_id:naturalnum,notnull
object_id:object_type(apm_package|forums_forum)
}

if { $object_id == [ad_conn package_id] } {
Expand Down
2 changes: 1 addition & 1 deletion www/admin/permissions.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ ad_page_contract {
@creation-date 2003-06-13
@cvs-id $Id$
} {
object_id:naturalnum,notnull
object_id:object_type(apm_package|forums_forum)
}

if { $object_id == [ad_conn package_id] } {
Expand Down
10 changes: 5 additions & 5 deletions www/admin/subscribe-others-2.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ ad_page_contract {
@cvs-id $Id$

} {
forum_id:naturalnum,notnull
type_id:naturalnum,notnull
forum_id:object_type(forums_forum)
type_id:object_type(notification_type)
{lines}
{return_url:localurl "."}
interval:notnull
delivery_method:notnull
interval:object_type(notification_interval)
delivery_method:object_type(notification_delivery_method)
{emails ""}
{subscriber_ids:integer,multiple}
{subscriber_ids:object_type(user),multiple}
{create_new_users_p:boolean "f"}
}

Expand Down
2 changes: 1 addition & 1 deletion www/admin/subscribe-others.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ad_page_contract {
@cvs-id $Id$

} {
forum_id:naturalnum,notnull
forum_id:object_type(forums_forum)
{return_url:localurl "."}
}

Expand Down
2 changes: 1 addition & 1 deletion www/forum-view-statistic.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ ad_page_contract {
@creation-date 2005-03-17

} {
forum_id:naturalnum,notnull
forum_id:object_type(forums_forum)
}

# Get user information
Expand Down
19 changes: 5 additions & 14 deletions www/forum-view.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,26 +7,17 @@ ad_page_contract {
@cvs-id $Id$

} -query {
forum_id:naturalnum,notnull
forum_id:object_type(forums_forum)
{orderby:token,notnull "last_child_post,desc"}
{flush_p:boolean,notnull 0}
page:naturalnum,optional,notnull
page_size:naturalnum,optional,notnull
}

ad_try {
#
# Get forum data
#
forum::get -forum_id $forum_id -array forum

} trap NOT_FOUND {} {
ns_returnnotfound
ad_script_abort

} on error {errMsg} {
error $errMsg $::errorInfo $::errorCode
}
#
# Get forum data
#
forum::get -forum_id $forum_id -array forum

# If disabled!
if {$forum(enabled_p) != "t"} {
Expand Down
6 changes: 1 addition & 5 deletions www/load-message-content.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,12 @@ ad_page_contract {
@creation-date 2006-04-21

} {
message_id:naturalnum,notnull
message_id:object_type(forums_message)
}


# Get the message information
forum::message::get -message_id $message_id -array message
if {![array exists message]} {
ns_returnnotfound
ad_script_abort
}

set message(content) [ad_html_text_convert \
-from $message(format) \
Expand Down
2 changes: 1 addition & 1 deletion www/mark-all-read.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ ad_page_contract {
@creation-date 2004-09-06

} {
forum_id:naturalnum,notnull
forum_id:object_type(forums_forum)
}

set user_id [ad_conn user_id]
Expand Down
12 changes: 3 additions & 9 deletions www/message-email.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,21 +7,15 @@ ad_page_contract {
@cvs-id $Id$

} {
message_id:naturalnum,notnull
} -validate {
valid_message_id -requires {message_id:naturalnum} {
# Load up the message information
forum::message::get -message_id $message_id -array message
if {![array exists message]} {
ad_complain "Invalid message_id"
}
}
message_id:object_type(forums_message)
}


# require login to avoid abuse from spammers
auth::require_login

forum::message::get -message_id $message_id -array message

# Get the message information
forum::security::require_read_forum -forum_id $message(forum_id)
set message(tree_level) 0
Expand Down
17 changes: 6 additions & 11 deletions www/message-post.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,25 +7,20 @@ ad_page_contract {
@cvs-id $Id$

} -query {
{forum_id:integer ""}
{parent_id:integer ""}
{forum_id:object_type(forums_forum) ""}
{parent_id:object_type(forums_message) ""}
} -validate {
forum_id_or_parent_id {
if {$forum_id eq "" && $parent_id eq ""} {
ad_complain [_ forums.lt_You_either_have_to]
}
if {$forum_id ne "" && ![forum::valid_forum_id_p -forum_id $forum_id]} {
ad_complain [_ acs-templating.Invalid_integer]
}
if {$parent_id ne ""} {
forum::message::get -message_id $parent_id -array parent_message
if {![info exists parent_message]} {
ad_complain [_ acs-templating.Invalid_integer]
}
}
}
}

if {$parent_id ne ""} {
forum::message::get -message_id $parent_id -array parent_message
}

if { [ns_queryget formbutton:post] ne "" } {
set action post
} elseif { [ns_queryget formbutton:preview] ne "" } {
Expand Down
12 changes: 3 additions & 9 deletions www/message-view.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,8 @@ ad_page_contract {
@cvs-id $Id$

} {
message_id:naturalnum,notnull
message_id:object_type(forums_message)
{display_mode:word ""}
} -validate {
valid_message_id -requires {message_id:naturalnum} {
# Load up the message information
forum::message::get -message_id $message_id -array message
if {![array exists message]} {
ad_complain "Invalid message_id"
}
}
}

#######################
Expand All @@ -25,6 +17,8 @@ ad_page_contract {
#
#######################

# Load up the message information
forum::message::get -message_id $message_id -array message

# Load up the forum information
forum::get -forum_id $message(forum_id) -array forum
Expand Down
2 changes: 1 addition & 1 deletion www/messages-get.tcl
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
ad_page_contract {
} {
cid:integer
cid:object_type(forums_message)
{op noop}
{sid nosid}
{dynamicmode:integer}
Expand Down
2 changes: 1 addition & 1 deletion www/moderate/forum.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ad_page_contract {
@cvs-id $Id$

} {
forum_id:naturalnum,notnull
forum_id:object_type(forums_forum)
}

# Check that the user can moderate the forum
Expand Down
2 changes: 1 addition & 1 deletion www/moderate/message-approve.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ad_page_contract {
@cvs-id $Id$

} {
message_id:naturalnum,notnull
message_id:object_type(forums_message)
{return_url:localurl "../message-view"}
}

Expand Down
2 changes: 1 addition & 1 deletion www/moderate/message-delete.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ad_page_contract {
@cvs-id $Id$

} {
message_id:naturalnum,notnull,verify
message_id:object_type(forums_message),verify
{return_url:localurl "../message-view"}
{confirm_p:boolean 0}
}
Expand Down
2 changes: 1 addition & 1 deletion www/moderate/message-edit.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ad_page_contract {
@cvs-id $Id$

} {
message_id:naturalnum,notnull
message_id:object_type(forums_message)
{return_url:localurl "../message-view"}
}

Expand Down
2 changes: 1 addition & 1 deletion www/moderate/message-move.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ ad_page_contract {
@creation-date 2005-03-14

} {
message_id:naturalnum,notnull
message_id:object_type(forums_message)
{return_url:localurl "../message-view"}
{confirm_p:boolean 0}
}
Expand Down
2 changes: 1 addition & 1 deletion www/moderate/message-reject.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ad_page_contract {
@cvs-id $Id$

} {
message_id:naturalnum,notnull
message_id:object_type(forums_message)
{return_url:localurl "../message-view"}
}

Expand Down
4 changes: 2 additions & 2 deletions www/moderate/move-thread-thread.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ ad_page_contract {
@creation-date 2005-03-29

} {
msg_id:naturalnum,notnull
selected_message:integer,notnull
msg_id:object_type(forums_message)
selected_message:object_type(forums_message)
{confirm_p:boolean 0}
}

Expand Down
Loading

0 comments on commit c403e31

Please sign in to comment.