Dotclear

source: plugins/dcLegacyEditor/js/jsToolBar/popup_media.js @ 3880:e6d1f6d9d7df

Revision 3880:e6d1f6d9d7df, 3.9 KB checked in by franck <carnet.franck.paul@…>, 7 years ago (diff)

Use let and const rather than var (ES2015/ES6), use template string where is more efficient

RevLine 
[3709]1/*global $ */
2'use strict';
3
[2614]4$(function() {
[3709]5  $('#media-insert').onetabload(function() {
6    $('#media-insert-cancel').click(function() {
7      window.close();
8    });
[2614]9
[3709]10    $('#media-insert-ok').click(function() {
11      sendClose();
12      window.close();
13    });
14  });
[2614]15
[3709]16  function sendClose() {
[3880]17    const insert_form = $('#media-insert-form').get(0);
[3709]18    if (insert_form == undefined) {
19      return;
20    }
[2614]21
[3880]22    const tb = window.opener.the_toolbar;
23    const type = insert_form.elements.type.value;
24    const media_align_grid = {
[3709]25      left: 'float: left; margin: 0 1em 1em 0;',
26      right: 'float: right; margin: 0 0 1em 1em;',
27      center: 'text-align: center;'
28    };
[3880]29    let align;
30    let player;
[2614]31
[3709]32    if (type == 'image') {
33      tb.elements.img_select.data.src = tb.stripBaseURL($('input[name="src"]:checked', insert_form).val());
34      tb.elements.img_select.data.alignment = $('input[name="alignment"]:checked', insert_form).val();
35      tb.elements.img_select.data.link = $('input[name="insertion"]:checked', insert_form).val() == 'link';
[2614]36
[3709]37      tb.elements.img_select.data.title = insert_form.elements.title.value;
38      tb.elements.img_select.data.description = $('input[name="description"]', insert_form).val();
39      tb.elements.img_select.data.url = tb.stripBaseURL(insert_form.elements.url.value);
[2614]40
[3880]41      let media_legend = $('input[name="legend"]:checked', insert_form).val();
[3709]42      if (media_legend != '' && media_legend != 'title' && media_legend != 'none') {
43        media_legend = 'legend';
44      }
45      if (media_legend != 'legend') {
46        tb.elements.img_select.data.description = '';
47      }
48      if (media_legend == 'none') {
49        tb.elements.img_select.data.title = '';
50      }
[2614]51
[3709]52      tb.elements.img_select.fncall[tb.mode].call(tb);
53    } else if (type == 'mp3') {
54      player = $('#public_player').val();
55      align = $('input[name="alignment"]:checked', insert_form).val();
[3446]56
[3709]57      if (align != undefined && align != 'none') {
[3880]58        player = `<div style="${media_align_grid[align]}">${player}</div>`;
[3709]59      }
[3446]60
[3709]61      tb.elements.mp3_insert.data.player = player.replace(/>/g, '>\n');
62      tb.elements.mp3_insert.fncall[tb.mode].call(tb);
63    } else if (type == 'flv') // may be all video media, not only flv
64    {
[3880]65      var oplayer = $(`<div>${$('#public_player').val()}</div>`);
[3709]66      var flashvars = $('[name=FlashVars]', oplayer).val();
[2614]67
[3709]68      align = $('input[name="alignment"]:checked', insert_form).val();
[3725]69
[3709]70      var title = insert_form.elements.title.value;
71      if (title) {
72        flashvars = 'title=' + encodeURI(title) + '&amp;' + flashvars;
73      }
[3725]74
75      var vw = $('#video_w').val();
76      var vh = $('#video_h').val();
77
78      if (vw > 0) {
79        $('video', oplayer).attr('width', vw);
80        $('object', oplayer).attr('width', vw);
81        flashvars = flashvars.replace(/(width=\d*)/, 'width=' + vw);
82      } else {
83        $('video', oplayer).removeAttr('width');
84        $('object', oplayer).removeAttr('width');
85        flashvars = flashvars.replace(/(width=\d*)/, '');
86      }
87      if (vh > 0) {
88        $('video', oplayer).attr('height', vh);
89        $('object', oplayer).attr('height', vh);
90        flashvars = flashvars.replace(/(height=\d*)/, 'height=' + vh);
91      } else {
92        $('video', oplayer).removeAttr('height');
93        $('object', oplayer).removeAttr('height');
94        flashvars = flashvars.replace(/(height=\d*)/, '');
95      }
[2614]96
[3709]97      $('[name=FlashVars]', oplayer).val(flashvars);
98      player = oplayer.html();
[2768]99
[3709]100      if (align != undefined && align != 'none') {
[3880]101        player = `<div style="${media_align_grid[align]}">${player}</div>`;
[3709]102      }
[2614]103
[3709]104      tb.elements.flv_insert.data.player = player.replace(/>/g, '>\n');
105      tb.elements.flv_insert.fncall[tb.mode].call(tb);
106    } else {
107      tb.elements.link.data.href = tb.stripBaseURL(insert_form.elements.url.value);
108      tb.elements.link.data.content = insert_form.elements.title.value;
109      tb.elements.link.fncall[tb.mode].call(tb);
110    }
111  }
[2614]112});
Note: See TracBrowser for help on using the repository browser.

Sites map