Browse Source

moved js and css from main page to js and css files

damien 11 years ago
parent
commit
fcef9e4f39

+ 143 - 2
pboard/pboard/public/css/style.css View File

@@ -1,4 +1,3 @@
1
-/* TurboGears flash bootstrap look */
2 1
 #flash > div {
3 2
   padding: 8px 35px 8px 14px;
4 3
   margin-bottom: 20px;
@@ -39,4 +38,146 @@
39 38
 .footer p {
40 39
     margin-bottom: 0;
41 40
     color: #555;
42
-}
41
+}
42
+
43
+/* Wrapper for page content to push down footer */
44
+#wrap {
45
+  min-height: 100%;
46
+  height: auto !important;
47
+  height: 100%;
48
+  /* Negative indent footer by it's height */
49
+  margin: 0 auto -60px;
50
+}
51
+
52
+/* Lastly, apply responsive CSS fixes as necessary */
53
+@media (max-width: 767px) {
54
+  #footer {
55
+    margin-left: -20px;
56
+    margin-right: -20px;
57
+    padding-left: 20px;
58
+    padding-right: 20px;
59
+  }
60
+}
61
+
62
+/* vertical align icons in legend nodes */
63
+legend > i {
64
+  vertical-align: baseline !important;
65
+}
66
+      
67
+
68
+div.pod-toolbar {
69
+  visibility: hidden;
70
+  position: absolute;
71
+  right: 1.2em;
72
+  top: 0;
73
+}
74
+
75
+.pod-toolbar-parent {
76
+  border-bottom: 1px dotted #CCC;
77
+}
78
+.pod-toolbar-parent:Hover {
79
+  background-color: #EFEFEF;
80
+}
81
+.pod-toolbar-parent:Hover > div.pod-toolbar {
82
+  visibility: visible;
83
+}
84
+.pod-status {
85
+  position: absolute;
86
+  width: 1.2em;
87
+  text-align: center;
88
+  right: 0;
89
+  top: 0;
90
+}
91
+
92
+.pod-item-nb-sup-block {
93
+  color: #3a87ad;
94
+  font-weight: bold;
95
+}
96
+
97
+h3:Hover div.pod-toolbar {
98
+  visibility: visible;
99
+}
100
+
101
+.pod-blue {color: #3a87ad !important; }
102
+.pod-red {color: #F00 !important; }
103
+.pod-grey {color: #999 !important; }
104
+.pod-dark-grey {color: #333333 !important; }
105
+
106
+
107
+body { padding-top: 60px; }
108
+@media screen and (max-width: 768px) {
109
+    body { padding-top: 0px; }
110
+}
111
+
112
+/*
113
+##########################
114
+##
115
+## HERE COMES THE FULLSCREEN CODE FOR RICH TEXT EDITING
116
+##
117
+## FIXME - D.A. - 2013-11-13 - This code is testing, to remove later
118
+*/
119
+.full-size-overlay {
120
+  height:100%;
121
+  width:100%;
122
+  position:fixed;
123
+  left:0;
124
+  top:0;
125
+  z-index:0 !important;
126
+  background-color:white;
127
+  
128
+  filter: alpha(opacity=90); /* internet explorer */
129
+  -khtml-opacity: 0.9;      /* khtml, old safari */
130
+  -moz-opacity: 0.9;       /* mozilla, netscape */
131
+  opacity: 0.9;           /* fx, safari, opera */
132
+}
133
+
134
+.full-size-overlay-inner {
135
+  margin: 3.5em 0.5em 0.5em 0.5em;
136
+  overflow: auto;
137
+  max-height: 85%;
138
+}
139
+
140
+
141
+tr:Hover td div.pod-toolbar {
142
+  visibility: hidden;
143
+}
144
+tr:Hover td div.pod-toolbar {
145
+  visibility: visible;
146
+}
147
+
148
+.pod-status-grey-light  { background-color: #DDD; }
149
+.pod-status-grey-middle { background-color: #BBB; }
150
+.pod-status-grey-dark   { background-color: #AAA; }
151
+.pod-status-active      { background-color: #FEE; }
152
+
153
+.pod-rich-text-zone {
154
+  overflow:auto;
155
+  min-height:3em;
156
+  max-height: 10%;
157
+  border: 1px solid #CCC;
158
+  padding: 0.5em;
159
+  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
160
+  border-radius: 4px;
161
+  background-color: white;
162
+}
163
+
164
+.pod-input-like-shadow {
165
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
166
+  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
167
+  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
168
+  -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
169
+  -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
170
+  -ms-transition: border linear 0.2s, box-shadow linear 0.2s;
171
+  -o-transition: border linear 0.2s, box-shadow linear 0.2s;
172
+  transition: border linear 0.2s, box-shadow linear 0.2s;
173
+}
174
+.pod-input-like-shadow:focus {
175
+  border-color: rgba(82, 168, 236, 0.8);
176
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
177
+  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
178
+  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
179
+  outline: 0;
180
+  outline: thin dotted \9;
181
+}
182
+
183
+.navbar .nav > li > a.pod-do-not-display { display: none; }

+ 373 - 0
pboard/pboard/public/javascript/pod.js View File

@@ -0,0 +1,373 @@
1
+  function toggleFullScreen(outerWidgetId, innerWidgetId) {
2
+    if($(outerWidgetId).hasClass('full-size-overlay')) {
3
+      // Toggle from fullscreen to "normal"
4
+      $(outerWidgetId).removeClass('full-size-overlay');
5
+      $(innerWidgetId).removeClass('full-size-overlay-inner');
6
+      $('.pod-toggle-full-screen-button > i').removeClass('fa-compress')
7
+      $('.pod-toggle-full-screen-button > i').addClass('fa-expand')
8
+    } else {
9
+      $(outerWidgetId).addClass('full-size-overlay');
10
+      $(innerWidgetId).addClass('full-size-overlay-inner');
11
+      $('.pod-toggle-full-screen-button > i').removeClass('fa-expand')
12
+      $('.pod-toggle-full-screen-button > i').addClass('fa-compress')
13
+    }
14
+  }
15
+
16
+  function initToolbarBootstrapBindings(richTextEditorId) {
17
+    // $('a[title]').tooltip({container:'body'});
18
+    $(richTextEditorId+' > .dropdown-menu input').click(function() {return false;})
19
+      .change(function () {$(this).parent('.dropdown-menu').siblings('.dropdown-toggle').dropdown('toggle');})
20
+      .keydown('esc', function () {this.value='';$(this).change();});
21
+
22
+    $('[data-role=magic-overlay]').each(function () { 
23
+      var overlay = $(this), target = $(overlay.data('target')); 
24
+      overlay.css('opacity', 0).css('position', 'absolute').offset(target.offset()).width(target.outerWidth()).height(target.outerHeight());
25
+    });
26
+    if ("onwebkitspeechchange" in document.createElement("input")) {
27
+      var editorOffset = $(richTextEditorId).offset();
28
+      $('#voiceBtn').css('position','absolute').offset({top: editorOffset.top, left: editorOffset.left+$(richTextEditorId).innerWidth()-35});
29
+    } else {
30
+      $('#voiceBtn').hide();
31
+    }
32
+  };
33
+  function showErrorAlert (reason, detail) {
34
+    var msg='';
35
+    if (reason==='unsupported-file-type') { msg = "Unsupported format " +detail; }
36
+    else {
37
+      console.log("error uploading file", reason, detail);
38
+    }
39
+    $('<div class="alert"> <button type="button" class="close" data-dismiss="alert">&times;</button>'+ 
40
+     '<strong>File upload error</strong> '+msg+' </div>').prependTo('#alerts');
41
+  };
42
+
43
+  $(document).ready(function() {
44
+
45
+    $('#create_document_save_button').on('click', function(e){
46
+      // We don't want this to act as a link so cancel the link action
47
+      e.preventDefault();
48
+
49
+      // Find form and submit it
50
+      $('#create_document_form').submit();
51
+    });
52
+
53
+// ## FIXME                $('#current_node_textarea').wysihtml5({
54
+// ## FIXME                  "font-styles": true, //Font styling, e.g. h1, h2, etc. Default true
55
+// ## FIXME                  "emphasis": true, //Italics, bold, etc. Default true
56
+// ## FIXME                  "lists": true, //(Un)ordered lists, e.g. Bullets, Numbers. Default true
57
+// ## FIXME                  "html": true, //Button which allows you to edit the generated HTML. Default false
58
+// ## FIXME                  "link": true, //Button to insert a link. Default true
59
+// ## FIXME                  "image": true, //Button to insert an image. Default true,
60
+// ## FIXME                  // "color": true //Button to change color of font  
61
+// ## FIXME                });
62
+// ## FIXME                $('#current_node_textarea').css('margin-bottom', '0');
63
+// ## FIXME                $('#current_node_textarea').css("min-height", "12em");
64
+// ## FIXME                $('#current_node_textarea').addClass("span5");
65
+
66
+// ###################
67
+// ##
68
+// ## HERE
69
+// ##
70
+// ###################
71
+
72
+// ##
73
+// ## RE-IMPLEMENT THIS SOON !!!
74
+// ##
75
+// ##                /* Edit title form */
76
+// ##                $("#current-document-title-edit-form" ).css("display", "none");
77
+// ##                $("#current-document-title" ).dblclick(function() {
78
+// ##                  $("#current-document-title" ).css("display", "none");
79
+// ##                  $("#current-document-title-edit-form" ).css("display", "block");
80
+// ##                });
81
+// ##                $("#current-document-title-edit-cancel-button" ).click(function() {
82
+// ##                  $("#current-document-title" ).css("display", "block");
83
+// ##                  $("#current-document-title-edit-form" ).css("display", "none");
84
+// ##                });
85
+// ##                $('#current-document-title-save-cancel-button').on('click', function(e){
86
+// ##                  // We don't want this to act as a link so cancel the link action
87
+// ##                  e.preventDefault();
88
+// ##                  $('#current-document-title-edit-form').submit();
89
+// ##                });
90
+
91
+
92
+    /* EDIT CONTENT FORM */
93
+    $("#current-document-content-edit-form" ).css("display", "none");
94
+    $("#current-document-content-edit-button" ).click(function() {
95
+      $("#current-document-content" ).css("display", "none");
96
+      $("#current-document-content-edit-form" ).css("display", "block");
97
+    });
98
+    $("#current-document-content" ).dblclick(function() {
99
+      $("#current-document-content" ).css("display", "none");
100
+      $("#current-document-content-edit-form" ).css("display", "block");
101
+    });
102
+    $("#current-document-content-edit-cancel-button" ).click(function() {
103
+      $("#current-document-content" ).css("display", "block");
104
+      $("#current-document-content-edit-form" ).css("display", "none");
105
+    });
106
+    $('#current-document-content-edit-save-button').on('click', function(e){
107
+      // We don't want this to act as a link so cancel the link action
108
+      e.preventDefault();
109
+      $('#current_node_textarea_wysiwyg').cleanHtml();
110
+      $('#current_node_textarea').val($('#current_node_textarea_wysiwyg').html());
111
+      $('#current-document-content-edit-form').submit();
112
+    });
113
+
114
+    /* ADD EVENT => FORM */
115
+    $('#add_event_data_content_textarea').wysiwyg();
116
+    $('#add_event_data_content_textarea').css('margin-bottom', '0');
117
+    $('#add_event_data_content_textarea').css("height", "4em");
118
+    $('#add_event_data_content_textarea').addClass("span3");
119
+    /* ADD EVENT => SHOW/HIDE/SUBMIT BUTTONS */
120
+    $("#current-document-add-event-button" ).click(function() {
121
+      $("#current-document-add-event-form" ).css("display", "block");
122
+      $("#current-document-add-event-button" ).css("display", "none");
123
+    });
124
+    $('#current-document-add-event-cancel-button').on('click', function(e){
125
+      $("#current-document-add-event-form" ).css("display", "none");
126
+      $("#current-document-add-event-button" ).css("display", "block");
127
+    });
128
+    $('#current-document-add-event-save-button').on('click', function(e){
129
+      e.preventDefault(); // We don't want this to act as a link so cancel the link action
130
+      $('#add_event_data_content_textarea_wysiwyg').cleanHtml();
131
+      $('#add_event_data_content_textarea').val($('#add_event_data_content_textarea_wysiwyg').html());
132
+      $('#current-document-add-event-form').submit();
133
+    });
134
+
135
+    /* ADD CONTACT => FORM */
136
+    $('#add_contact_data_content_textarea').wysiwyg();
137
+    $('#add_contact_data_content_textarea').css('margin-bottom', '0');
138
+    $('#add_contact_data_content_textarea').css("height", "4em");
139
+    $('#add_contact_data_content_textarea').addClass("span3");
140
+    /* ADD CONTACT => SHOW/HIDE/SUBMIT BUTTONS */
141
+    $("#current-document-add-contact-button" ).click(function() {
142
+      $("#current-document-add-contact-form" ).css("display", "block");
143
+      $("#current-document-add-contact-button" ).css("display", "none");
144
+    });
145
+    $('#current-document-add-contact-cancel-button').on('click', function(e){
146
+      $("#current-document-add-contact-form" ).css("display", "none");
147
+      $("#current-document-add-contact-button" ).css("display", "block");
148
+    });
149
+    $('#current-document-add-contact-save-button').on('click', function(e){
150
+      e.preventDefault(); // We don't want this to act as a link so cancel the link action
151
+      $('#add_contact_data_content_textarea_wysiwyg').cleanHtml();
152
+      $('#add_contact_data_content_textarea').val($('#add_contact_data_content_textarea_wysiwyg').html());
153
+      $('#current-document-add-contact-form').submit();
154
+    });
155
+
156
+
157
+    /* ADD COMMENT => FORM */
158
+    $('#add_comment_data_content_textarea').wysiwyg();
159
+    $('#add_comment_data_content_textarea').css('margin-bottom', '0');
160
+    $('#add_comment_data_content_textarea').css("height", "4em");
161
+    $('#add_comment_data_content_textarea').addClass("span3");
162
+    /* ADD COMMENT => SHOW/HIDE/SUBMIT BUTTONS */
163
+    $("#current-document-add-comment-button" ).click(function() {
164
+      $("#current-document-add-comment-form" ).css("display", "block");
165
+      $("#current-document-add-comment-button" ).css("display", "none");
166
+    });
167
+    $('#current-document-add-comment-cancel-button').on('click', function(e){
168
+      $("#current-document-add-comment-form" ).css("display", "none");
169
+      $("#current-document-add-comment-button" ).css("display", "block");
170
+    });
171
+    $('#current-document-add-comment-save-button').on('click', function(e){
172
+      e.preventDefault(); // We don't want this to act as a link so cancel the link action
173
+      $('#add_comment_data_content_textarea_wysiwyg').cleanHtml();
174
+      $('#add_comment_data_content_textarea').val($('#add_comment_data_content_textarea_wysiwyg').html());
175
+      $('#current-document-add-comment-form').submit();
176
+    });
177
+
178
+    /* ADD FILE => FORM */
179
+    $('#add_file_data_content_textarea').wysiwyg();
180
+    $('#add_file_data_content_textarea').css('margin-bottom', '0');
181
+    $('#add_file_data_content_textarea').css("height", "4em");
182
+    $('#add_file_data_content_textarea').addClass("span3");
183
+    /* ADD FILE => SHOW/HIDE/SUBMIT BUTTONS */
184
+    $("#current-document-add-file-button" ).click(function() {
185
+      $("#current-document-add-file-form" ).css("display", "block");
186
+      $("#current-document-add-file-button" ).css("display", "none");
187
+    });
188
+    $('#current-document-add-file-cancel-button').on('click', function(e){
189
+      $("#current-document-add-file-form" ).css("display", "none");
190
+      $("#current-document-add-file-button" ).css("display", "block");
191
+    });
192
+    $('#current-document-add-file-save-button').on('click', function(e){
193
+      e.preventDefault(); // We don't want this to act as a link so cancel the link action
194
+      $('#add_file_data_content_textarea_wysiwyg').cleanHtml();
195
+      $('#add_file_data_content_textarea').val($('#add_file_data_content_textarea_wysiwyg').html());
196
+      $('#current-document-add-file-form').submit();
197
+    });
198
+
199
+    $(function() {
200
+      $('.datetime-picker-input-div').datetimepicker({
201
+        language: 'fr-FR',
202
+        pickSeconds: false
203
+      });
204
+    });
205
+
206
+/*
207
+    // Allow to go directly to required tab on load
208
+    // Javascript to enable link to tab
209
+    var url = document.location.toString();
210
+    if (url.match('#')) {
211
+      $('.nav-tabs a[href=#'+url.split('#')[1]+']').tab('show') ;
212
+    } 
213
+
214
+    // Change hash for page-reload
215
+    $('.nav-tabs a').on('shown', function (e) {
216
+      window.location.hash = e.target.hash;
217
+    })
218
+*/
219
+    // #################################
220
+    // ##
221
+    // ## The following JS code allow t
222
+    // ##
223
+    // ##
224
+    // Javascript to enable link to tab
225
+    var hash = document.location.hash;
226
+    var prefix = "tab-";
227
+    if (hash) {
228
+        $('.nav-tabs a[href='+hash.replace(prefix,"")+']').tab('show');
229
+    } 
230
+
231
+    // Change hash for page-reload
232
+    $('.nav-tabs a').on('shown', function (e) {
233
+        window.location.hash = e.target.hash.replace("#", "#" + prefix);
234
+    });
235
+
236
+  
237
+    // #################################
238
+    // ##
239
+    // ## Show/hide behavior
240
+    // ## for the main menu
241
+    // ##
242
+    // ##
243
+    $('a.toggle-child-menu-items').on('click', function (e) {
244
+      parent_id    = $(this).parent().attr('id');
245
+      child        = $('#'+parent_id+'-children');
246
+      togglebutton = $(this).children('i:first')
247
+      if(child.css('display')=='none'){
248
+        child.css("display", "block");
249
+        togglebutton.removeClass('icon-g-folder-plus');
250
+        togglebutton.attr('class', 'icon-g-folder-open');
251
+        console.log("class is: "+togglebutton.attr('class'));
252
+      } else {
253
+        child.css("display", "none");
254
+        togglebutton.removeClass('icon-g-folder-open');
255
+        togglebutton.addClass('icon-g-folder-plus');
256
+        console.log("class is: "+togglebutton.attr('class'));
257
+      }
258
+    });
259
+
260
+    // #################################
261
+    // ##
262
+    // ## large / small view of the document
263
+    // ## (toggle visibility of the left panel)
264
+    // ##
265
+    // ##
266
+    $('a#view-size-toggle-button-small').on('click', function (e) {
267
+      console.log("Toggle view mode");
268
+      $('#view-size-toggle-button-small').css('display', 'none');
269
+      $('#view-size-toggle-button-medium').css('display', 'block');
270
+      $('#view-size-toggle-button-large').css('display', 'none');
271
+  
272
+      left_panel_id     = '#application-left-panel'; // is span3 by default (to be hidden in fullscreen mode)
273
+      main_panel_id     = '#application-main-panel'; // is span9 by default (to be 12 in fullscreen mode)
274
+      docu_panel_id     = '#application-document-panel'; // is span5 by default (to be span8 in fullscreen mode)
275
+      metadata_panel_id = '#application-metadata-panel';
276
+      
277
+      left_panel = $(left_panel_id);
278
+      main_panel = $(main_panel_id);
279
+      docu_panel = $(docu_panel_id);
280
+      metadata_panel = $(metadata_panel_id);
281
+
282
+      console.log("Toggle from small (default) to medium (no left tab)");
283
+      left_panel.css('display', 'block');
284
+      metadata_panel.css('display', 'block');
285
+      main_panel.removeClass('span9');
286
+      main_panel.removeClass('span12');
287
+      main_panel.addClass('span9');
288
+      
289
+      docu_panel.removeClass('span5');
290
+      docu_panel.removeClass('span8');
291
+      docu_panel.removeClass('span12');
292
+      docu_panel.addClass('span5');
293
+    });
294
+
295
+    $('a#view-size-toggle-button-medium').on('click', function (e) {
296
+      console.log("Toggle view mode to: MEDIUM");
297
+      $('#view-size-toggle-button-small').css('display', 'none');
298
+      $('#view-size-toggle-button-medium').css('display', 'none');
299
+      $('#view-size-toggle-button-large').css('display', 'block');
300
+
301
+      left_panel_id     = '#application-left-panel'; // is span3 by default (to be hidden in fullscreen mode)
302
+      main_panel_id     = '#application-main-panel'; // is span9 by default (to be 12 in fullscreen mode)
303
+      docu_panel_id     = '#application-document-panel'; // is span5 by default (to be span8 in fullscreen mode)
304
+      metadata_panel_id = '#application-metadata-panel';
305
+      
306
+      left_panel = $(left_panel_id);
307
+      main_panel = $(main_panel_id);
308
+      docu_panel = $(docu_panel_id);
309
+      metadata_panel = $(metadata_panel_id);
310
+
311
+      left_panel.css('display', 'none');
312
+      metadata_panel.css('display', 'block');
313
+      
314
+      main_panel.removeClass('span9');
315
+      main_panel.addClass('span12');
316
+      
317
+      docu_panel.removeClass('span5');
318
+      docu_panel.removeClass('span12');
319
+      docu_panel.addClass('span8');
320
+
321
+    });
322
+
323
+    $('a#view-size-toggle-button-large').on('click', function (e) {
324
+      console.log("Toggle view mode to: LARGE");
325
+      $('#view-size-toggle-button-small').css('display', 'block');
326
+      $('#view-size-toggle-button-medium').css('display', 'none');
327
+      $('#view-size-toggle-button-large').css('display', 'none');
328
+
329
+      left_panel_id     = '#application-left-panel'; // is span3 by default (to be hidden in fullscreen mode)
330
+      main_panel_id     = '#application-main-panel'; // is span9 by default (to be 12 in fullscreen mode)
331
+      docu_panel_id     = '#application-document-panel'; // is span5 by default (to be span8 in fullscreen mode)
332
+      metadata_panel_id = '#application-metadata-panel';
333
+      
334
+      left_panel = $(left_panel_id);
335
+      main_panel = $(main_panel_id);
336
+      docu_panel = $(docu_panel_id);
337
+      metadata_panel = $(metadata_panel_id);
338
+
339
+      left_panel.css('display', 'none');
340
+      metadata_panel.css('display', 'none');
341
+      
342
+      main_panel.removeClass('span9');
343
+      main_panel.addClass('span12');
344
+      
345
+      docu_panel.removeClass('span5');
346
+      docu_panel.removeClass('span8');
347
+      docu_panel.addClass('span12');
348
+
349
+    });
350
+
351
+    // ALLOW TO SHOW POPOVER WITH SPECIFIC DATA
352
+    $('.item-with-data-popoverable').popover({ html: true});
353
+
354
+    /** Make calculator available on all pages */
355
+    $('#keyboard span').on('click', function (e) {
356
+      current_value = $(this).text()
357
+      if(current_value=='C') {
358
+        $('#calculation').val('');
359
+        $('#result').val('');
360
+      } else if(current_value=='=') {
361
+        string = $('#calculation').val().replace(/[^0-9+-/\*\%\(\)]/gi, ''); // replace('/[^0-9()*/-+]/g', "");
362
+        console.log("Compute value of "+string)
363
+        calculation = eval(string);
364
+        console.log("Result is: "+calculation)
365
+        $('#result').val(calculation)
366
+      } else {
367
+        field = $('#calculation')
368
+        field.oldval = field.val();
369
+        field.val(field.oldval+current_value)
370
+      }
371
+    });
372
+  });
373
+

+ 5 - 561
pboard/pboard/templates/master.mak View File

@@ -11,162 +11,10 @@
11 11
 
12 12
     <link rel="stylesheet" type="text/css" media="screen" href="${tg.url('/css/bootstrap-datetimepicker.min.css')}" />
13 13
     <link rel="stylesheet" type="text/css" media="screen" href="${tg.url('/css/external/font-awesome-4.0.3/css/font-awesome.min.css')}" />
14
-    <style>
15
-      /* Wrapper for page content to push down footer */
16
-      #wrap {
17
-        min-height: 100%;
18
-        height: auto !important;
19
-        height: 100%;
20
-        /* Negative indent footer by it's height */
21
-        margin: 0 auto -60px;
22
-      }
23
-
24
-      /* Lastly, apply responsive CSS fixes as necessary */
25
-      @media (max-width: 767px) {
26
-        #footer {
27
-          margin-left: -20px;
28
-          margin-right: -20px;
29
-          padding-left: 20px;
30
-          padding-right: 20px;
31
-        }
32
-      }
33
-      
34
-      /* vertical align icons in legend nodes */
35
-      legend > i {
36
-        vertical-align: baseline !important;
37
-      }
38
-      
39
-
40
-div.pod-toolbar {
41
-  visibility: hidden;
42
-  position: absolute;
43
-  right: 1.2em;
44
-  top: 0;
45
-}
46
-
47
-.pod-toolbar-parent {
48
-  border-bottom: 1px dotted #CCC;
49
-}
50
-.pod-toolbar-parent:Hover {
51
-  background-color: #EFEFEF;
52
-}
53
-.pod-toolbar-parent:Hover > div.pod-toolbar {
54
-  visibility: visible;
55
-}
56
-.pod-status {
57
-  position: absolute;
58
-  width: 1.2em;
59
-  text-align: center;
60
-  right: 0;
61
-  top: 0;
62
-}
63
-
64
-.pod-item-nb-sup-block {
65
-  color: #3a87ad;
66
-  font-weight: bold;
67
-}
68
-
69
-h3:Hover div.pod-toolbar {
70
-  visibility: visible;
71
-}
72
-
73
-.pod-blue {color: #3a87ad !important; }
74
-.pod-red {color: #F00 !important; }
75
-.pod-grey {color: #999 !important; }
76
-.pod-dark-grey {color: #333333 !important; }
77
-
78
-
79
-body { padding-top: 60px; }
80
-@media screen and (max-width: 768px) {
81
-    body { padding-top: 0px; }
82
-}
83
-
84
-## ul.nav li.dropdown:hover > ul.dropdown-menu {
85
-##     display: block;
86
-## }
87
-
88
-    </style>
89 14
 </head>
90 15
 <body class="${self.body_class()}">
91 16
   <script src="http://code.jquery.com/jquery.js"></script>
92
-
93
-##########################
94
-##
95
-## HERE COMES THE FULLSCREEN CODE FOR RICH TEXT EDITING
96
-##
97
-## FIXME - D.A. - 2013-11-13 - This code is testing, to remove later
98
-<style>
99
-  .full-size-overlay {
100
-    height:100%;
101
-    width:100%;
102
-    position:fixed;
103
-    left:0;
104
-    top:0;
105
-    z-index:0 !important;
106
-    background-color:white;
107
-    
108
-    filter: alpha(opacity=90); /* internet explorer */
109
-    -khtml-opacity: 0.9;      /* khtml, old safari */
110
-    -moz-opacity: 0.9;       /* mozilla, netscape */
111
-    opacity: 0.9;           /* fx, safari, opera */
112
-  }
113
-  
114
-  .full-size-overlay-inner {
115
-    margin: 3.5em 0.5em 0.5em 0.5em;
116
-    overflow: auto;
117
-    max-height: 85%;
118
-  }
119
-
120
-</style>
121
-<script>
122
-
123
-  function toggleFullScreen(outerWidgetId, innerWidgetId) {
124
-    if($(outerWidgetId).hasClass('full-size-overlay')) {
125
-      // Toggle from fullscreen to "normal"
126
-      $(outerWidgetId).removeClass('full-size-overlay');
127
-      $(innerWidgetId).removeClass('full-size-overlay-inner');
128
-      $('.pod-toggle-full-screen-button > i').removeClass('fa-compress')
129
-      $('.pod-toggle-full-screen-button > i').addClass('fa-expand')
130
-    } else {
131
-      $(outerWidgetId).addClass('full-size-overlay');
132
-      $(innerWidgetId).addClass('full-size-overlay-inner');
133
-      $('.pod-toggle-full-screen-button > i').removeClass('fa-expand')
134
-      $('.pod-toggle-full-screen-button > i').addClass('fa-compress')
135
-    }
136
-  }
137
-
138
-  function initToolbarBootstrapBindings(richTextEditorId) {
139
-    // $('a[title]').tooltip({container:'body'});
140
-    $(richTextEditorId+' > .dropdown-menu input').click(function() {return false;})
141
-      .change(function () {$(this).parent('.dropdown-menu').siblings('.dropdown-toggle').dropdown('toggle');})
142
-      .keydown('esc', function () {this.value='';$(this).change();});
143
-
144
-    $('[data-role=magic-overlay]').each(function () { 
145
-      var overlay = $(this), target = $(overlay.data('target')); 
146
-      overlay.css('opacity', 0).css('position', 'absolute').offset(target.offset()).width(target.outerWidth()).height(target.outerHeight());
147
-    });
148
-    if ("onwebkitspeechchange" in document.createElement("input")) {
149
-      var editorOffset = $(richTextEditorId).offset();
150
-      $('#voiceBtn').css('position','absolute').offset({top: editorOffset.top, left: editorOffset.left+$(richTextEditorId).innerWidth()-35});
151
-    } else {
152
-      $('#voiceBtn').hide();
153
-    }
154
-  };
155
-  function showErrorAlert (reason, detail) {
156
-    var msg='';
157
-    if (reason==='unsupported-file-type') { msg = "Unsupported format " +detail; }
158
-    else {
159
-      console.log("error uploading file", reason, detail);
160
-    }
161
-    $('<div class="alert"> <button type="button" class="close" data-dismiss="alert">&times;</button>'+ 
162
-     '<strong>File upload error</strong> '+msg+' </div>').prependTo('#alerts');
163
-  };
164
-
165
-</script>
166
-##
167
-## END OF FULLSCREEN CODE FOR RICH TEXT EDITING
168
-##
169
-##########################
17
+  <script src="${tg.url('/javascript/pod.js')}"></script>
170 18
 
171 19
   <div class="container">
172 20
     ${self.main_menu()}
@@ -174,417 +22,13 @@ body { padding-top: 60px; }
174 22
     ${self.footer()}
175 23
   </div>
176 24
 
177
-##  <script src="http://code.jquery.com/jquery.js"></script>
178
-  <script src="${tg.url('/javascript/external/bootstrap.min.js')}"></script>
179
-  
180 25
   <link href="${tg.url('/css/external/google-code-prettify/prettify.css')}" rel="stylesheet">
181
-##  <link href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
182
-##  <link href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/css/bootstrap-responsive.min.css" rel="stylesheet">
183
-## <link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
184 26
 
185
-
186
-##  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
27
+  <script src="${tg.url('/javascript/external/bootstrap.min.js')}"></script>
187 28
   <script src="${tg.url('/javascript/external/jquery.hotkeys.js')}"></script>
188
-##  <script src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/js/bootstrap.min.js"></script>
189 29
   <script src="${tg.url('/javascript/external/google-code-prettify/prettify.js')}"></script>
190
-##  <link href="index.css" rel="stylesheet">
191 30
   <script src="${tg.url('/javascript/external/bootstrap-wysiwyg.js')}"></script>
192
-
193
-<!-- WYSIWYG Text editor -->
194
-## FIXME D.A. 2013-11-13 <link rel="stylesheet" type="text/css" href="/bootstrap-wysihtml5-0.0.2/bootstrap-wysihtml5-0.0.2.css"></link>
195
-<!--link rel="stylesheet" type="text/css" href="/bootstrap-wysihtml5-0.0.2/libs/css/bootstrap.min.css"></link-->
196
-
197
-## FIXME D.A. 2013-11-13 <script src="/bootstrap-wysihtml5-0.0.2/libs/js/wysihtml5-0.3.0_rc2.js"></script>
198
-## FIXME<script src="/bootstrap-wysihtml5-0.0.2/bootstrap-wysihtml5-0.0.2.js"></script>
199
-<script src="/javascript/external/bootstrap-datetimepicker.min.js"></script>
200
-
201
-<style>
202
-tr:Hover td div.pod-toolbar {
203
-  visibility: hidden;
204
-}
205
-tr:Hover td div.pod-toolbar {
206
-  visibility: visible;
207
-}
208
-
209
-.pod-status-grey-light  { background-color: #DDD; }
210
-.pod-status-grey-middle { background-color: #BBB; }
211
-.pod-status-grey-dark   { background-color: #AAA; }
212
-.pod-status-active      { background-color: #FEE; }
213
-
214
-</style>
215
-
216
-  
217
-            <script>
218
-            $('#create_document_save_button').on('click', function(e){
219
-              // We don't want this to act as a link so cancel the link action
220
-              e.preventDefault();
221
-
222
-              // Find form and submit it
223
-              $('#create_document_form').submit();
224
-            });
225
-            </script>
226
-
227
-            <script>
228
-              $(document).ready(function() {
229
-## FIXME                $('#current_node_textarea').wysihtml5({
230
-## FIXME                  "font-styles": true, //Font styling, e.g. h1, h2, etc. Default true
231
-## FIXME                  "emphasis": true, //Italics, bold, etc. Default true
232
-## FIXME                  "lists": true, //(Un)ordered lists, e.g. Bullets, Numbers. Default true
233
-## FIXME                  "html": true, //Button which allows you to edit the generated HTML. Default false
234
-## FIXME                  "link": true, //Button to insert a link. Default true
235
-## FIXME                  "image": true, //Button to insert an image. Default true,
236
-## FIXME                  // "color": true //Button to change color of font  
237
-## FIXME                });
238
-## FIXME                $('#current_node_textarea').css('margin-bottom', '0');
239
-## FIXME                $('#current_node_textarea').css("min-height", "12em");
240
-## FIXME                $('#current_node_textarea').addClass("span5");
241
-
242
-###################
243
-##
244
-## HERE
245
-##
246
-###################
247
-
248
-##
249
-## RE-IMPLEMENT THIS SOON !!!
250
-##
251
-##                /* Edit title form */
252
-##                $("#current-document-title-edit-form" ).css("display", "none");
253
-##                $("#current-document-title" ).dblclick(function() {
254
-##                  $("#current-document-title" ).css("display", "none");
255
-##                  $("#current-document-title-edit-form" ).css("display", "block");
256
-##                });
257
-##                $("#current-document-title-edit-cancel-button" ).click(function() {
258
-##                  $("#current-document-title" ).css("display", "block");
259
-##                  $("#current-document-title-edit-form" ).css("display", "none");
260
-##                });
261
-##                $('#current-document-title-save-cancel-button').on('click', function(e){
262
-##                  // We don't want this to act as a link so cancel the link action
263
-##                  e.preventDefault();
264
-##                  $('#current-document-title-edit-form').submit();
265
-##                });
266
-
267
-
268
-                /* EDIT CONTENT FORM */
269
-                $("#current-document-content-edit-form" ).css("display", "none");
270
-                $("#current-document-content-edit-button" ).click(function() {
271
-                  $("#current-document-content" ).css("display", "none");
272
-                  $("#current-document-content-edit-form" ).css("display", "block");
273
-                });
274
-                $("#current-document-content" ).dblclick(function() {
275
-                  $("#current-document-content" ).css("display", "none");
276
-                  $("#current-document-content-edit-form" ).css("display", "block");
277
-                });
278
-                $("#current-document-content-edit-cancel-button" ).click(function() {
279
-                  $("#current-document-content" ).css("display", "block");
280
-                  $("#current-document-content-edit-form" ).css("display", "none");
281
-                });
282
-                $('#current-document-content-edit-save-button').on('click', function(e){
283
-                  // We don't want this to act as a link so cancel the link action
284
-                  e.preventDefault();
285
-                  $('#current_node_textarea_wysiwyg').cleanHtml();
286
-                  $('#current_node_textarea').val($('#current_node_textarea_wysiwyg').html());
287
-                  $('#current-document-content-edit-form').submit();
288
-                });
289
-
290
-                /* ADD EVENT => FORM */
291
-                $('#add_event_data_content_textarea').wysiwyg();
292
-                $('#add_event_data_content_textarea').css('margin-bottom', '0');
293
-                $('#add_event_data_content_textarea').css("height", "4em");
294
-                $('#add_event_data_content_textarea').addClass("span3");
295
-                /* ADD EVENT => SHOW/HIDE/SUBMIT BUTTONS */
296
-                $("#current-document-add-event-button" ).click(function() {
297
-                  $("#current-document-add-event-form" ).css("display", "block");
298
-                  $("#current-document-add-event-button" ).css("display", "none");
299
-                });
300
-                $('#current-document-add-event-cancel-button').on('click', function(e){
301
-                  $("#current-document-add-event-form" ).css("display", "none");
302
-                  $("#current-document-add-event-button" ).css("display", "block");
303
-                });
304
-                $('#current-document-add-event-save-button').on('click', function(e){
305
-                  e.preventDefault(); // We don't want this to act as a link so cancel the link action
306
-                  $('#add_event_data_content_textarea_wysiwyg').cleanHtml();
307
-                  $('#add_event_data_content_textarea').val($('#add_event_data_content_textarea_wysiwyg').html());
308
-                  $('#current-document-add-event-form').submit();
309
-                });
310
-
311
-                /* ADD CONTACT => FORM */
312
-                $('#add_contact_data_content_textarea').wysiwyg();
313
-                $('#add_contact_data_content_textarea').css('margin-bottom', '0');
314
-                $('#add_contact_data_content_textarea').css("height", "4em");
315
-                $('#add_contact_data_content_textarea').addClass("span3");
316
-                /* ADD CONTACT => SHOW/HIDE/SUBMIT BUTTONS */
317
-                $("#current-document-add-contact-button" ).click(function() {
318
-                  $("#current-document-add-contact-form" ).css("display", "block");
319
-                  $("#current-document-add-contact-button" ).css("display", "none");
320
-                });
321
-                $('#current-document-add-contact-cancel-button').on('click', function(e){
322
-                  $("#current-document-add-contact-form" ).css("display", "none");
323
-                  $("#current-document-add-contact-button" ).css("display", "block");
324
-                });
325
-                $('#current-document-add-contact-save-button').on('click', function(e){
326
-                  e.preventDefault(); // We don't want this to act as a link so cancel the link action
327
-                  $('#add_contact_data_content_textarea_wysiwyg').cleanHtml();
328
-                  $('#add_contact_data_content_textarea').val($('#add_contact_data_content_textarea_wysiwyg').html());
329
-                  $('#current-document-add-contact-form').submit();
330
-                });
331
-
332
-
333
-                /* ADD COMMENT => FORM */
334
-                $('#add_comment_data_content_textarea').wysiwyg();
335
-                $('#add_comment_data_content_textarea').css('margin-bottom', '0');
336
-                $('#add_comment_data_content_textarea').css("height", "4em");
337
-                $('#add_comment_data_content_textarea').addClass("span3");
338
-                /* ADD COMMENT => SHOW/HIDE/SUBMIT BUTTONS */
339
-                $("#current-document-add-comment-button" ).click(function() {
340
-                  $("#current-document-add-comment-form" ).css("display", "block");
341
-                  $("#current-document-add-comment-button" ).css("display", "none");
342
-                });
343
-                $('#current-document-add-comment-cancel-button').on('click', function(e){
344
-                  $("#current-document-add-comment-form" ).css("display", "none");
345
-                  $("#current-document-add-comment-button" ).css("display", "block");
346
-                });
347
-                $('#current-document-add-comment-save-button').on('click', function(e){
348
-                  e.preventDefault(); // We don't want this to act as a link so cancel the link action
349
-                  $('#add_comment_data_content_textarea_wysiwyg').cleanHtml();
350
-                  $('#add_comment_data_content_textarea').val($('#add_comment_data_content_textarea_wysiwyg').html());
351
-                  $('#current-document-add-comment-form').submit();
352
-                });
353
-
354
-                /* ADD FILE => FORM */
355
-                $('#add_file_data_content_textarea').wysiwyg();
356
-                $('#add_file_data_content_textarea').css('margin-bottom', '0');
357
-                $('#add_file_data_content_textarea').css("height", "4em");
358
-                $('#add_file_data_content_textarea').addClass("span3");
359
-                /* ADD FILE => SHOW/HIDE/SUBMIT BUTTONS */
360
-                $("#current-document-add-file-button" ).click(function() {
361
-                  $("#current-document-add-file-form" ).css("display", "block");
362
-                  $("#current-document-add-file-button" ).css("display", "none");
363
-                });
364
-                $('#current-document-add-file-cancel-button').on('click', function(e){
365
-                  $("#current-document-add-file-form" ).css("display", "none");
366
-                  $("#current-document-add-file-button" ).css("display", "block");
367
-                });
368
-                $('#current-document-add-file-save-button').on('click', function(e){
369
-                  e.preventDefault(); // We don't want this to act as a link so cancel the link action
370
-                  $('#add_file_data_content_textarea_wysiwyg').cleanHtml();
371
-                  $('#add_file_data_content_textarea').val($('#add_file_data_content_textarea_wysiwyg').html());
372
-                  $('#current-document-add-file-form').submit();
373
-                });
374
-
375
-
376
-                $(function() {
377
-                  $('.datetime-picker-input-div').datetimepicker({
378
-                    language: 'fr-FR',
379
-                    pickSeconds: false
380
-                  });
381
-                });
382
-
383
-/*
384
-                // Allow to go directly to required tab on load
385
-                // Javascript to enable link to tab
386
-                var url = document.location.toString();
387
-                if (url.match('#')) {
388
-                  $('.nav-tabs a[href=#'+url.split('#')[1]+']').tab('show') ;
389
-                } 
390
-
391
-                // Change hash for page-reload
392
-                $('.nav-tabs a').on('shown', function (e) {
393
-                  window.location.hash = e.target.hash;
394
-                })
395
-*/
396
-                #################################
397
-                ##
398
-                ## The following JS code allow t
399
-                ##
400
-                ##
401
-                // Javascript to enable link to tab
402
-                var hash = document.location.hash;
403
-                var prefix = "tab-";
404
-                if (hash) {
405
-                    $('.nav-tabs a[href='+hash.replace(prefix,"")+']').tab('show');
406
-                } 
407
-
408
-                // Change hash for page-reload
409
-                $('.nav-tabs a').on('shown', function (e) {
410
-                    window.location.hash = e.target.hash.replace("#", "#" + prefix);
411
-                });
412
-
413
-              
414
-                #################################
415
-                ##
416
-                ## Show/hide behavior
417
-                ## for the main menu
418
-                ##
419
-                ##
420
-                $('a.toggle-child-menu-items').on('click', function (e) {
421
-                  parent_id    = $(this).parent().attr('id');
422
-                  child        = $('#'+parent_id+'-children');
423
-                  togglebutton = $(this).children('i:first')
424
-                  if(child.css('display')=='none'){
425
-                    child.css("display", "block");
426
-                    togglebutton.removeClass('icon-g-folder-plus');
427
-                    togglebutton.attr('class', 'icon-g-folder-open');
428
-                    console.log("class is: "+togglebutton.attr('class'));
429
-                  } else {
430
-                    child.css("display", "none");
431
-                    togglebutton.removeClass('icon-g-folder-open');
432
-                    togglebutton.addClass('icon-g-folder-plus');
433
-                    console.log("class is: "+togglebutton.attr('class'));
434
-                  }
435
-                });
436
-
437
-                #################################
438
-                ##
439
-                ## large / small view of the document
440
-                ## (toggle visibility of the left panel)
441
-                ##
442
-                ##
443
-                $('a#view-size-toggle-button-small').on('click', function (e) {
444
-                  console.log("Toggle view mode");
445
-                  $('#view-size-toggle-button-small').css('display', 'none');
446
-                  $('#view-size-toggle-button-medium').css('display', 'block');
447
-                  $('#view-size-toggle-button-large').css('display', 'none');
448
-              
449
-                  left_panel_id     = '#application-left-panel'; // is span3 by default (to be hidden in fullscreen mode)
450
-                  main_panel_id     = '#application-main-panel'; // is span9 by default (to be 12 in fullscreen mode)
451
-                  docu_panel_id     = '#application-document-panel'; // is span5 by default (to be span8 in fullscreen mode)
452
-                  metadata_panel_id = '#application-metadata-panel';
453
-                  
454
-                  left_panel = $(left_panel_id);
455
-                  main_panel = $(main_panel_id);
456
-                  docu_panel = $(docu_panel_id);
457
-                  metadata_panel = $(metadata_panel_id);
458
-
459
-                  console.log("Toggle from small (default) to medium (no left tab)");
460
-                  left_panel.css('display', 'block');
461
-                  metadata_panel.css('display', 'block');
462
-                  main_panel.removeClass('span9');
463
-                  main_panel.removeClass('span12');
464
-                  main_panel.addClass('span9');
465
-                  
466
-                  docu_panel.removeClass('span5');
467
-                  docu_panel.removeClass('span8');
468
-                  docu_panel.removeClass('span12');
469
-                  docu_panel.addClass('span5');
470
-                });
471
-
472
-                $('a#view-size-toggle-button-medium').on('click', function (e) {
473
-                  console.log("Toggle view mode to: MEDIUM");
474
-                  $('#view-size-toggle-button-small').css('display', 'none');
475
-                  $('#view-size-toggle-button-medium').css('display', 'none');
476
-                  $('#view-size-toggle-button-large').css('display', 'block');
477
-
478
-                  left_panel_id     = '#application-left-panel'; // is span3 by default (to be hidden in fullscreen mode)
479
-                  main_panel_id     = '#application-main-panel'; // is span9 by default (to be 12 in fullscreen mode)
480
-                  docu_panel_id     = '#application-document-panel'; // is span5 by default (to be span8 in fullscreen mode)
481
-                  metadata_panel_id = '#application-metadata-panel';
482
-                  
483
-                  left_panel = $(left_panel_id);
484
-                  main_panel = $(main_panel_id);
485
-                  docu_panel = $(docu_panel_id);
486
-                  metadata_panel = $(metadata_panel_id);
487
-
488
-                  left_panel.css('display', 'none');
489
-                  metadata_panel.css('display', 'block');
490
-                  
491
-                  main_panel.removeClass('span9');
492
-                  main_panel.addClass('span12');
493
-                  
494
-                  docu_panel.removeClass('span5');
495
-                  docu_panel.removeClass('span12');
496
-                  docu_panel.addClass('span8');
497
-
498
-                });
499
-
500
-                $('a#view-size-toggle-button-large').on('click', function (e) {
501
-                  console.log("Toggle view mode to: LARGE");
502
-                  $('#view-size-toggle-button-small').css('display', 'block');
503
-                  $('#view-size-toggle-button-medium').css('display', 'none');
504
-                  $('#view-size-toggle-button-large').css('display', 'none');
505
-
506
-                  left_panel_id     = '#application-left-panel'; // is span3 by default (to be hidden in fullscreen mode)
507
-                  main_panel_id     = '#application-main-panel'; // is span9 by default (to be 12 in fullscreen mode)
508
-                  docu_panel_id     = '#application-document-panel'; // is span5 by default (to be span8 in fullscreen mode)
509
-                  metadata_panel_id = '#application-metadata-panel';
510
-                  
511
-                  left_panel = $(left_panel_id);
512
-                  main_panel = $(main_panel_id);
513
-                  docu_panel = $(docu_panel_id);
514
-                  metadata_panel = $(metadata_panel_id);
515
-
516
-                  left_panel.css('display', 'none');
517
-                  metadata_panel.css('display', 'none');
518
-                  
519
-                  main_panel.removeClass('span9');
520
-                  main_panel.addClass('span12');
521
-                  
522
-                  docu_panel.removeClass('span5');
523
-                  docu_panel.removeClass('span8');
524
-                  docu_panel.addClass('span12');
525
-
526
-                });
527
-              });
528
-
529
-              // ALLOW TO SHOW POPOVER WITH SPECIFIC DATA
530
-              $('.item-with-data-popoverable').popover({ html: true});
531
-
532
-
533
-
534
-      /** Make calculator available on all pages */
535
-      $(document).ready(function() {
536
-        $('#keyboard span').on('click', function (e) {
537
-          current_value = $(this).text()
538
-          if(current_value=='C') {
539
-            $('#calculation').val('');
540
-            $('#result').val('');
541
-          } else if(current_value=='=') {
542
-            string = $('#calculation').val().replace(/[^0-9+-/\*\%\(\)]/gi, ''); // replace('/[^0-9()*/-+]/g', "");
543
-            console.log("Compute value of "+string)
544
-            calculation = eval(string);
545
-            console.log("Result is: "+calculation)
546
-            $('#result').val(calculation)
547
-          } else {
548
-            field = $('#calculation')
549
-            field.oldval = field.val();
550
-            field.val(field.oldval+current_value)
551
-          }
552
-        });
553
-      });
554
-
555
-            </script>
556
-  <style>
557
-    .pod-rich-text-zone {
558
-      overflow:auto;
559
-      min-height:3em;
560
-      max-height: 10%;
561
-      border: 1px solid #CCC;
562
-      padding: 0.5em;
563
-      box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
564
-      border-radius: 4px;
565
-      background-color: white;
566
-    }
567
-    
568
-    .pod-input-like-shadow {
569
-      -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
570
-      -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
571
-      box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
572
-      -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
573
-      -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
574
-      -ms-transition: border linear 0.2s, box-shadow linear 0.2s;
575
-      -o-transition: border linear 0.2s, box-shadow linear 0.2s;
576
-      transition: border linear 0.2s, box-shadow linear 0.2s;
577
-    }
578
-    .pod-input-like-shadow:focus {
579
-      border-color: rgba(82, 168, 236, 0.8);
580
-      -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
581
-      -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
582
-      box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
583
-      outline: 0;
584
-      outline: thin dotted \9;
585
-    }
586
-
587
-  </style>
31
+  <script src="/javascript/external/bootstrap-datetimepicker.min.js"></script>
588 32
 
589 33
 </body>
590 34
 
@@ -640,9 +84,9 @@ tr:Hover td div.pod-toolbar {
640 84
             </li>
641 85
 
642 86
             <li title=" ${_('Toggle view mode [narrow, medium, large]')}">
643
-              <a title="${_('Toggle view mode: narrow')}" id='view-size-toggle-button-small' style="display: none;"><i class='fa fa-eye'></i></a>
87
+              <a title="${_('Toggle view mode: narrow')}" id='view-size-toggle-button-small' class="pod-do-not-display"><i class='fa fa-eye'></i></a>
644 88
               <a title="${_('Toggle view mode: medium')}" id='view-size-toggle-button-medium'><i class='fa fa-eye'></i></a>
645
-              <a title="${_('Toggle view mode: large')}" id='view-size-toggle-button-large' style="display: none;"><i class='fa fa-eye'></i></a>
89
+              <a title="${_('Toggle view mode: large')}"  id='view-size-toggle-button-large' class="pod-do-not-display"><i class='fa fa-eye'></i></a>
646 90
             </li>
647 91
 
648 92
             <li title="Rebuild document index">