eDisp 3.0.1

[diary:171383]
[beforeExec]

entry = function(){
Fx.type = Fx.loc.match(/type=(\w+)/) ? RegExp.$1 : "doc";
Fx.page = Fx.loc.match(/page=(\w+)/) ? RegExp.$1 : "main";
Fx.user = Fx.loc.match(/user=([\w\-]+)/) ? RegExp.$1 : Vis.def;
isDoc = Fx.type == "doc";

var sel = echo("eDispTypeSel", Fx.type);
eDispTypeChg(sel);
if(isSel){
echo("eDispPageSel", Fx.page);
}

if(isSel) loadEntry();
};
loadEntry = function(){
Fx.e(Fx.uri(Fx.type,Fx.page,Fx.user));
isDoc = Fx.type == "doc";
};

Lo.entry = function(){
echo("eDispLink", ['\x3ca href="main.html?diary=171383&type=',
Fx.type,'&page=',Fx.page,'&user=',Fx.user,'">uri\x3c/a>']

);
echo("eDispUser", Fx.user);
Fid("eDispSubmitButton").disabled =
Vis.login && Fx.user == Vis.oid ? false : true;

var f = Fx.page == "main";
echo("eDisp", Fx.type == "doc" ? key2(res(Re.entry),
(f ? /\x3cdiv>\t/ : /\x3cdiv id="menu">\t/),

(f ? /\t\x3c\/div>/g : /\x3c\/div>\t+\x3cdiv class="for/g)) : res(Re.entry)
).focus();
eDispCounter();
echo("eDispUpdateCnt", Vis.oid == Fx.user ?

["updte(",(Fx.CNT = 0),") "] : "not submit"
);
echo("eDispMsgDisp", "done.");

};
Lo.entry.err = function(){
var o = Re.entry;
echo("eDispMsgDisp", ["Fx.user : ",Fx.user," ",o.status," ",o.statusText]);

echo("eDisp", "");
Fid("eDispSubmitButton").disabled = true;
eDispCounter();
echo("eDispUpdateCnt", "not submit");

(o = Fid("eDispUser")).focus(); o.select();
};
upDateEntry = function(){
var cgi = isDoc ? Fx.page : "css";
echo("eDispMsgDisp", ["/cgi-bin/",cgi,"_editor.cgi submit now..."]);

Fx.e(cgi + "_editor", (isDoc ? "text=" : "target=" + Fx.page + "&css=") +
enc(echo("eDisp")) + "&oid=" + Vis.oid + "&mode=update", "u2E"

);
};
Lo.u2E = function(){
echo("eDispMsgDisp", [(new Date()).toLocaleString()," update.....done."]);
echo("eDispUpdateCnt", ["update (",++Fx.CNT,") "]);

if(Fx.page == "menu") Fx.frameReload("menu");
};
eDispPageChg = function(obj){
var val = echo(obj);
if(val == "") return;

Fx.page = val;
eDispPageLoad();
};
eDispPageLoad = function(){
var o = Fid("eDispUser"), u = echo(o);
u.length > 1 ? Fx.user = u : echo(o, Vis.def);

loadEntry();
};
eDispCounter = function(){
echo("eDispCountDisp", [echo("eDisp").length,"/",isDoc ? 1 : 2,"0000(max)"]);

};
showDisp = function(obj){ Fid(obj).scrollIntoView(); };
eDispTypeChg = function(obj){
var val = echo(obj);
if(val == "") return;
isDoc = val == "doc";

isSel = "doc css txt".indexOf(val) != -1;
Fx.type = val;
var str;
if(isSel){
var op = val == "doc" ? "main,menu," :

val == "css" ? "common,main,menu,profile,bbs,bbs_form,diary,links,friends,footprint," :
val == "txt" ? "main,menu,profile,bbs,diary,links,friends,footprint," : "";

str = '<select id="eDispPageSel" name="page" onchange="eDispPageChg(this)"><option value="">***page***</option>' +
op.replace(/(\w+)\,/g, '<option value="$1">$1<\/option>') + '</select> ' +

'<input type="text" size="14" id="eDispUser" value="' + Fx.user + '" /> ' +

'<input type="button" value="request" onclick="eDispPageLoad()" />';
} else {
str = '<input type="button" value="before" onclick="diaryFormEntry(false,-1)" /><input type="button" value="this" onclick="diaryFormEntry(false,0)" /><input type="button" value="next" onclick="diaryFormEntry(false,1)" /> cate:<input type="text" id="cate" value="1" size="1" /> no:<input type="text" id="article" size="6" value="" /> title:<input type="text" size="20" id="msgTitle" value="" />';

}
echo("eDispCall", str);
};

[/beforeExec]
[body]
<form id="eForm" action="main.html" class="disp_form" onsubmit="return false">

<input type="hidden" name="diary" value="=171383" />
<table class="disp_menu"><tbody><tr><td class="left_content">

<$$span class="disp_logo">eDisp<$$/span>
<$$span id="eDispLink" class="disp_uri">uri<$$/span>
<select id="eDispTypeSel" name="type" onchange="eDispTypeChg(this)">

<option value="">***type***</option>
<option value="doc">doc_editor</option>
<option value="css">css_editor</option>

<option value="txt">doc_source</option>
<option value="diary_form">diary_form</option>
</select>
<$$span id="eDispCall"><$$/span>

[form:sep]
<input type="button" value="font" /><input type="button" value="size" />

[append:1,eDisp]
<input type="button" id="eDispSubmitButton" value="submit" onclick="upDateEntry()" />

<$$span id="eDispCountDisp" class="geo">
<$$span id="eDispUpdateCnt"><$$/span>
<$$span id="eDispMsgDisp"><$$/span>

[form:sep]
<input type="button" value="nDisp" onclick="showDisp('nForm')" /><input

type="button" value="mDisp" onclick="showDisp('mForm')" />
[form:end]


[form:nForm]
<$$span class="disp_logo">nDisp<$$/span>
<input type="button" value="replace" />

[form:sep]
<input type="button" value="submit" />
[append:1,nDisp]
<input type="button" value="cls" />

[form:sep]
<input type="button" value="eDisp" onclick="showDisp('eForm')" /><input

type="button" value="mDisp" onclick="showDisp('mForm')" />
[form:end]


[form:mForm]
<$$span class="disp_logo">mDisp<$$/span>
<input type="button" value="replace" />

[form:sep]
<input type="button" value="submit" />
[append:0,mDisp]
<input type="button" value="cls" />

[form:sep]
<input type="button" value="eDisp" onclick="showDisp('eForm')" /><input

type="button" value="nDisp" onclick="showDisp('nForm')" />
[form:end]
[/body]

[exec]
entry();
document.title = "eDisp 3.0.1";
[/exec]
[/diary:171383]

■仕様書