@6>
<@local(s,art,logs,t,edit_pkey)>
<$s = v.blog>
<@> システムモード
<$v.system_mode("記事の編集")>
<@>CSRFチェック
<$if_post_csrf_check()>
<@> ログインしていない
<$ifjump(!Auth.ok && ENV.REQUEST_METHOD ne 'POST', 'login')>
<@> ブログが存在しない or 権限がない
<$ifexec(! v.allow_edit, begin)>
<$redirect( v.myself . '?blog_create' )>
<$end>
<@> 編集モードなら記事をロード
<$ifexec(v.pinfo, begin, begin)>
<$art = v.load_article_current_blog(v.pinfo, undef, flagq(no_override))>
<$ifexec(! defined art, begin)>
<$ifjump_clear(! POST, '_sub/error_message', '指定の記事がみつかりません')>
<$end>
<$ifset(!Query.template, edit_pkey, art.pkey)>
<$ifexec(art.draft, begin, begin)>
<@> 下書き
<$art.enable = s.enable>
<$art.ping = s.ping>
<$art.tw_ping = s.tw_ping>
<$else>
<$art_year = art.year>
<$art_mon = art.mon>
<$art_day = art.day>
<$end>
<$else>
<$art.name = Auth.name>
<$art.enable = s.enable>
<$art.com_ok = s.com_ok>
<$art.hcom_ok = s.hcom_ok>
<$art.ping = s.ping>
<$art.tw_ping = s.tw_ping>
<$art.wiki = s.wiki>
<$art.parser = s.parser>
<$end>
<@> 画面タイトル
<$ifset(!edit_pkey, v.title, '記事の作成')>
<@> 保存ボタンの名前
<$save_btn_text = '編集して' . if(edit_pkey, '保存', '作成')>
<@> エラーなら表示して終了
<$ifjump_clear(@Message, '_sub/error_message', undef, 'ブラウザの戻るボタンで戻ってください')>
<@> 他人のブログ?
<#@call('_sub/others_blog_check')>
<@> 他人の記事は編集できない?
<$ifjump_clear(edit_pkey && !v.check_editor(art), '_sub/error_message', '他人の記事は編集できません。')>
<@> スクリプトをロード
<$v.regist_js("<@v.script_dir>edit.js")>
<@ifexec(!edit_pkey && !form_.paste_txt, begin)>
<@>
<$logs2 = v.load_arts_list( { draft_only => 1} )>
<$logs = []>
<$forexec(t, logs2, begin)>
<$ifpush(edit_pkey != t.pkey && v.check_editor(t), logs, t)>
<$end>
<@ifexec(@logs, begin)>
下書きを開く
<@v.title>
<$end>