1 |
|
tinyMCE.im
portPlugin
LanguagePa
ck('save')
;var TinyM
CE_SavePlu
gin={getIn
fo:functio
n(){return
{longname:
'Save',aut
hor:'Moxie
code Syste
ms AB',aut
horurl:'ht
tp://tinym
ce.moxieco
de.com',in
fourl:'htt
p://wiki.m
oxiecode.c
om/index.p
hp/TinyMCE
:Plugins/s
ave',versi
on:tinyMCE
.majorVers
ion+"."+ti
nyMCE.mino
rVersion}}
,initInsta
nce:functi
on(inst){i
nst.addSho
rtcut('ctr
l','s','la
ng_save_de
sc','mceSa
ve')},getC
ontrolHTML
:function(
cn){switch
(cn){case"
save":retu
rn tinyMCE
.getButton
HTML(cn,'l
ang_save_d
esc','{$pl
uginurl}/i
mages/save
.gif','mce
Save');cas
e"cancel":
return tin
yMCE.getBu
ttonHTML(c
n,'lang_ca
ncel_desc'
,'{$plugin
url}/image
s/cancel.g
if','mceCa
ncel')}ret
urn""},exe
cCommand:f
unction(ed
itor_id,el
ement,comm
and,user_i
nterface,v
alue){swit
ch(command
){case"mce
Save":retu
rn this._s
ave(editor
_id,elemen
t,command,
user_inter
face,value
);case"mce
Cancel":re
turn this.
_cancel(ed
itor_id,el
ement,comm
and,user_i
nterface,v
alue)}retu
rn false},
_save:func
tion(edito
r_id,eleme
nt,command
,user_inte
rface,valu
e){var ins
t,formObj,
os,i,eleme
ntId;if(ti
nyMCE.getP
aram("full
screen_is_
enabled"))
return tru
e;inst=tin
yMCE.selec
tedInstanc
e;formObj=
inst.formE
lement.for
m;if(tinyM
CE.getPara
m("save_en
ablewhendi
rty")&&!in
st.isDirty
())return
true;if(fo
rmObj){tin
yMCE.trigg
erSave();i
f((os=tiny
MCE.getPar
am("save_o
nsavecallb
ack"))){if
(eval(os+'
(inst);'))
{inst.star
tContent=t
inyMCE.tri
m(inst.get
Body().inn
erHTML);ti
nyMCE.trig
gerNodeCha
nge(false,
true)}retu
rn true}fo
r(i=0;i<fo
rmObj.elem
ents.lengt
h;i++){ele
mentId=for
mObj.eleme
nts[i].nam
e?formObj.
elements[i
].name:for
mObj.eleme
nts[i].id;
if(element
Id.indexOf
('mce_edit
or_')==0)f
ormObj.ele
ments[i].d
isabled=tr
ue}inst.is
NotDirty=t
rue;if(for
mObj.onsub
mit==null|
|formObj.o
nsubmit()!
=false)ins
t.formElem
ent.form.s
ubmit();ti
nyMCE.trig
gerNodeCha
nge(false,
true)}else
alert("Er
ror: No fo
rm element
found.");
return tru
e},_cancel
:function(
editor_id,
element,co
mmand,user
_interface
,value){va
r inst=tin
yMCE.getIn
stanceById
(editor_id
),os,h=tin
yMCE.trim(
inst.start
Content);i
f((os=tiny
MCE.getPar
am("save_o
ncancelcal
lback"))){
if(eval(os
+'(inst);'
))return t
rue}inst.s
etHTML(h);
inst.undoR
edo.undoLe
vels=[];in
st.undoRed
o.add({con
tent:h});i
nst.undoRe
do.undoInd
ex=0;inst.
undoRedo.t
ypingUndoI
ndex=-1;ti
nyMCE.trig
gerNodeCha
nge(false,
true);retu
rn true},h
andleNodeC
hange:func
tion(edito
r_id,node,
undo_index
,undo_leve
ls,visual_
aid,any_se
lection){v
ar inst;if
(tinyMCE.g
etParam("f
ullscreen_
is_enabled
")){tinyMC
E.switchCl
ass(editor
_id+'_save
','mceButt
onDisabled
');return
true}if(ti
nyMCE.getP
aram("save
_enablewhe
ndirty")){
inst=tinyM
CE.getInst
anceById(e
ditor_id);
if(inst.is
Dirty()){t
inyMCE.swi
tchClass(e
ditor_id+'
_save','mc
eButtonNor
mal');retu
rn true}ti
nyMCE.swit
chClass(ed
itor_id+'_
save','mce
ButtonDisa
bled')}ret
urn true}}
;tinyMCE.a
ddPlugin("
save",Tiny
MCE_SavePl
ugin);
|
|
1 |
|
(function(
){tinymce.
create('ti
nymce.plug
ins.Save',
{init:func
tion(ed,ur
l){var t=t
his;t.edit
or=ed;ed.a
ddCommand(
'mceSave',
t._save,t)
;ed.addCom
mand('mceC
ancel',t._
cancel,t);
ed.addButt
on('save',
{title:'sa
ve.save_de
sc',cmd:'m
ceSave'});
ed.addButt
on('cancel
',{title:'
save.cance
l_desc',cm
d:'mceCanc
el'});ed.o
nNodeChang
e.add(t._n
odeChange,
t);ed.addS
hortcut('c
trl+s',ed.
getLang('s
ave.save_d
esc'),'mce
Save');},g
etInfo:fun
ction(){re
turn{longn
ame:'Save'
,author:'M
oxiecode S
ystems AB'
,authorurl
:'http://t
inymce.mox
iecode.com
',infourl:
'http://wi
ki.moxieco
de.com/ind
ex.php/Tin
yMCE:Plugi
ns/save',v
ersion:tin
ymce.major
Version+".
"+tinymce.
minorVersi
on};},_nod
eChange:fu
nction(ed,
cm,n){var
ed=this.ed
itor;if(ed
.getParam(
'save_enab
lewhendirt
y')){cm.se
tDisabled(
'save',!ed
.isDirty()
);cm.setDi
sabled('ca
ncel',!ed.
isDirty())
;}},_save:
function()
{var ed=th
is.editor,
formObj,os
,i,element
Id;formObj
=tinymce.D
OM.get(ed.
id).form||
tinymce.DO
M.getParen
t(ed.id,'f
orm');if(e
d.getParam
("save_ena
blewhendir
ty")&&!ed.
isDirty())
return tru
e;tinyMCE.
triggerSav
e();if(os=
ed.getPara
m("save_on
savecallba
ck")){if(e
d.execCall
back('save
_onsavecal
lback',ed)
){ed.start
Content=ti
nymce.trim
(ed.getCon
tent({form
at:'raw'})
);ed.nodeC
hanged();}
return;}if
(formObj){
ed.isNotDi
rty=true;i
f(formObj.
onsubmit==
null||form
Obj.onsubm
it()!=fals
e)formObj.
submit();e
d.nodeChan
ged();}els
e ed.windo
wManager.a
lert("Erro
r: No form
element f
ound.");re
turn true;
},_cancel:
function()
{var ed=th
is.editor,
os,h=tinym
ce.trim(ed
.startCont
ent);if(os
=ed.getPar
am("save_o
ncancelcal
lback")){e
d.execCall
back('save
_oncancelc
allback',e
d);return;
}ed.setCon
tent(h);ed
.undoManag
er.clear()
;ed.nodeCh
anged();}}
);tinymce.
PluginMana
ger.add('s
ave',tinym
ce.plugins
.Save);})(
);
|