Index: openacs-4/packages/xowiki/tcl/bootstrap-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/bootstrap-procs.tcl,v diff -u -r1.3.2.1 -r1.3.2.2 --- openacs-4/packages/xowiki/tcl/bootstrap-procs.tcl 9 Feb 2016 11:06:34 -0000 1.3.2.1 +++ openacs-4/packages/xowiki/tcl/bootstrap-procs.tcl 21 Mar 2016 09:50:34 -0000 1.3.2.2 @@ -25,6 +25,7 @@ -superclass Menu \ -parameter { {autorender false} + {menubar} {containerClass "container"} {navbarClass "navbar navbar-default navbar-static-top"} } @@ -35,18 +36,143 @@ set js [parameter::get_global_value -package_key xowiki -parameter BootstrapJS] foreach url $css {::xo::Page requireCSS $url} foreach url $js {::xo::Page requireJS $url} + #::xo::Page requireJS "/resources/xowiki/dropzone.js" next } + + BootstrapNavbar instproc dropzoneJS {-uploadlink:required} { + + ::html::script -type "text/javascript" { + html::t [subst -nocommands { + + function($) { + 'use strict'; + + var dropZone = document.getElementById('drop-zone'); + var uploadForm = document.getElementById('js-upload-form'); + var progressBar = document.getElementById('dropzone-progress-bar'); + var uploadFileRunning = 0; + + var startUpload = function(files) { + if (typeof files !== "undefined") { + for (var i=0, l=files.length; i URL = $url" + + if {$url ne ""} { + # + # Do actually render the dropzone widget. + # + my dropzone -uploadlink $url + } + } + } } } @@ -112,7 +238,9 @@ ::xowiki::MenuBar instproc render-bootstrap {} { set M [my content] set mb [::xowiki::BootstrapNavbar \ - -id [my get_prop $M id] { + -id [my get_prop $M id] \ + -menubar [self] \ + { foreach {menu_att menu} $M { if {$menu_att eq "id"} continue #