会員名簿更新ツール

[diary:174895]
[beforeExec]
Lo.en1 = function(s){
Fx.userID = key(s, "DATA").split(" ");
};
upDateDiary = function(){
echo("txt1", Fx.userID.join(" ") + " ");
echo("F6Max", Fx.userID.length);
F6count = 0;
ch1d();
};
ch1d = function(){
var o = Fid("txt1");
var s = echo(o);
if(s != "" && s.match(/(^[0-9a-z\-]+)(\.|\*])(..) /)){
cN = RegExp.$1; cF = RegExp.$2; cC = RegExp.$3;
echo(o, s.replace(/^[0-9a-z\-]+(\.|\*).. /,""));
echo("F6Name", cN);
echo("F6Cnt", ++F6count);
Fx.e("/home/" + cN + "/diary/menu.html", "ch2d");
} else {
echo("F6Name", "serch done.");
}
};
Lo.ch2d = function(s){
cC = (parseInt(cC,16) | 0x20).toString(16);
echo("txt2", echo("txt2") + cN + cF + cC + " ");
ch1d();
};
Lo.ch2d.err = function(){
echo("txt2", echo("txt2") + cN + cF + cC + " ");
ch1d();
};
upDate = function(){
echo("txt1", Fx.userID.join(" ") + " ");
echo("F6Max", Fx.userID.length);
F6count = 0;
ch1();
};


ch1 = function(){
var o = Fid("txt1");
var s = echo(o);
if(s != "" && s.match(/(^[0-9a-z\-]+)(\.|\*])(..) /)){
cN = RegExp.$1; cF = RegExp.$2; cC = RegExp.$3;
echo(o, s.replace(/^[0-9a-z\-]+(\.|\*).. /,""));
echo("F6Name", cN);
echo("F6Cnt", ++F6count);
Fx.e("/cgi-bin/bbs.cgi?oid=" + cN + ";n=1","ch2");
} else {
echo("F6Name", "serch done.");
}
};
Lo.ch2 = function(s){
if(s.indexOf('ARTICLE no="0') == -1) cC = (parseInt(cC,16) | 0x10).toString(16);
echo("txt2", echo("txt2") + cN + cF + cC + " ");
ch1();
};
upDateLog2 = function(){
echo("txt1", Fx.userID.join(" ") + " ");
echo("F6Max", Fx.userID.length);
F6count = 0;
ch1e();
};
ch1e = function(){
var o = Fid("txt1");
var s = echo(o);
if(s != "" && s.match(/(^[0-9a-z\-]+)(\.|\*])(..) /)){
cN = RegExp.$1; cF = RegExp.$2; cC = RegExp.$3;
echo(o, s.replace(/^[0-9a-z\-]+(\.|\*).. /,""));
echo("F6Name", cN);
echo("F6Cnt", ++F6count);
Fx.e("/cgi-bin/footprint.cgi?oid=" + cN, "ch2e");
} else {
echo("F6Name", "serch done.");
}
};
Lo.ch2e = function(s){
var fg = 0;
if(s.match(/td class="date">(\d{4}) (\d\d\/\d\d \d\d:\d\d)/)){
var a = (new Date()).getTime() - (new Date(RegExp.$1 + "/" + RegExp.$2)).getTime();
if(a < 60*60*24*180*1000) fg = 1;
}
var c = parseInt(cC,16);
a = fg ? c | 0x40 : c & 0xbf;
cC = ("0" + a.toString(16)).slice(-2);
echo("txt2", echo("txt2") + cN + cF + cC + " ");
ch1e();
};
upDateMake = function(){
echo("txt1", Fx.userID.join(" ") + " ");
echo("F6Max", Fx.userID.length);
F6count = 0;
ch1f();
};
ch1f = function(){
var o = Fid("txt1");
var s = echo(o);
if(s != "" && s.match(/(^[0-9a-z\-]+)(\.|\*])(..) /)){
cN = RegExp.$1; cF = RegExp.$2; cC = RegExp.$3;
echo(o, s.replace(/^[0-9a-z\-]+(\.|\*).. /,""));
echo("F6Name", cN);
echo("F6Cnt", ++F6count);
Fx.e("/cgi-bin/footprint.cgi?oid=" + cN, "ch2f");
} else {
echo("F6Name", "serch done.");
}
};
Lo.ch2f = function(s){
var fg = 0;
if(s.match(/HIT \(since (\d{4}) (\d\d\/\d\d \d\d:\d\d)/)){
var a = (new Date()).getTime() - (new Date(RegExp.$1 + "/" + RegExp.$2)).getTime();
if(a < 60*60*24*180*1000) fg = 1;
}
var c = parseInt(cC,16);
a = fg ? c | 0x08 : c & 0xf7;
cC = ("0" + a.toString(16)).slice(-2);
echo("txt2", echo("txt2") + cN + cF + cC + " ");
ch1f();
};

upDateLog1 = function(){
var a = Fx.user.join(" ");
log1 = a.split(" ");
log2 = a.replace(/(\.|\*)../g, "").split(" ");
echo("txt1", a + " ");
echo("F6Max", log1.length);
F6count = 0;
ch1g(); log1User = "";
};
ch1g = function(){
var o = Fid("txt1");
var s = echo(o);
if(log2.length > 0 && log1.length > 0){
var a = log1.shift();
cN = a.replace(/...$/,"");
cF = a.substring(0,1);
cC = a.slice(-2);
}
if(s != "" && s.match(/(^[0-9a-z\-]+)(\.|\*])(..) /)){
cN = RegExp.$1; cF = RegExp.$2; cC = RegExp.$3;
echo(o, s.replace(/^[0-9a-z\-]+(\.|\*).. /,""));
echo("F6Name", cN);
echo("F6Cnt", ++F6count);
Fx.e("/cgi-bin/footprint.cgi?oid=" + cN, "ch2g");
} else {
echo("F6Name", "serch done.");
}
};
Lo.ch2g = function(s){
var fg = 0;
if(s.match(/td class="date">(\d{4}) (\d\d\/\d\d \d\d:\d\d)/)){
var a = (new Date()).getTime() - (new Date(RegExp.$1 + "/" + RegExp.$2)).getTime();
if(a < 60*60*24*180*1000) fg = 1;
}
var c = parseInt(cC,16);
a = fg ? c | 0x40 : c & 0xbf;
cC = ("0" + a.toString(16)).slice(-2);
echo("txt2", echo("txt2") + cN + cF + cC + " ");
ch1g();
};

[/beforeExec]
[cssText]
#mainDisp { font-size:90%; line-height:1.3em; margin:1em; font-family:meiryo,"メイリオ"; }
[/cssText]
[body]
<$$a href="main.html?diary=174895">会員名簿更新ツール<$$/a>
<$$h4>会員データ識別フラグの詳細(番号はビット桁)<$$/h4>
<ol start="0">
<li>何らかの更新がある場合に 1</li>
<li>一週間以内のサイトの更新がある場合に 1</li>
<li>6ヶ月以上放置の場合に 1</li>
<li>6ヶ月以内の入会なら 1</li>
<li>掲示板が更新(移行データも含む)されていたら 1</li>
<li>日記帳が更新(移行データも含む)されていたら 1</li>
<li>リスト内会員のログに足跡が残っている場合に 1</li>
<li>ログに6ヶ月以内の足跡が残っていた場合に 1</li>
</ol>
<$$h4>アクセス解析が設置されていたらアスタリスク<$$/h4>

<form id="F6" name="F6" onsubmit="return false">
データのサーチ
<input type="button" value="入会日" onclick="upDateMake()" />
<input type="button" value="掲示板" onclick="upDate()" />
<input type="button" value="日記帳" onclick="upDateDiary()" />
<input type="button" value="足跡(1)" onclick="upDateLog1()" />
<input type="button" value="足跡(2)" onclick="upDateLog2()" />
<$$span id="F6Cnt"><$$/span>/<$$span id="F6Max"><$$/span> <$$span id="F6Name""><$$/span><$$br />
<$$textarea id="txt1" name="txt1" rows="4" cols="60"><$$/textarea><$$br />
<$$textarea id="txt2" name="txt2" rows="4" cols="60"><$$/textarea>
</form>
[/body]

[exec]
document.title = "会員名簿更新ツール";
Fx.e("diary/2010/08/1281538483.html", "en1");
[/exec]

[/diary:174895]

■仕様書 Wrote 2010 11/27 10:30