汎用CSS 2.0.1

[beforeExec]
entry = function(){
if(window.screen.height == 600){
Fid("txt1").style.height = "335px";
Fid("updateForm").r1[2].checked = true;
rEntry(12);
}
echo("userID", Fx.loc.match(/user=([\w\-]+)/) ? RegExp.$1 : Vis.login ? Vis.oid : "nancyan");
var page = Fx.loc.match(/page=([\w]+)/) ? RegExp.$1 : "diary";
var o = Fid("sel");
for(var i = 0; i < o.options.length; i++){
if(o.options[i].value == page){
o.selectedIndex = i; break;
}
}
Fx.CNT = 0;
loadEntry();
};
loadEntry = function(){
var o = Fid("userID");
var s = echo(o);
if(s.length < 2 || s.match(/[^a-z0-9\-]+/)){
alert("ユーザー名の欄が空白か2文字以上になっていません\nもしくは、半角英数字とハイフン以外の文字が存在しています");
o.focus(); o.select();
return;
}
o = Fid("sel");
var s1 = o.options[o.selectedIndex].value
echo("infoUpdate", "更新\x3cb>0\x3c/b>回目");
Fx.CNT = 0;
echo("userPage", s1 == "bbs" || s1 == "footprint" ?
"\x3ca href='/cgi-bin/" + s1 + ".cgi?oid=" + s + "' target='_blank'>閲覧\x3c/a>" :
s1 != "common" && s1 != "bbs_form" ?
"\x3ca href='/home/" + s + "/" + s1 + (s1 == "diary" ? "/" : ".html") + "' target='_blank'>閲覧\x3c/a>" : ""
);
Fx.e("/home/" + s + "/" + s1 + ".css?" + (new Date()).getTime(), "load2");
echo("absDisp" , ""); Fid("absDisp").className = "hide"; echo("cate", "情報");
if(s1 == "diary") Fx.e("/home/" + s + "/diary/menu.html", "cateEntry");
};
Lo.cateEntry = function(){
var s = Re.cateEntry.responseText.replace(/\r?\n/g, "\t");
s = s.replace(/^.+\x3chr \/>/, "");
s = s.replace(/(href=)/g, 'target="_blank" $1');
echo("cate", "\x3ca href='javascript:cateShow()'>情報\x3c/a>");
echo("absDisp", s);
};
cateShow = function(){
var o = Fid("absDisp");
o.className = o.className != "show" ? "show" : "hide";
};
Lo.load2 = function(){
echo("txt1", Re.load2.responseText); counter();
var o = Fid("sButton");
if(Vis.oid == echo("userID")){
echo("infoMsg", "done..."); o.disabled = false;
} else {
echo("infoMsg", "\x3cfont color='red'>管理人以外は編集が出来ませんので\x3cb>閲覧だけ\x3c/b>にして下さい。\x3c/font>");
echo("infoUpdate", "");
o.disabled = true;
}
};
Lo.load2.err = function(){
var o = Fid("userID");
echo("infoMsg", "\x3cb>" + echo(o) + "\x3c/b>のサイトは存在しません");
Fid("sButton").disabled = true;
echo("txt1", "");
counter(); o.focus(); o.select();
};
submitEntry = function(){
echo("infoMsg", ".....update Now!....");
var o = Fid("sel");
var dat = "css=" + encodeURIComponent(echo("txt1")) + "&target=" + o.options[o.selectedIndex].value + "&oid=" + Vis.oid + "&mode=update";
Fx.e("css_editor", dat, "up2");
};
Lo.up2 = function(){
Fx.CNT++;
echo("infoUpdate", "更新\x3cb>" + Fx.CNT + "\x3c/b>回目");
echo("infoMsg", "update : " + (new Date()).toLocaleString() + "....done.");
};

rEntry = function(n){ Fid("txt1").style.fontSize = n + "pt"; };
counter = function(){ echo("infoCnt", echo("txt1").length + "/20000(max)"); };
[/beforeExec]
[cssText]
* { box-border:content-box; }
.hide { display:none; }
.show { display:block; }
#absDisp {
position:absolute; top:40px; left:300px; z-index:100;
background-color:#fff; border:1px solid #808080; padding:.5em;
}
#absDisp li a { padding:.25em; }
#absDisp li:after { content:" (" attr(class) ")"; }
#cate { font-weight:bold; color:#ccc; }
#updateForm { margin-left:1em; margin-right:2em; }
#txt1 {
background-color:#ffefff; width:100%; border:1px solid #ccc;
border-radius:5px; -moz-border-radius:5px; font-size:11pt;
padding-left:.25em; margin-bottom:.25em;
}
#infoDisp { font-size:11pt; }
#infoDisp a { color:#000; font-weight:bold; text-decoration:underline; }
#infoDisp a:hover { color:steelblue; }
#userID, #sel, .radio {
font-size:11pt; border:1px solid lightblue; background-color:steelblue;
border-radius:8px; -moz-border-radius:8px; padding-left:.5em; color:#fff;
}
.radio {
font-family:"MS UI Gothic";
padding-top:3px; padding-bottom:2px; padding-right:.5em; margin-right:.5em; }
#msgDisp span { font-size:11pt; }
input { font-size:11pt; }
[/cssText]
[body]
<$$div id="absDisp" class="hide"><$$/div>
<form name="updateForm" id="updateForm">
<$$div id="infoDisp">
■<$$a href="main.html?no=119">#119 汎用CSS 2.0.1<$$/a>
<input type="text" size="12" id="userID" />
<select id="sel" onchange="loadEntry()">
<option value="common">共通設定</option>
<option value="main">トップページ</option>
<option value="menu">メニュー</option>
<option value="profile">プロフィール</option>
<option value="bbs">掲示板 (表示)</option>
<option value="bbs_form">掲示板 (フォーム)</option>
<option value="diary">日記 / コラム</option>
<option value="links">リンク集</option>
<option value="friends">友達リスト</option>
<option value="footprint">足跡</option>
</select>
<$$span id="cate">情報<$$/span>
<$$span class="radio">
<input type="radio" name="r1" onclick="rEntry(10.5)" />小
<input type="radio" name="r1" onclick="rEntry(11)" checked="checked" />中
<input type="radio" name="r1" onclick="rEntry(12)" />大
<$$/span>
<$$span id="userPage"><$$/span>
<input type="button" value="取得" onclick="loadEntry()" />
<$$/div>
<$$textarea id="txt1" cols="80" rows="24" wrap="soft"
onkeypress="counter()" onmousedown="counter()" onchange="counter()"><$$/textarea>
<$$div id="msgDisp">
<input type="button" value="送信" onclick="submitEntry()" id="sButton" />
<$$span id="infoCnt"><$$/span>
<$$span id="infoUpdate">閲覧<$$/span>
<$$span id="infoMsg"><$$/span>
<$$/div>
</form>
[/body]
[exec]
document.title = "汎用CSS 2.0.1";
entry();
[/exec]