LOGIN ID Password Auto Login Register Now! Lost Password?
XUGJ Forum

ALTSYSの言語定数管理で定型句を一括置換するJavaScript

投稿ツリー


このトピックの投稿一覧へ

tohokuaiki

なし ALTSYSの言語定数管理で定型句を一括置換するJavaScript

msg# 1
depth:
0
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2010/1/15 14:12 | 最終変更
tohokuaiki  Lieutenant 居住地: From:2004/12  投稿数: 420
言語定数のオーバーライドで、たとえば、フォーラム→会議室とかにしたい場合、結構面倒ですよね。

で、JavaScriptで一括置換です。

言語定数の編集画面で、下記のJavaScriptを走らせます。アドレスバーにコピペでいけるでしょう。
java script:function langRep(before,after){for(var contentbody=xoopsGetElementById("contentBody"),tr=contentbody.getElementsByTagName("TR"),i=0,j=tr.length;i<j;i++){if(tr[i].className!="even"&&tr[i].className!="odd")continue;var td=tr[i].getElementsByTagName("TD");if(td.length!=3)continue;var div=td[1].getElementsByTagName("DIV"),input=td[2].getElementsByTagName("INPUT"),textarea=td[2].getElementsByTagName("TEXTAREA");if(div.length==0||textarea.length==0&&input.length==0)continue;if(arguments.length==3)var text=(input.length?input[0].value:textarea[0].value).replace("\t","","g");else var text=div[0].innerHTML.replace("\t","","g");if(text.match(before)){var target=input.length?input[0]:textarea[0];target.value=text.replace(before,after);target.value=target.value.replace(" ","");target.value=target.value.replace("\n","")}}}function langRepText(before,after){langRep(before,after,1)}function langRepArray(){for(var i=0,j=arguments.length;i<j;i+=2){if(!arguments[i+1])break;langRep(arguments[i],arguments[i+1])}}function langRepTextArray(){for(var i=0,j=arguments.length;i<j;i+=2){if(!arguments[i+1])break;langRepText(arguments[i],arguments[i+1])}}

で、関数が定義されたので、あとは
java script:langRep("フォーラム","会議室");
とかアドレスバーから入力すると、置換されたものがテキストエリアに入ります。

最初の1回にやる分には有効かと思います。


追記:15:05 コードを変更しました。
あと、
java script:langRepText("会議室","相談所");
とやると、テキストエリア内をターゲットにして文字変換するようにしました。

追記:15:25 コードを変更しました。
また、
java script:langRepArray("カテゴリー","部署","フォーラム","会議室","トピック","議題");
で、カテゴリー→部署。フォーラム→会議室。トピック→議題への一括置換です。langRepTextArrayもあります。
投票数:0 平均点:0.00

  条件検索へ


Back to Page Top
MainMenu
Manuals
Search
XOOPS Official & Dev.
XOOPS Communities