Index: openacs-4/packages/dotlrn/tcl/community-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/tcl/community-procs.tcl,v
diff -u -r1.191.2.24 -r1.191.2.25
--- openacs-4/packages/dotlrn/tcl/community-procs.tcl 4 Mar 2006 19:56:47 -0000 1.191.2.24
+++ openacs-4/packages/dotlrn/tcl/community-procs.tcl 7 Mar 2006 05:39:34 -0000 1.191.2.25
@@ -2377,7 +2377,7 @@
set dotlrn_package_id [dotlrn::get_package_id]
set comm_site_template_id [db_string select_site_template_id {} -default "0"]
if {[parameter::get -package_id $dotlrn_package_id -parameter AdminChangeSiteTemplate_p]} {
- set site_template_id $comm_site_template_id
+ set site_template_id $comm_site_template_id
} else {
set site_template_id [parameter::get -package_id $dotlrn_package_id -parameter CommDefaultSiteTemplate_p]
if {$site_template_id != $comm_site_template_id} {
@@ -2386,6 +2386,20 @@
}
return $site_template_id
}
+
+ ad_proc -public assign_default_sitetemplate {
+ {-site_template_id:required}
+ } {
+ } {
+
+ # We need to update the portal theme before the first hit!
+ set new_theme_id [db_string select_portal_theme {}]
+ db_dml update_portal_themes {}
+ db_dml update_portal_admin_themes {}
+
+ util_memoize_flush_regexp "dotlrn_community::get_site_template_id_not_cached *"
+ }
+
}
Index: openacs-4/packages/dotlrn/tcl/community-procs.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/tcl/community-procs.xql,v
diff -u -r1.87.2.2 -r1.87.2.3
--- openacs-4/packages/dotlrn/tcl/community-procs.xql 13 Dec 2005 15:32:35 -0000 1.87.2.2
+++ openacs-4/packages/dotlrn/tcl/community-procs.xql 7 Mar 2006 05:39:34 -0000 1.87.2.3
@@ -625,6 +625,15 @@
+
+
+ select portal_theme_id
+ from dotlrn_site_templates
+ where site_template_id = :site_template_id
+
+
+
+
update portals
@@ -633,6 +642,23 @@
+
+
+ update portals
+ set theme_id = :new_theme_id
+ where portal_id in (select portal_id from dotlrn_communities_all )
+
+
+
+
+
+ update portals
+ set theme_id = :new_theme_id
+ where portal_id in (select admin_portal_id from dotlrn_communities_all )
+
+
+
+
select site_template_id
Index: openacs-4/packages/dotlrn/tcl/dotlrn-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/tcl/dotlrn-procs.tcl,v
diff -u -r1.74.8.5 -r1.74.8.6
--- openacs-4/packages/dotlrn/tcl/dotlrn-procs.tcl 13 Dec 2005 17:04:07 -0000 1.74.8.5
+++ openacs-4/packages/dotlrn/tcl/dotlrn-procs.tcl 7 Mar 2006 05:39:34 -0000 1.74.8.6
@@ -474,5 +474,17 @@
-default [parameter::get -package_id [dotlrn::get_package_id] \
-parameter DefaultMaster_p]]
}
+
+ ad_proc -public assign_default_sitetemplate {
+ {-site_template_id:required}
+ } {
+ } {
+
+ # We need to update the portal theme before the first hit!
+ set new_theme_id [db_string select_portal_theme {}]
+ db_dml update_portal_themes {update }
+ util_memoize_flush_regexp "dotlrn::get_site_template_id_not_cached *"
+ }
+
}
Index: openacs-4/packages/dotlrn/tcl/dotlrn-procs.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/tcl/dotlrn-procs.xql,v
diff -u -r1.17.8.3 -r1.17.8.4
--- openacs-4/packages/dotlrn/tcl/dotlrn-procs.xql 13 Dec 2005 15:32:35 -0000 1.17.8.3
+++ openacs-4/packages/dotlrn/tcl/dotlrn-procs.xql 7 Mar 2006 05:39:34 -0000 1.17.8.4
@@ -73,6 +73,22 @@
+
+
+ select portal_theme_id
+ from dotlrn_site_templates
+ where site_template_id = :site_template_id
+
+
+
+
+
+ update portals
+ set theme_id = :new_theme_id
+ where portal_id in ( select portal_id from dotlrn_users )
+
+
+
update portals
Index: openacs-4/packages/dotlrn/www/change-site-template.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/change-site-template.tcl,v
diff -u -r1.1.2.1 -r1.1.2.2
--- openacs-4/packages/dotlrn/www/change-site-template.tcl 13 Dec 2005 15:32:35 -0000 1.1.2.1
+++ openacs-4/packages/dotlrn/www/change-site-template.tcl 7 Mar 2006 05:39:35 -0000 1.1.2.2
@@ -57,6 +57,6 @@
ad_returnredirect $referer
ad_script_abort
} else {
- template::form::set_error site_templates site_templates "Debe seleccionar un Template!!"
+ template::form::set_error site_templates site_templates "You must select a Site Template!!"
}
}
\ No newline at end of file
Index: openacs-4/packages/dotlrn/www/admin/admin-params-site-templates.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/admin/admin-params-site-templates.tcl,v
diff -u -r1.1.2.3 -r1.1.2.4
--- openacs-4/packages/dotlrn/www/admin/admin-params-site-templates.tcl 14 Dec 2005 17:32:46 -0000 1.1.2.3
+++ openacs-4/packages/dotlrn/www/admin/admin-params-site-templates.tcl 7 Mar 2006 05:39:35 -0000 1.1.2.4
@@ -24,38 +24,49 @@
set template_options [db_list_of_lists select_templates {select pretty_name, site_template_id from dotlrn_site_templates}]
set template_options [lang::util::localize_list_of_lists -list $template_options]
-set user_change_p_old [parameter::get -package_id $dotlrn_package_id -parameter UserChangeSiteTemplate_p]
-set user_default_p_old [parameter::get -package_id $dotlrn_package_id -parameter UserDefaultSiteTemplate_p]
-set comm_change_p_old [parameter::get -package_id $dotlrn_package_id -parameter AdminChangeSiteTemplate_p]
-set comm_default_p_old [parameter::get -package_id $dotlrn_package_id -parameter CommDefaultSiteTemplate_p]
-
-ad_form -cancel_url $return_url -export { dotlrn_package_id return_url user_change_p_old user_default_p_old comm_change_p_old comm_default_p_old} -name admin-params -form {
+ad_form -cancel_url $return_url -export { dotlrn_package_id return_url } -name admin-params -form {
{user_change_p:text(radio)
{label "[_ dotlrn.Site_Template_Userchange]"}
{options { {"[_ dotlrn.Yes]" 1 } { "[_ dotlrn.No]" 0} } }
- {value $user_change_p_old}
}
- {user_default_p:text(select)
+ {user_default_sitetemplate:text(select)
{label "[_ dotlrn.Site_Template_Userdefault]"}
{options $template_options}
- {value $user_default_p_old}
}
{comm_change_p:text(radio)
{label "[_ dotlrn.Site_Template_Commchange]"}
{options { {"[_ dotlrn.Yes]" 1 } { "[_ dotlrn.No]" 0} } }
- {value $comm_change_p_old}
}
- {comm_default_p:text(select)
+ {comm_default_sitetemplate:text(select)
{label "[_ dotlrn.Site_Template_Commdefault]"}
{options $template_options}
- {value $comm_default_p_old}
}
- {none_default_p:text(text)
+ {none_default_sitetemplate:text(text)
{label "[_ dotlrn.Site_Template_Nonedefault]"}
- {value "[parameter::get -package_id $dotlrn_package_id -parameter DefaultMaster_p]"}
{html {size 50}}
}
+} -on_request {
+
+ set user_change_p [parameter::get -package_id $dotlrn_package_id -parameter UserChangeSiteTemplate_p]
+ set user_default_sitetemplate [parameter::get -package_id $dotlrn_package_id -parameter UserDefaultSiteTemplate_p]
+ set comm_change_p [parameter::get -package_id $dotlrn_package_id -parameter AdminChangeSiteTemplate_p]
+ set comm_default_sitetemplate [parameter::get -package_id $dotlrn_package_id -parameter CommDefaultSiteTemplate_p]
+ set none_default_sitetemplate [parameter::get -package_id $dotlrn_package_id -parameter DefaultMaster_p]
+
} -on_submit {
+
+ set user_change_p_old [parameter::get -package_id $dotlrn_package_id -parameter UserChangeSiteTemplate_p]
+ set comm_change_p_old [parameter::get -package_id $dotlrn_package_id -parameter AdminChangeSiteTemplate_p]
+
+ if { (!$user_change_p && $user_change_p_old) || (!$user_change_p && $user_default_sitetemplate != [parameter::get -package_id $dotlrn_package_id -parameter UserDefaultSiteTemplate_p]) } {
+ ns_log Warning "Flush for users"
+ dotlrn::assign_default_sitetemplate -site_template_id $user_default_sitetemplate
+ }
+
+ if { (!$comm_change_p && $comm_change_p_old) || (!$comm_change_p && $comm_default_sitetemplate != [parameter::get -package_id $dotlrn_package_id -parameter CommDefaultSiteTemplate_p]) } {
+ dotlrn_community::assign_default_sitetemplate -site_template_id $comm_default_sitetemplate
+ }
+
parameter::set_value -package_id $dotlrn_package_id \
-parameter "UserChangeSiteTemplate_p" \
-value $user_change_p
@@ -64,23 +75,17 @@
-parameter "AdminChangeSiteTemplate_p" \
-value $comm_change_p
- if {$user_default_p != $user_default_p_old} {
- parameter::set_value -package_id $dotlrn_package_id \
- -parameter "UserDefaultSiteTemplate_p" \
- -value $user_default_p
- util_memoize_flush_regexp "get_site_template_id_not_cached *"
- }
+ parameter::set_value -package_id $dotlrn_package_id \
+ -parameter "UserDefaultSiteTemplate_p" \
+ -value $user_default_sitetemplate
- if {$comm_default_p != $comm_default_p_old} {
- parameter::set_value -package_id $dotlrn_package_id \
- -parameter "CommDefaultSiteTemplate_p" \
- -value $comm_default_p
- util_memoize_flush_regexp "get_site_template_id_not_cached *"
- }
+ parameter::set_value -package_id $dotlrn_package_id \
+ -parameter "CommDefaultSiteTemplate_p" \
+ -value $comm_default_sitetemplate
parameter::set_value -package_id $dotlrn_package_id \
-parameter "DefaultMaster_p" \
- -value $none_default_p
+ -value $none_default_sitetemplate
} -after_submit {
ad_returnredirect $return_url