/m', '/(
{$_freeze2_messages['msg_freeze2_body_start']}
"; return array('msg'=>$_freeze2_messages['title_freeze2'],'body'=>$body); }elseif(isset($mode) && $mode === 'select'){ if(isset($vars['pass']) && pkwk_login($vars['pass'])) { //認証が通ったらそれぞれページ名やファイル名の一覧を表示する $vars['pass'] = '';//認証が終わったのでパスを消去 if(isset($vars['dir']) && $vars['dir']==="DATA") { //ページ $body = preg_replace($pattern,$replace,page_list(exclude_freezed_pages(get_existpages(DATA_DIR)))); $body .= $_freeze2_messages['msg_freeze2_check']; return array('msg'=>$_freeze2_messages['title_list'],'body'=>$body); } elseif(isset($vars['dir']) && $vars['dir']==="UPLOAD"){ //添付ファイル $body = "\n"; $body .= $_freeze2_messages['msg_freeze2_check']; return array('msg'=>$retval['msg'],'body'=>$body); } } elseif(isset($vars['pass']) && !pkwk_login($vars['pass'])){ //認証エラー return array('msg' => $_freeze2_messages['title_freeze_error'],'body'=>$_freeze2_messages['msg_auth_error']); } }elseif(isset($mode) && $mode === 'confirm'){ //確認画面+もう一回認証要求? if(array_key_exists('page',$vars) and $vars['page'] != ''){ $i=0; $body = "\n"; $body .= "{$_freeze2_messages['msg_freeze2_auth']}
"; return array('msg'=>$_freeze2_messages['title_select_list'],'body'=>$body); }else{ //選択がなければエラーメッセージを表示する $error_msg = "{$_freeze2_messages['msg_freeze2_error']}
".$_freeze2_messages['msg_back_word']."
"; return array('msg'=>$_freeze2_messages['title_freeze_error'] ,'body'=>$error_msg); } }elseif(isset($mode) && $mode === 'delete'){ //凍結 if(isset($vars['pass']) && pkwk_login($vars['pass'])) { switch($vars['dir']){ case 'DATA': $mes = 'page'; foreach($vars['page'] as $page) { $s_page = htmlspecialchars($page, ENT_QUOTES); if(is_page($s_page) && !is_freeze($s_page)){ $flag[$s_page] = true; $postdata = get_source($page); array_unshift($postdata, "#freeze\n"); $postdata = join('', $postdata); file_write(DATA_DIR,$page, $postdata, TRUE); }else{ $flag[$s_page] = false; } } break; case 'UPLOAD': $mes = 'attach'; $size = count($vars['file_a']); for($i=0;$i<$size;$i++){ foreach (array('refer', 'file', 'age') as $var) { $vars[$var] = isset($vars[$var.'_a'][$i]) ? $vars[$var.'_a'][$i] : ''; } $result = attach_freeze(TRUE); //それぞれのファイルについて成功|失敗のフラグを立てる switch($result['msg']){ case $_attach_messages['msg_freezed']: $flag["{$vars['refer']}/{$vars['file']}"] = true; break; case $_attach_messages['err_notfound'] || $_attach_messages['err_noparm']: $flag["{$vars['refer']}/{$vars['file']}"] = false; break; default: $flag["{$vars['refer']}/{$vars['file']}"] = false; break; } } break; } if(in_array(false,$flag)){ //凍結失敗したものが一つでもある foreach($flag as $key=>$value){ $body .= "$key => {$status[$value]}{$_freeze2_messages['msg_freeze_error']}
"; return array('msg' => $_freeze2_messages['title_freeze_error'],'body'=>$body); }else{ //凍結成功 foreach($flag as $key=>$value){ $body .= "$key{$_freeze2_messages['msg_freeze_success']}
"; return array('msg' => $_freeze2_messages['title_freeze_'.$mes] ,'body' => $body); } } elseif(isset($vars['pass']) && !pkwk_login($vars['pass'])){ //認証エラー return array('msg' => $_freeze2_messages['title_freeze_error'],'body'=>$_freeze2_messages['msg_auth_error']); } } } function exclude_freezed_pages($pages ) { $aryret = array(); foreach($pages as $page) { if (!is_freeze($page)) { $aryret[] = $page; } } return $aryret; } ?>