Index: openacs-4/packages/xowiki/xowiki.info =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/xowiki.info,v diff -u -r1.180.2.126 -r1.180.2.127 --- openacs-4/packages/xowiki/xowiki.info 24 Jul 2024 17:07:55 -0000 1.180.2.126 +++ openacs-4/packages/xowiki/xowiki.info 11 Aug 2024 06:37:22 -0000 1.180.2.127 @@ -10,7 +10,7 @@ t xowiki - + Gustaf Neumann A xotcl-based enterprise wiki system with multiple object types 2023-07-11 @@ -55,11 +55,11 @@ BSD-Style 2 - + - + Index: openacs-4/packages/xowiki/tcl/resource-info-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/resource-info-procs.tcl,v diff -u -r1.1.2.9 -r1.1.2.10 --- openacs-4/packages/xowiki/tcl/resource-info-procs.tcl 29 Jul 2024 12:01:29 -0000 1.1.2.9 +++ openacs-4/packages/xowiki/tcl/resource-info-procs.tcl 11 Aug 2024 06:37:22 -0000 1.1.2.10 @@ -9,13 +9,27 @@ namespace eval ::xowiki::bootstrap_treeview { ad_proc -private ::xowiki::bootstrap_treeview::resource_info { - {-version "1.2.0"} + {-version ""} } { Get information about available version(s) of bootstrap-treeview either from the local filesystem, or from CDN. } { + set parameter_info { + package_key xowiki + parameter_name BootstrapTreeviewVersion + default_value 1.2.0 + } + + if {$version eq ""} { + dict with parameter_info { + set version [::parameter::get_global_value \ + -package_key $package_key \ + -parameter $parameter_name \ + -default $default_value] + } + } # # Setup variables for access via CDN vs. local resources. # @@ -47,6 +61,8 @@ urn:ad:js:bootstrap3-treeview bootstrap-treeview.min.js } \ versionCheckAPI {cdn cdnjs library bootstrap-treeview count 1} \ + vulnerabilityCheck {service snyk library bootstrap-treeview} \ + parameterInfo $parameter_info \ configuredVersion $version if {$cdnHost ne ""} { @@ -64,6 +80,230 @@ } +namespace eval ::xowiki::jquery { + + ad_proc -private ::xowiki::jquery::resource_info { + {-version ""} + } { + + Get information about available version(s) of jquery either + from the local filesystem, or from CDN. + + } { + set parameter_info { + package_key xowiki + parameter_name JqueryVersion + default_value 3.7.1 + } + + if {$version eq ""} { + dict with parameter_info { + set version [::parameter::get_global_value \ + -package_key $package_key \ + -parameter $parameter_name \ + -default $default_value] + } + } + # + # Setup variables for access via CDN vs. local resources. + # + set resourceDir [acs_package_root_dir xowiki/www/resources/jquery] + set cdn //cdnjs.cloudflare.com/ajax/libs/jquery + + set path $resourceDir/$version/jquery.min.js + ns_log notice "jquery: check $path ->" [file exists $path] + + if {[file exists $path]} { + set prefix /resources/xowiki/jquery/$version + set cdnHost "" + } else { + set prefix $cdn/$version + set cdnHost cdnjs.cloudflare.com + } + + # + # Return the dict with at least the required fields + # + lappend result \ + resourceName "jquery" \ + resourceDir $resourceDir \ + cdn $cdn \ + cdnHost $cdnHost \ + prefix $prefix \ + cssFiles {} \ + jsFiles {jquery.min.js} \ + extraFiles {} \ + urnMap { + urn:ad:js:jquery jquery.min.js + } \ + versionCheckAPI {cdn cdnjs library jquery count 1} \ + vulnerabilityCheck {service snyk library jquery} \ + parameterInfo $parameter_info \ + configuredVersion $version + + if {$cdnHost ne ""} { + lappend result csp_lists [subst { + urn:ad:js:jquery { + script-src $cdnHost + } + }] + } + return $result + } +} + + +namespace eval ::xowiki::jqueryui { + + ad_proc -private ::xowiki::jqueryui::resource_info { + {-version ""} + } { + + Get information about available version(s) of jqueryui either + from the local filesystem, or from CDN. + + } { + set parameter_info { + package_key xowiki + parameter_name JqueryuiVersion + default_value 1.14.0 + } + + if {$version eq ""} { + dict with parameter_info { + set version [::parameter::get_global_value \ + -package_key $package_key \ + -parameter $parameter_name \ + -default $default_value] + } + } + # + # Setup variables for access via CDN vs. local resources. + # + set resourceDir [acs_package_root_dir xowiki/www/resources/jqueryui] + set cdn //cdnjs.cloudflare.com/ajax/libs/jqueryui + + set path $resourceDir/$version/jquery-ui.min.js + ns_log notice "jquery-ui: check $path ->" [file exists $path] + + if {[file exists $path]} { + set prefix /resources/xowiki/jqueryui/$version + set cdnHost "" + } else { + set prefix $cdn/$version + set cdnHost cdnjs.cloudflare.com + } + + # + # Return the dict with at least the required fields + # + lappend result \ + resourceName "jquery-ui" \ + resourceDir $resourceDir \ + cdn $cdn \ + cdnHost $cdnHost \ + prefix $prefix \ + cssFiles {themes/base/jquery-ui.min.css} \ + jsFiles {jquery-ui.min.js} \ + extraFiles {} \ + urnMap { + urn:ad:css:jquery-ui themes/base/jquery-ui.min.css + urn:ad:js:jquery-ui jquery-ui.min.js + } \ + versionCheckAPI {cdn cdnjs library jqueryui count 5} \ + vulnerabilityCheck {service snyk library jquery-ui} \ + parameterInfo $parameter_info \ + configuredVersion $version + + if {$cdnHost ne ""} { + lappend result csp_lists [subst { + urn:ad:css:jqueryui { + style-src $cdnHost + } + urn:ad:js:jqueryui { + script-src $cdnHost + } + }] + } + return $result + } +} + +namespace eval ::xowiki::jqueryui_touchpunch { + + ad_proc -private ::xowiki::jqueryui_touchpunch::resource_info { + {-version ""} + } { + + Get information about available version(s) of jqueryui-touch-punch either + from the local filesystem, or from CDN. + + } { + set parameter_info { + package_key xowiki + parameter_name JqueryuiTouchPunchVersion + default_value 0.2.3 + } + + if {$version eq ""} { + dict with parameter_info { + set version [::parameter::get_global_value \ + -package_key $package_key \ + -parameter $parameter_name \ + -default $default_value] + } + } + # + # Setup variables for access via CDN vs. local resources. + # + set resourceDir [acs_package_root_dir xowiki/www/resources/jqueryui-touch-punch] + set cdn //cdnjs.cloudflare.com/ajax/libs/jqueryui-touch-punch + + set path $resourceDir/$version/jqueryui-touch-punch.min.js + ns_log notice "jqueryui-touch-punch: check $path ->" [file exists $path] + + if {[file exists $path]} { + set prefix /resources/xowiki/jqueryui-touch-punch/$version + set cdnHost "" + } else { + set prefix $cdn/$version + set cdnHost cdnjs.cloudflare.com + } + + # + # Return the dict with at least the required fields + # + lappend result \ + resourceName "jqueryui-touch-punch" \ + resourceDir $resourceDir \ + cdn $cdn \ + cdnHost $cdnHost \ + prefix $prefix \ + cssFiles {} \ + jsFiles {jqueryui-touch-punch.min.js} \ + extraFiles {} \ + urnMap { + urn:ad:js:jqueryui-touch-punch jqueryui-touch-punch.min.js + } \ + versionCheckAPI {cdn cdnjs library jqueryui-touch-punch count 1} \ + vulnerabilityCheck {service snyk library jquery-ui-touch-punch} \ + parameterInfo $parameter_info \ + configuredVersion $version + + if {$cdnHost ne ""} { + lappend result csp_lists [subst { + urn:ad:js:jqueryui-touch-punch { + script-src $cdnHost + } + }] + } + return $result + } +} + + + + # Local variables: # mode: tcl # tcl-indent-level: 2 Index: openacs-4/packages/xowiki/tcl/resource-init.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/resource-init.tcl,v diff -u -r1.3.2.20 -r1.3.2.21 --- openacs-4/packages/xowiki/tcl/resource-init.tcl 20 Mar 2024 10:25:34 -0000 1.3.2.20 +++ openacs-4/packages/xowiki/tcl/resource-init.tcl 11 Aug 2024 06:37:22 -0000 1.3.2.21 @@ -1,11 +1,6 @@ # # Register some URNs that we are providing for sharing. # -template::register_urn -urn urn:ad:js:jquery -resource /resources/xowiki/jquery/jquery-3.7.1.min.js -template::register_urn -urn urn:ad:js:jquery-ui -resource /resources/xowiki/jquery/jquery-ui.min.js -template::register_urn -urn urn:ad:css:jquery-ui -resource /resources/xowiki/jquery/jquery-ui.css -template::register_urn -urn urn:ad:js:jquery-ui-touch-punch \ - -resource /resources/xowiki/jquery/jquery.ui.touch-punch-0.2.3.js template::register_urn -urn urn:ad:js:bootstrap3 \ -resource //maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js \ @@ -16,7 +11,7 @@ if {![apm_package_enabled_p "highcharts"]} { template::register_urn -urn urn:ad:js:highcharts \ - -resource https://cdnjs.cloudflare.com/ajax/libs/highcharts/11.4.0/highcharts.js \ + -resource https://cdnjs.cloudflare.com/ajax/libs/highcharts/11.4.3/highcharts.js \ -csp_list {script-src cdnjs.cloudflare.com} } #template::register_urn -urn urn:ad:js:highcharts-theme -resource /resources/xowiki/highcharts/js/themes/gray.js @@ -49,15 +44,7 @@ template::register_urn -urn urn:ad:css:xowiki-bootstrap -resource /resources/xowiki/xowiki-bootstrap3.css template::register_urn -urn urn:ad:css:xowiki-bootstrap5 -resource /resources/xowiki/xowiki-bootstrap5.css -set resource_info [xowiki::bootstrap_treeview::resource_info -version 1.2.0] -foreach URN [dict keys [dict get $resource_info urnMap]] { - template::register_urn \ - -urn $URN \ - -resource [dict get $resource_info prefix]/[dict get $resource_info urnMap $URN] \ - -csp_list [expr {[dict exists $resource_info csp_lists $URN] - ? [dict set $resource_info csp_lists $URN] - : ""}] -} +::util::resources::register_urns -namespace xowiki # Index: openacs-4/packages/xowiki/www/sitewide-admin/download.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/www/sitewide-admin/download.tcl,v diff -u -r1.1.2.3 -r1.1.2.4 --- openacs-4/packages/xowiki/www/sitewide-admin/download.tcl 28 Jul 2024 12:15:01 -0000 1.1.2.3 +++ openacs-4/packages/xowiki/www/sitewide-admin/download.tcl 11 Aug 2024 06:37:22 -0000 1.1.2.4 @@ -3,10 +3,11 @@ @creation-date Jan 04, 2017 } { + {lib:token,notnull ""} {version:token,notnull ""} } -set resource_info [::xowiki::bootstrap_treeview::resource_info -version $version] +set resource_info [::xowiki::${lib}::resource_info -version $version] set resourceDir [dict get $resource_info resourceDir] file mkdir $resourceDir/$version @@ -26,9 +27,6 @@ ad_returnredirect . -#https://cdnjs.cloudflare.com/ajax/libs/bootstrap-treeview/1.2.0//bootstrap-treeview.min.css -# //cdnjs.cloudflare.com/ajax/libs/bootstrap-treeview/1.2.0/bootstrap-treeview.min.css - # Local variables: # mode: tcl # tcl-indent-level: 4 Index: openacs-4/packages/xowiki/www/sitewide-admin/index.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/www/sitewide-admin/index.adp,v diff -u -r1.1.2.2 -r1.1.2.3 --- openacs-4/packages/xowiki/www/sitewide-admin/index.adp 2 Feb 2024 12:31:36 -0000 1.1.2.2 +++ openacs-4/packages/xowiki/www/sitewide-admin/index.adp 11 Aug 2024 06:37:22 -0000 1.1.2.3 @@ -3,9 +3,35 @@ @context;literal@

@title;noquote@

+

The pages available for all package instances @package_key@ are available here: @package_key@ site-wide pages.

@resource_title;noquote@

-

Checking for @resoure_name@ in version @version@. - + +

    +
  • +

    @resoure_name1@

    + Checking for @resoure_name1@ in version @version1@. + +
  • + +
  • +

    @resoure_name2@

    +

    Checking for @resoure_name2@ in version @version2@. + +

  • + +
  • +

    @resoure_name3@

    +

    Checking for @resoure_name3@ in version @version3@. + +

  • + +
  • +

    @resoure_name4@

    +

    Checking for @resoure_name4@ in version @version4@. + +

  • + +
\ No newline at end of file Index: openacs-4/packages/xowiki/www/sitewide-admin/index.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/www/sitewide-admin/index.tcl,v diff -u -r1.1.2.4 -r1.1.2.5 --- openacs-4/packages/xowiki/www/sitewide-admin/index.tcl 24 Jul 2024 16:31:45 -0000 1.1.2.4 +++ openacs-4/packages/xowiki/www/sitewide-admin/index.tcl 11 Aug 2024 06:37:22 -0000 1.1.2.5 @@ -5,15 +5,31 @@ } { } set title "[::xowiki::Package pretty_name] - Site-wide Admin" +set context [list $title] set package_key [::xowiki::Package package_key] -set version 1.2.0 -set resource_info [::xowiki::bootstrap_treeview::resource_info -version $version] -set resoure_name [dict get $resource_info resourceName] set resource_title "Static resources" -set download_url [ad_conn url]/download?version=$version -set context [list $title] +set resource_info1 [::xowiki::bootstrap_treeview::resource_info] +set version1 [dict get $resource_info1 configuredVersion] +set resoure_name1 [dict get $resource_info1 resourceName] +set download_url1 [ad_conn url]/download?version=$version1&lib=bootstrap_treeview +set resource_info2 [::xowiki::jquery::resource_info] +set version2 [dict get $resource_info2 configuredVersion] +set resoure_name2 [dict get $resource_info2 resourceName] +set download_url2 [ad_conn url]/download?version=$version2&lib=jquery + +set resource_info3 [::xowiki::jqueryui::resource_info] +set version3 [dict get $resource_info3 configuredVersion] +set resoure_name3 [dict get $resource_info3 resourceName] +set download_url3 [ad_conn url]/download?version=$version3&lib=jqueryui + +set resource_info4 [::xowiki::jqueryui_touchpunch::resource_info] +set version4 [dict get $resource_info4 configuredVersion] +set resoure_name4 [dict get $resource_info4 resourceName] +set download_url4 [ad_conn url]/download?version=$version4&lib=jqueryui_touchpunch + + # Local variables: # mode: tcl # tcl-indent-level: 4