Index: openacs-4/packages/dotlrn-bootstrap3-theme/dotlrn-bootstrap3-theme.info =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-bootstrap3-theme/dotlrn-bootstrap3-theme.info,v diff -u -r1.4.2.6 -r1.4.2.7 --- openacs-4/packages/dotlrn-bootstrap3-theme/dotlrn-bootstrap3-theme.info 24 Jul 2023 14:23:53 -0000 1.4.2.6 +++ openacs-4/packages/dotlrn-bootstrap3-theme/dotlrn-bootstrap3-theme.info 14 Feb 2024 11:01:19 -0000 1.4.2.7 @@ -6,33 +6,32 @@ <pretty-plural>dotLRN Bootstrap 3 Themes</pretty-plural> <initial-install-p>f</initial-install-p> <singleton-p>t</singleton-p> + <implements-subsite-p>f</implements-subsite-p> + <inherit-templates-p>t</inherit-templates-p> - <version name="2.10.1b1" url="http://openacs.org/repository/download/apm/dotlrn-bootstrap3-theme-2.10.1b1.apm"> - <owner url="mailto:manderga@wu.ac.at">manderga</owner> - <release-date>2021-09-16</release-date> - <vendor url="http://wu.ac.at">WU Vienna</vendor> + <version name="2.10.1b2" url="http://openacs.org/repository/download/apm/dotlrn-bootstrap3-theme-2.10.1b2.apm"> + <owner url="mailto:manderga@wu.ac.at">manderga</owner> <summary>Provides a Theme for DotLRN based on Twitter Bootstrap</summary> + <release-date>2024-02-14</release-date> + <vendor url="http://wu.ac.at">WU Vienna</vendor> <maturity>0</maturity> - <provides url="dotlrn-bootstrap3-theme" version="2.10.1b1"/> + <provides url="dotlrn-bootstrap3-theme" version="2.10.1b2"/> <requires url="dotlrn" version="2.10.1b1"/> - <requires url="openacs-bootstrap3-theme" version="5.9.1"/> + <requires url="openacs-bootstrap3-theme" version="5.10.1b1"/> <callbacks> - <callback type="after-install" proc="dotlrn_bootstrap3_theme::apm::after_install"/> - <callback type="before-uninstantiate" proc="dotlrn_bootstrap3_theme::apm::before_uninstantiate"/> - <callback type="before-uninstall" proc="dotlrn_bootstrap3_theme::apm::before_uninstall"/> + <callback type="before-uninstall" proc="dotlrn_bootstrap3_theme::apm::before_uninstall"/> + <callback type="after-install" proc="dotlrn_bootstrap3_theme::apm::after_install"/> + <callback type="before-uninstantiate" proc="dotlrn_bootstrap3_theme::apm::before_uninstantiate"/> + <callback type="after-upgrade" proc="dotlrn_bootstrap3_theme::apm::after_upgrade"/> </callbacks> <parameters> - <parameter datatype="string" min_n_values="1" max_n_values="1" name="AdditionalNavbarTabs" default="/dotlrn/ #dotlrn.Home# #dotlrn.Home_Accesskey# /dotlrn/courses #dotlrn.Courses# #dotlrn.Courses_Accesskey# /dotlrn/communities #dotlrn.Communities# #dotlrn.Communities_Accesskey# /dotlrn/control-panel #dotlrn.control_panel# #dotlrn.control_panel_accesskey#" description="list of URL Names pairs which will make it into additional navbar tabs"/> - - <parameter datatype="string" min_n_values="1" max_n_values="1" name="ZenToBootstrapMap" default="#new-portal.simple_1column_layout_name# #dotlrn-bootstrap3-theme.bootstrap-1column# #new-portal.simple_2column_layout_name# #dotlrn-bootstrap3-theme.bootstrap-2column# #new-portal.simple_3column_layout_name# #dotlrn-bootstrap3-theme.bootstrap-3column# #theme-zen.Zen_1_column# #dotlrn-bootstrap3-theme.bootstrap-1column# #theme-zen.Zen_2_column# #dotlrn-bootstrap3-theme.bootstrap-2column# #theme-zen.Zen_3_column# #dotlrn-bootstrap3-theme.bootstrap-3column# #theme-zen.Zen_thin_thick# #dotlrn-bootstrap3-theme.bootstrap-2column# #theme-zen.Zen_thin_thick_thin# #dotlrn-bootstrap3-theme.bootstrap-3column#" description="list of old layout/new layout names used to update an existing .LRN site"/> - - <parameter datatype="string" min_n_values="1" max_n_values="1" name="BootstrapToZenMap" default="#dotlrn-bootstrap3-theme.bootstrap-1column# #theme-zen.Zen_1_column# #dotlrn-bootstrap3-theme.bootstrap-2column# #theme-zen.Zen_2_column# #dotlrn-bootstrap3-theme.bootstrap-3column# #theme-zen.Zen_3_column#" description="list of old layout/new layout names used to update an existing .LRN site"/> - - <parameter datatype="string" min_n_values="1" max_n_values="1" name="GenericCommunityTab" default="0" description="Use a generic name for the community tab"/> + <parameter scope="instance" datatype="string" min_n_values="1" max_n_values="1" name="AdditionalNavbarTabs" default="/dotlrn/ #dotlrn.Home# #dotlrn.Home_Accesskey# /dotlrn/courses #dotlrn.Courses# #dotlrn.Courses_Accesskey# /dotlrn/communities #dotlrn.Communities# #dotlrn.Communities_Accesskey# /dotlrn/control-panel #dotlrn.control_panel# #dotlrn.control_panel_accesskey#" description="list of URL Names pairs which will make it into additional navbar tabs"/> + <parameter scope="instance" datatype="string" min_n_values="1" max_n_values="1" name="BootstrapToZenMap" default="#dotlrn-bootstrap3-theme.bootstrap-1column# #theme-zen.Zen_1_column# #dotlrn-bootstrap3-theme.bootstrap-2column# #theme-zen.Zen_2_column# #dotlrn-bootstrap3-theme.bootstrap-3column# #theme-zen.Zen_3_column#" description="list of old layout/new layout names used to update an existing .LRN site"/> + <parameter scope="instance" datatype="string" min_n_values="1" max_n_values="1" name="GenericCommunityTab" default="0" description="Use a generic name for the community tab"/> + <parameter scope="instance" datatype="string" min_n_values="1" max_n_values="1" name="ZenToBootstrapMap" default="#new-portal.simple_1column_layout_name# #dotlrn-bootstrap3-theme.bootstrap-1column# #new-portal.simple_2column_layout_name# #dotlrn-bootstrap3-theme.bootstrap-2column# #new-portal.simple_3column_layout_name# #dotlrn-bootstrap3-theme.bootstrap-3column# #theme-zen.Zen_1_column# #dotlrn-bootstrap3-theme.bootstrap-1column# #theme-zen.Zen_2_column# #dotlrn-bootstrap3-theme.bootstrap-2column# #theme-zen.Zen_3_column# #dotlrn-bootstrap3-theme.bootstrap-3column# #theme-zen.Zen_thin_thick# #dotlrn-bootstrap3-theme.bootstrap-2column# #theme-zen.Zen_thin_thick_thin# #dotlrn-bootstrap3-theme.bootstrap-3column#" description="list of old layout/new layout names used to update an existing .LRN site"/> </parameters> </version> </package> - Index: openacs-4/packages/dotlrn-bootstrap3-theme/tcl/apm-callback-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-bootstrap3-theme/tcl/apm-callback-procs.tcl,v diff -u -r1.2.2.3 -r1.2.2.4 --- openacs-4/packages/dotlrn-bootstrap3-theme/tcl/apm-callback-procs.tcl 21 Aug 2020 14:36:44 -0000 1.2.2.3 +++ openacs-4/packages/dotlrn-bootstrap3-theme/tcl/apm-callback-procs.tcl 14 Feb 2024 11:01:19 -0000 1.2.2.4 @@ -96,16 +96,16 @@ -template /packages/dotlrn-bootstrap3-theme/resources/masters/dotlrn-master \ -css { {-href /resources/acs-subsite/site-master.css -media all -order 0} -{-href //maxcdn.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css -media all -order 1} +{-href urn:ad:css:bootstrap3 -media all -order 1} {-href /resources/openacs-bootstrap3-theme/css/main.css -media all -order 2} {-href /resources/dotlrn-bootstrap3-theme/css/dotlrn.css -media all -order 3} {-href /resources/dotlrn-bootstrap3-theme/css/color/green.css -media all -order 4} {-href /resources/acs-templating/forms.css -media all -order 5} {-href /resources/acs-templating/lists.css -media all -order 6} } \ -js { -{-src "/resources/openacs-bootstrap3-theme/js/jquery-1.11.3.min.js" -order 1} -{-src "//maxcdn.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js" -order 2} + {-src urn:ad:js:jquery -order 1} + {-src urn:ad:js:bootstrap3 -order 2} } \ -form_template standard \ -list_template table \ @@ -153,7 +153,57 @@ subsite::delete_subsite_theme -key dotlrn_bootstrap3 } +ad_proc -private dotlrn_bootstrap3_theme::apm::after_upgrade { + {-from_version_name:required} + {-to_version_name:required} +} { + Upgrade logic +} { + apm_upgrade_logic \ + -from_version_name $from_version_name \ + -to_version_name $to_version_name \ + -spec { + 2.10.1b1 2.10.1b2 { + # + # Subsites using this theme before we change it. We + # exclude those that were customized. + # + set subsites [subsite::get_theme_subsites \ + -theme dotlrn_bootstrap3 -unmodified] + # + # Switch to URN for external dependencies + # + db_dml update { + update subsite_themes set + js = REPLACE(REPLACE(js, + '/resources/openacs-bootstrap3-theme/js/jquery-1.11.3.min.js', + 'urn:ad:js:jquery' + ), + '//maxcdn.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js', + 'urn:ad:js:bootstrap3' + ), + css = REPLACE(css, + '//maxcdn.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css', + 'urn:ad:css:bootstrap3' + ) + where key = 'dotlrn_bootstrap3' + } + + # + # Update the subsites + # + foreach subsite_id $subsites { + subsite::set_theme \ + -subsite_id $subsite_id \ + -theme dotlrn_bootstrap3 + } + } + } +} + + + # Local variables: # mode: tcl # tcl-indent-level: 4