PHP Demo Application - Source Code
/Framework/Model/Vendor/CkEditor/plugins/div/dialogs/div.js
/*
Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.
For licensing, see LICENSE.html or http://ckeditor.com/license
*/
(function(){function a(d,e,f){if(!e.is||!e.getCustomData('block_processed')){e.is&&CKEDITOR.dom.element.setMarker(f,e,'block_processed',true);
d.push(e);
}};
function b(d){var e=[],f=d.getChildren();
for(var g=0;
g<f.count();
g++){var h=f.getItem(g);
if(!(h.type===CKEDITOR.NODE_TEXT&&/^[ \t\n\r]+$/.test(h.getText())))e.push(h);
}return e;
};
function c(d,e){var f=(function(){var p=CKEDITOR.tools.extend({},CKEDITOR.dtd.$blockLimit);
delete p.div;
if(d.config.div_wrapTable){delete p.td;
delete p.th;
}return p;
})(),g=CKEDITOR.dtd.div;
function h(p){var q=new CKEDITOR.dom.elementPath(p).elements,r;
for(var s=0;
s<q.length;
s++){if(q[s].getName() in f){r=q[s];
break;
}}return r;
};
function i(){this.foreach(function(p){if(/^(?!vbox|hbox)/.test(p.type)){if(!p.setup)p.setup=function(q){p.setValue(q.getAttribute(p.id)||'');
};
if(!p.commit)p.commit=function(q){var r=this.getValue();
if('dir'==p.id&&q.getComputedStyle('direction')==r)return;
if(r)q.setAttribute(p.id,r);
else q.removeAttribute(p.id);
};
}});
};
function j(p){var q=[],r={},s=[],t,u=p.document.getSelection(),v=u.getRanges(),w=u.createBookmarks(),x,y,z=p.config.enterMode==CKEDITOR.ENTER_DIV?'div':'p';
for(x=0;
x<v.length;
x++){y=v[x].createIterator();
while(t=y.getNextParagraph()){if(t.getName() in f){var A,B=t.getChildren();
for(A=0;
A<B.count();
A++)a(s,B.getItem(A),r);
}else{while(!g[t.getName()]&&t.getName()!='body')t=t.getParent();
a(s,t,r);
}}}CKEDITOR.dom.element.clearAllMarkers(r);
var C=l(s),D,E,F;
for(x=0;
x<C.length;
x++){var G=C[x][0];
D=G.getParent();
for(A=1;
A<C[x].length;
A++)D=D.getCommonAncestor(C[x][A]);
F=new CKEDITOR.dom.element('div',p.document);
for(A=0;
A<C[x].length;
A++){G=C[x][A];
while(!G.getParent().equals(D))G=G.getParent();
C[x][A]=G;
}var H=null;
for(A=0;
A<C[x].length;
A++){G=C[x][A];
if(!(G.getCustomData&&G.getCustomData('block_processed'))){G.is&&CKEDITOR.dom.element.setMarker(r,G,'block_processed',true);
if(!A)F.insertBefore(G);
F.append(G);
}}CKEDITOR.dom.element.clearAllMarkers(r);
q.push(F);
}u.selectBookmarks(w);
return q;
};
function k(p){var q=new CKEDITOR.dom.elementPath(p.getSelection().getStartElement()),r=q.blockLimit,s=r&&r.getAscendant('div',true);
return s;
};
function l(p){var q=[],r=null,s,t;
for(var u=0;
u<p.length;
u++){t=p[u];
var v=h(t);
if(!v.equals(r)){r=v;
q.push([]);
}q[q.length-1].push(t);
}return q;
};
function m(p){var q=this.getDialog(),r=q._element&&q._element.clone()||new CKEDITOR.dom.element('div',d.document);
this.commit(r,true);
p=[].concat(p);
var s=p.length,t;
for(var u=0;
u<s;
u++){t=q.getContentElement.apply(q,p[u].split(':'));
t&&t.setup&&t.setup(r,true);
}};
var n={},o=[];
return{title:d.lang.div.title,minWidth:400,minHeight:165,contents:[{id:'info',label:d.lang.common.generalTab,title:d.lang.common.generalTab,elements:[{type:'hbox',widths:['50%','50%'],children:[{id:'elementStyle',type:'select',style:'width: 100%;
',label:d.lang.div.styleSelectLabel,'default':'',items:[[d.lang.common.notSet,'']],onChange:function(){m.call(this,['info:class','advanced:dir','advanced:style']);
},setup:function(p){for(var q in n)n[q].checkElementRemovable(p,true)&&this.setValue(q);
},commit:function(p){var q;
if(q=this.getValue()){var r=n[q],s=p.getCustomData('elementStyle')||'';
r.applyToObject(p);
p.setCustomData('elementStyle',s+r._.definition.attributes.style);
}}},{id:'class',type:'text',label:d.lang.common.cssClass,'default':''}]}]},{id:'advanced',label:d.lang.common.advancedTab,title:d.lang.common.advancedTab,elements:[{type:'vbox',padding:1,children:[{type:'hbox',widths:['50%','50%'],children:[{type:'text',id:'id',label:d.lang.common.id,'default':''},{type:'text',id:'lang',label:d.lang.link.langCode,'default':''}]},{type:'hbox',children:[{type:'text',id:'style',style:'width: 100%;
',label:d.lang.common.cssStyle,'default':'',commit:function(p){var q=this.getValue()+(p.getCustomData('elementStyle')||'');
p.setAttribute('style',q);
}}]},{type:'hbox',children:[{type:'text',id:'title',style:'width: 100%;
',label:d.lang.common.advisoryTitle,'default':''}]},{type:'select',id:'dir',style:'width: 100%;
',label:d.lang.common.langDir,'default':'',items:[[d.lang.common.notSet,''],[d.lang.common.langDirLtr,'ltr'],[d.lang.common.langDirRtl,'rtl']]}]}]}],onLoad:function(){i.call(this);
var p=this,q=this.getContentElement('info','elementStyle');
d.getStylesSet(function(r){var s;
if(r)for(var t=0;
t<r.length;
t++){var u=r[t];
if(u.element&&u.element=='div'){s=u.name;
n[s]=new CKEDITOR.style(u);
q.items.push([s,s]);
q.add(s,s);
}}q[q.items.length>1?'enable':'disable']();
setTimeout(function(){q.setup(p._element);
},0);
});
},onShow:function(){if(e=='editdiv'){var p=k(d);
p&&this.setupContent(this._element=p);
}},onOk:function(){if(e=='editdiv')o=[this._element];
else o=j(d,true);
var p=o.length;
for(var q=0;
q<p;
q++){this.commitContent(o[q]);
!o[q].getAttribute('style')&&o[q].removeAttribute('style');
}this.hide();
},onHide:function(){if(e=='editdiv')this._element.removeCustomData('elementStyle');
delete this._element;
}};
};
CKEDITOR.dialog.add('creatediv',function(d){return c(d,'creatediv');
});
CKEDITOR.dialog.add('editdiv',function(d){return c(d,'editdiv');
});
})();