「MediaWiki:Forum.js」の版間の差分

編集の要約なし
編集の要約なし
47行目: 47行目:
             // 動物リスト
             // 動物リスト
             const animals = [
             const animals = [
                 'アライグマ', 'カピバラ', 'キリン', 'ペンギン', 'パンダ',
                 'イヌ', 'ネコ', 'ハムスター', 'ウシ', 'ウマ', 'ヒツジ', 'ヤギ', 'ブタ', 'ニワトリ', 'アヒル',
                 'ウサギ', 'リス', 'ハリネズミ', 'コアラ', 'ナマケモノ',
                'クマ', 'サル', 'ゴリラ', 'チンパンジー', 'オランウータン', 'マンドリル',
                 'イルカ', 'クジラ', 'サメ', 'タコ', 'イカ',
                'チーター', 'ヒョウ', 'ジャガー', 'ピューマ', 'ハイエナ', 'ミーアキャット',
                 'フクロウ', 'タカ', 'スズメ', 'ツバメ', 'カラス',
                'シマウマ', 'ガゼル', 'インパラ', 'バッファロー', 'ヌー', 'アルパカ', 'リャマ', 'ラクダ',
                 'ライオン', 'トラ', 'ゾウ', 'サイ', 'カバ',
                'カンガルー', 'ワラビー', 'ウォンバット', 'カモノハシ', 'ハリモグラ',
                 'オオカミ', 'キツネ', 'タヌキ', 'イノシシ', 'シカ'
                'アザラシ', 'アシカ', 'セイウチ', 'オットセイ', 'ジュゴン', 'マナティ', 'ラッコ',
                'シャチ', 'ベルーガ', 'マッコウクジラ', 'ザトウクジラ', 'ジンベエザメ', 'ホオジロザメ', 'ハンマーヘッドシャーク',
                'エイ', 'マンボウ', 'タツノオトシゴ', 'ウツボ', 'クリオネ', 'クラゲ', 'サンゴ', 'イソギンチャク',
                'ワシ', 'トンビ', 'ハト', 'インコ', 'オウム', 'ブンチョウ', 'カナリア',
                'ダチョウ', 'エミュー', 'ヒクイドリ', 'キウィ', 'フラミンゴ', 'クジャク', 'ハクチョウ',
                'カワセミ', 'ハヤブサ', 'ミミズク', 'キツツキ', 'カモメ', 'ペリカン',
                'ワニ', 'ヘビ', 'トカゲ', 'カメレオン', 'イグアナ', 'ヤモリ', 'コモドドラゴン',
                'カエル', 'イモリ', 'サンショウウオ', 'ウーパールーパー',
                'アリクイ', 'アルマジロ', 'ヤマアラシ', 'スカンク', 'イタチ', 'テン', 'カワウソ', 'ビーバー',
                'ムササビ', 'モモンガ', 'フェレット', 'チンチラ', 'デグー', 'モルモット',
                'ドラゴン', 'ユニコーン', 'ペガサス', 'フェニックス', 'グリフォン', 'ケンタウロス', 'ケルベロス',
                'ヒドラ', 'キマイラ', 'バジリスク', 'コカトリス', 'ワイバーン', 'マンティコア', 'ゴーレム',
                'クラーケン', 'リヴァイアサン', 'シーサーペント', '人魚', 'セイレーン',
                'カッパ', '天狗', '鬼', '龍', '麒麟', '鳳凰', '霊亀', '八咫烏',
                'ツチノコ', 'ネッシー', 'イエティ', 'ビッグフット', 'チュパカブラ', 'モンゴリアンデスワーム',
                'カブトムシ', 'クワガタ', 'チョウ', 'トンボ', 'セミ', 'カマキリ', 'ハチ', 'アリ',
                'クモ', 'サソリ', 'ムカデ', 'ダンゴムシ', 'ペンギン', 'イルカ', 'コアラ', 'パンダ', 'レッサーパンダ',
                 'カピバラ', 'ナマケモノ', 'オポッサム', 'ミツバチ', 'テントウムシ', 'ホタル', 'カブトガニ', 'ダイオウグソクムシ',
                'シーラカンス', 'オウムガイ', 'アノマロカリス', 'ウミサソリ', 'トリロバイト', 'ディメトロドン', 'エダフォサウルス',
                'プレシオサウルス', 'モササウルス', 'ティラノサウルス', 'トリケラトプス', 'ステゴサウルス', 'ブラキオサウルス',
                 'アンキロサウルス', 'ディプロドクス', 'ヴェロキラプトル', 'ギガノトサウルス', 'カルノタウルス', 'メガロサウルス',
                 'スピノサウルス', 'イグアノドン', 'パラサウロロフス', 'エドモントサウルス', 'ヒプシロフォドン', 'マイアサウラ',
                 'プロトケラトプス', 'オヴィラプトル', 'オルニトミムス', 'シノサウルス', 'サウロロフス', 'サウルハドン', 'ガリミムス',
                 'アルバートサウルス', 'ダコタラプトル', 'アクロカントサウルス', 'シェノサウルス', 'エラスモサウルス', 'イクチオサウルス',
                'オルニトレステス', 'テリジノサウルス', 'アマルガサウルス', 'シンラプトル'
             ];
             ];


169行目: 193行目:
                 const toolbarHtml = `<div id="f-toolbar" style="margin-bottom:.4em;display:flex;gap:.3em;flex-wrap:wrap;align-items:center;padding:.3em;background:#f8f8f8;border:1px solid #ccc;border-radius:3px;">
                 const toolbarHtml = `<div id="f-toolbar" style="margin-bottom:.4em;display:flex;gap:.3em;flex-wrap:wrap;align-items:center;padding:.3em;background:#f8f8f8;border:1px solid #ccc;border-radius:3px;">
<span style="font-size:.85em;color:#555;margin-left:.3em;">文字色:</span>
<span style="font-size:.85em;color:#555;margin-left:.3em;">文字色:</span>
${['#cc0000','#e07000','#007700','#0055cc','#7700aa','#555555'].map(c =>
${['#cc0000', '#e07000', '#007700', '#0055cc', '#7700aa', '#555555'].map(c =>
    `<span class="f-tb-color" data-color="${c}" title="${c}" style="display:inline-block;width:1.2em;height:1.2em;background:${c};border:2px solid #aaa;border-radius:2px;cursor:pointer;vertical-align:middle;"></span>`
                    `<span class="f-tb-color" data-color="${c}" title="${c}" style="display:inline-block;width:1.2em;height:1.2em;background:${c};border:2px solid #aaa;border-radius:2px;cursor:pointer;vertical-align:middle;"></span>`
).join('')}
                ).join('')}
</div>`;
</div>`;
                 // =========================================
                 // =========================================
243行目: 267行目:
                             headers: { 'Content-Type': 'application/json' },
                             headers: { 'Content-Type': 'application/json' },
                             body: JSON.stringify({
                             body: JSON.stringify({
                                 title:   mw.config.get('wgPageName'),
                                 title: mw.config.get('wgPageName'),
                                 text:   newText,
                                 text: newText,
                                 summary: `${msg.deletesummary} #${postId}`
                                 summary: `${msg.deletesummary} #${postId}`
                             })
                             })
266行目: 290行目:
                             body: JSON.stringify({
                             body: JSON.stringify({
                                 action: 'delete',
                                 action: 'delete',
                                 title: mw.config.get('wgPageName'),
                                 title: mw.config.get('wgPageName'),
                                 reason: msg.deletethreadsummary
                                 reason: msg.deletethreadsummary
                             })
                             })
291行目: 315行目:
                             ta.value = ta.value.substring(0, s) + start + selected + end + ta.value.substring(e);
                             ta.value = ta.value.substring(0, s) + start + selected + end + ta.value.substring(e);
                             ta.selectionStart = s + start.length;
                             ta.selectionStart = s + start.length;
                             ta.selectionEnd   = s + start.length + selected.length;
                             ta.selectionEnd = s + start.length + selected.length;
                             ta.focus();
                             ta.focus();
                         };
                         };
447行目: 471行目:
                         document.querySelector('#f-post').disabled = true;
                         document.querySelector('#f-post').disabled = true;
                         const source = (await (await fetch(mw.config.get('wgScript') + `?title=${mw.config.get('wgPageName')}&action=raw`)).text());
                         const source = (await (await fetch(mw.config.get('wgScript') + `?title=${mw.config.get('wgPageName')}&action=raw`)).text());
                         const lp = source.split('{{post|').length -1; // 0スレッドを考慮して投稿数+1をIDにする
                         const lp = source.split('{{post|').length - 1; // 0スレッドを考慮して投稿数+1をIDにする
                         let summary;
                         let summary;
                         if (fedit) {
                         if (fedit) {
463行目: 487行目:
                         // プロキシ経由でBot名義に編集する
                         // プロキシ経由でBot名義に編集する
                         const postBody = {
                         const postBody = {
                             title:   mw.config.get('wgPageName'),
                             title: mw.config.get('wgPageName'),
                             summary: summary
                             summary: summary
                         };
                         };