summaryrefslogtreecommitdiff
path: root/lib/scripts/media.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/scripts/media.js')
-rw-r--r--lib/scripts/media.js93
1 files changed, 53 insertions, 40 deletions
diff --git a/lib/scripts/media.js b/lib/scripts/media.js
index ea8f56af2..c00a71e5f 100644
--- a/lib/scripts/media.js
+++ b/lib/scripts/media.js
@@ -2,9 +2,6 @@
/*global jQuery, window, DOKU_BASE*/
"use strict";
-// TODO
-// * fix the css to have pointers on the +/- images in the tree when JS is enabled
-// * fix the css to have pointers on a.select when JS is enabled
// * refactor once the jQuery port is over ;)
/**
@@ -27,6 +24,9 @@
ext: false,
};
+
+
+
/**
* build the popup window
*
@@ -37,9 +37,10 @@
popup = document.createElement('div');
popup.setAttribute('id','media__popup');
+ popup.style.display = "none";
var root = document.getElementById('media__manager');
- if (root == null) return;
+ if (root === null) return;
root.appendChild(popup);
var headline = document.createElement('h1');
@@ -68,8 +69,7 @@
for (var i = 0 ; i < linkbtns.length ; ++i) {
var linkbtn = document.createElement('button');
linkbtn.className = 'button';
- linkbtn.value = i + 1;
- linkbtn.id = "media__linkbtn" + (i + 1);
+ linkbtn.id = "media__linkbtn" + (i+1);
linkbtn.title = LANG['media' + linkbtns[i]];
linkbtn.style.borderStyle = 'outset';
$(linkbtn).click(function (event) { return setlink(event,this); });
@@ -101,8 +101,7 @@
var alignimg = document.createElement('img');
alignimg.src = DOKU_BASE + 'lib/images/media_align_' + alignbtns[n] + '.png';
- alignbtn.id = "media__alignbtn" + n;
- alignbtn.value = n;
+ alignbtn.id = "media__alignbtn" + (n+1);
alignbtn.title = LANG['media' + alignbtns[n]];
alignbtn.className = 'button';
alignbtn.appendChild(alignimg);
@@ -136,7 +135,6 @@
sizebtn.className = 'button';
sizebtn.appendChild(sizeimg);
- sizebtn.value = size + 1;
sizebtn.id = 'media__sizebtn' + (size + 1);
sizebtn.title = LANG['media' + sizebtns[size]];
sizebtn.style.borderStyle = 'outset';
@@ -191,7 +189,7 @@
optsstart = true;
}
- var s = parseInt(media_manager.size);
+ var s = parseInt(media_manager.size, 10);
if (s && s >= 1) {
opts += (optsstart)?'&':'?';
@@ -212,21 +210,23 @@
}
}
}
- if (media_manager.align == '1') {
+ if (media_manager.align == '2') {
alignleft = '';
alignright = ' ';
}
- if (media_manager.align == '2') {
+ if (media_manager.align == '3') {
alignleft = ' ';
alignright = ' ';
}
- if (media_manager.align == '3') {
+ if (media_manager.align == '4') {
alignleft = ' ';
alignright = '';
}
}
}
- opener.insertTags('wiki__text','{{'+alignleft+id+opts+alignright+'|','}}','');
+ var edid = String.prototype.match.call(document.location, /&edid=([^&]+)/);
+ edid = edid ? edid[1] : 'wiki__text';
+ opener.insertTags(edid,'{{'+alignleft+id+opts+alignright+'|','}}','');
if(!media_manager.keepopen) window.close();
opener.focus();
@@ -285,7 +285,7 @@
DOKU_BASE + 'lib/exe/ajax.php',
link.attr('search').substr(1) + '&call=medians',
function (data) {
- ul.html(data)
+ ul.html(data);
listitem.append(ul);
},
'html'
@@ -491,7 +491,7 @@
* @author Pierre Spring <pierre.spring@caillou.ch>
*/
attachoptions = function(){
- obj = $('#media__opts')[0]
+ obj = $('#media__opts')[0];
if(!obj) return;
// keep open
@@ -548,7 +548,7 @@
obj.appendChild(hdlbl);
obj.appendChild(hdbr);
updatehide();
- },
+ };
/**
* Generalized toggler
@@ -563,7 +563,7 @@
DokuCookie.setValue(variable, '');
media_manager[variable] = false;
}
- }
+ };
initFlashUpload = function () {
var oform, oflash, title;
@@ -618,14 +618,15 @@
* @author Dominik Eckelmann <eckelmann@cosmocode.de>
*/
setalign = function(event,cb){
- if(cb.value){
- DokuCookie.setValue('align',cb.value);
- media_manager.align = cb.value;
- outSet("media__alignbtn0");
- outSet("media__alignbtn1");
- outSet("media__alignbtn2");
- outSet("media__alignbtn3");
- inSet("media__alignbtn"+cb.value);
+
+ var id = cb.id.substring(cb.id.length -1);
+ if(id){
+ DokuCookie.setValue('align',id);
+ media_manager.align = id;
+ for (var i = 1; i<=4; i++) {
+ outSet("media__alignbtn" + i);
+ }
+ inSet("media__alignbtn"+id);
}else{
DokuCookie.setValue('align','');
media_manager.align = false;
@@ -638,23 +639,34 @@
* @author Dominik Eckelmann <eckelmann@cosmocode.de>
*/
setlink = function(event,cb){
- if(cb.value){
- DokuCookie.setValue('link',cb.value);
- media_manager.link = cb.value;
- outSet("media__linkbtn1");
- outSet("media__linkbtn2");
- outSet("media__linkbtn3");
- outSet("media__linkbtn4");
- inSet("media__linkbtn"+cb.value);
+ var id = cb.id.substring(cb.id.length -1);
+ if(id){
+ DokuCookie.setValue('link',id);
+ for (var i = 1; i<=4; i++) {
+ outSet("media__linkbtn"+i);
+ }
+ inSet("media__linkbtn"+id);
+
var size = $("#media__size");
var align = $("#media__align");
- if (cb.value != '4') {
+ if (id != '4') {
size.show();
align.show();
+ if (media_manager.link == '4') {
+ media_manager.align = '1';
+ DokuCookie.setValue('align', '1');
+ inSet('media__alignbtn1');
+
+ media_manager.size = '2';
+ DokuCookie.setValue('size', '2');
+ inSet('media__sizebtn2');
+ }
+
} else {
size.hide();
align.hide();
}
+ media_manager.link = id;
}else{
DokuCookie.setValue('link','');
media_manager.link = false;
@@ -667,13 +679,14 @@
* @author Dominik Eckelmann <eckelmann@cosmocode.de>
*/
setsize = function(event,cb){
- if (cb.value) {
- DokuCookie.setValue('size',cb.value);
- media_manager.size = cb.value;
- for (var i = 1 ; i <= 4 ; ++i) {
+ var id = cb.id.substring(cb.id.length -1);
+ if (id) {
+ DokuCookie.setValue('size',id);
+ media_manager.size = id;
+ for (var i = 1 ; i <=4 ; ++i) {
outSet("media__sizebtn" + i);
}
- inSet("media__sizebtn"+cb.value);
+ inSet("media__sizebtn"+id);
} else {
DokuCookie.setValue('size','');
media_manager.width = false;