Index: openacs-4/packages/news-aggregator/www/index.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/news-aggregator/www/index.tcl,v diff -u -N -r1.4 -r1.5 --- openacs-4/packages/news-aggregator/www/index.tcl 20 Mar 2004 14:51:53 -0000 1.4 +++ openacs-4/packages/news-aggregator/www/index.tcl 17 May 2004 13:27:50 -0000 1.5 @@ -11,17 +11,21 @@ set user_id [ad_conn user_id] set package_id [ad_conn package_id] set package_url [ad_conn package_url] +set per_user_aggregators_p [parameter::get -package_id -$package_id -parameter PerUserAggregatorsP -default 0] if { ![info exists aggregator_id] } { # Check whether the user has an aggregator if { !$user_id } { + if { !$per_user_aggregators_p } { + ad_returnredirect "public-aggregators" + } ad_redirect_for_registration ad_script_abort } set aggregator_id [news_aggregator::aggregator::user_default -user_id $user_id] - if { !$aggregator_id } { + if { !$aggregator_id && $per_user_aggregators_p } { set user_name [db_string select_user_name {}] set aggregator_name "${user_name}'s News Aggregator" @@ -42,6 +46,17 @@ ad_returnredirect "$aggregator_id" } +if { $aggregator_id == 0 } { + # May this user create her own aggregator? + set write_p [permission::permission_p \ + -object_id $package_id \ + -privilege write] + if { $write_p } { + ad_returnredirect "settings" + } + ad_returnredirect "public-aggregators" +} + set write_p [permission::permission_p \ -object_id $aggregator_id \ -privilege write]