include_once 'inc/cbs_include.inc';
include_once PLUGINPATH . '/classes/love/auth/CheckInputUid.class.inc';
include_once PLUGINPATH . '/classes/love/recommend/Recommend.class.inc';
//レコメンド
$PLG_REC = new Recommend;
$PLG_REC->setDb($DB);
// 会員チェック
$CLS_CBS->checkIsMember();
$chkar = array('title'=>array('MAX40', 'タイトル'),
'body'=>array('MAX1000', '本文')
);
$open_array = array("0"=>"公開","3"=>"非公開");
$mode = $CLS_COM->get('mode');
if ($mode == '') $mode = 'form';
$eid = $CLS_COM->get('eid');
// ユーザー情報
$uinfo_list = $PLG_PLOF->getOne();
$uinfo = array();
if(isset($uinfo_list[0])){
$uinfo = $uinfo_list[0];
$user_pid = $uinfo["pid"];
$user_deny_res = $uinfo["deny_res"];
}else{
$CON_CONTENTS->error("プロフィールを登録してください。","エラー",FALSE,"profile-update_top","");
}
//書き込み拒否されたユーザー
if(isset($user_deny_res) && $user_deny_res){
$CLS_COM->error('現在、書き込みを制限されています');
}
//重複入力対処
$PLG_CHECK = new CheckInputUid();
$PLG_CHECK->setDb($DB);
$check_page_id =2; //任意の数字。ページ毎に変える
if ($mode == 'chk') { //確認画面で入力
$PLG_CHECK->regCheck($CON_CLIENT->getUid(),$check_page_id);
}
// 入出力文字コード
// SoftBank3GCはUTF-8に変換(絵文字対応)
if ($CLS_COM->getMinor() == '3GC') {
if ($mode == 'form' || $mode == 'return') {
$html_encoding = 'UTF-8';
$post_encoding = 'SJIS-WIN';
} elseif ($mode == 'chk') {
$html_encoding = 'SJIS-WIN';
$post_encoding = 'UTF-8';
} else {
$html_encoding = 'SJIS-WIN';
$post_encoding = 'SJIS-WIN';
}
} else {
$html_encoding = 'SJIS-WIN';
$post_encoding = 'SJIS-WIN';
}
// SJIS&絵文字タグの形式に統一
$idata = array();
if ($mode == 'form') {
if ($eid) {
$einfo = $CLS_CBS->getEntry($eid);
if ($einfo != FALSE) {
if ($einfo['pid'] != $user_pid) {
$CLS_COM->error('自分のブログのみ編集可能です。');
}
foreach ($chkar as $key=>$val) {
$idata[$key] = $einfo[$key];
}
$mode = 'edit';
}
} else {
$eid = '';
}
} else {
foreach ($chkar as $key=>$val) {
$str = $CLS_COM->get($key, $post_encoding);
if ($mode == 'chk') {
// 絵文字をタグに変換
if ($CLS_COM->getMinor() == '3GC') {
$str = $CLS_ECV->EncodeEmojiSB($str);
$str = mb_convert_encoding($str, $html_encoding, $post_encoding);
} else {
$str = $CLS_ECV->EncodeEmoji($str);
}
}
$idata[$key] = $str;
}
}
// 入力チェック
if ($mode == 'chk' || $mode == 'exe') {
$err = array();
foreach ($chkar as $key=>$val) {
// 必須チェック
if ($idata[$key] == '') {
$err[$key] = $val[1].'は必須項目です。';
continue;
}
// 文字数チェック
preg_match('/MAX([0-9]*)/', $val[0], $res);
if (isset($res[1]) && $res[1]!='' && $CLS_ECV->strlen($idata[$key]) > $res[1]) {
$err[$key] = $val[1].'は全角'.($res[1]/2).'文字までです。';
continue;
}
}
//NGワード検索
if(!isset($err["body"]) || !$err["body"]){
// NG WORD の確認
$ng_list = $CLS_CBS->getNg_word();
$body_ng = $CLS_CBS->chkNg_word($body,$ng_list);
if($body_ng){
$err["body"] = "内容に使用できない文字列($body_ng)が含まれています。
\n";
}
}
if (count($err) > 0) {
$mode = 'error';
}
}
// 出力用に変換
$odata = array();
if ($mode == 'return' || $mode == 'edit') {
foreach ($chkar as $key=>$val) {
$odata[$key] = $CLS_ECV->DecodeEmoji($idata[$key], FALSE);
}
} elseif ($mode == 'chk') {
foreach ($chkar as $key=>$val) {
// $idata[$key] = mb_convert_kana($idata[$key], 'Ksa', $html_encoding); //半角を全角に変換
$odata[0][$key] = nl2br($CLS_ECV->DecodeEmoji($idata[$key]));
$odata[1][$key] = htmlspecialchar($idata[$key]);
}
} elseif ($mode == 'exe') {
foreach ($chkar as $key=>$val) {
$odata[$key] = $idata[$key];
}
} elseif ($mode == 'error') {
foreach ($chkar as $key=>$val) {
$odata[$key] = htmlspecialchars($idata[$key]);
}
} else {
foreach ($chkar as $key=>$val) {
$odata[$key] = '';
}
}
// 保存
if ($mode == 'exe') {
$svinfo = $odata;
//オリジナルとして保存
$svinfo['title_org'] = $svinfo['title'];
$svinfo['body_org'] = $svinfo['body'];
$svinfo['pid'] = $uinfo["pid"];
if ($eid != '') {
$einfo = $CLS_CBS->getEntry($eid);
} else {
$einfo = FALSE;
}
$status_open = $CLS_COM->get("status_open");
if ($status_open == "0" && isset($einfo['status']) && $einfo['status']==1
&& $einfo['category']==$svinfo['category']
&& $einfo['title']==$svinfo['title'] && $einfo['body']==$svinfo['body']) {
// 変更無しならOKとする
$svinfo['status'] = 1; // 1:検閲OK
} else {
$svinfo['status'] = $status_open; // 0:検閲待ち or 3:非公開
}
if (!$eid) {
$svinfo['entry_time'] = date('Y-m-d H:i:s');
}
//重複入力でないとき入力
$check_input_vals = array($CON_CLIENT->getUid(),$check_page_id);
if($PLG_CHECK->getCount("uid=? and page_id=?",$check_input_vals)){
//記事登録
$reg_eid = $CLS_CBS->regEntry($eid, $svinfo);
if ($reg_eid == FALSE) {
// エラーToDo
$CLS_COM->error('書き込みに失敗しました');
}
//アラートメール送信
$check_need_fg=1;
if($check_need_fg){
$mail_page = "ブログ登録";
$alertmail_path = "./jb/common/alertmail.model.inc";
if(file_exists($alertmail_path)){
include_once($alertmail_path);
}
}
$PLG_CHECK->delCheck("uid=? and page_id=?",$check_input_vals);
$eid4mail = $reg_eid;
//記事が非公開なら画像も非公開に
if($status_open == 3){
$img_status = "3";
$img_type = "diary";
$CLS_CBS->updateImageStatus($img_type,$reg_eid,$img_status);
}
}else{
//ブラウザ更新の際、最新の記事IDを取得
$entrys = $CLS_CBS->selectEntryList('pid=?',array($uinfo["pid"]),"eid desc", 1, 0);
$eid4mail = $entrys[0]["eid"];
}
}
// HTML表示をUTF-8にする設定(header.view.incとfooter.view.incで処理)
if ($html_encoding == 'UTF-8') {
$htmlpage_encoding = 'UTF-8';
}
// 掲載基準リンク用パラメータ
$from = 'cbs-diary_reg';
if ($eid != '') {
$from .= rawurlencode('&eid='.$eid);
}
// 色設定
$PGCl = (isset($uconf['color']) && isset($CBS_COLOR[$uconf['color']])) ? $CBS_COLOR[$uconf['color']] : $CBS_COLOR['pink'];
$CLS_COM->setHtmlColor("", "", "", '', '');
// レコメンド
$position = 'search_1';
$rec_info_s = $PLG_REC->getRecommendNowAll($position);
// GPSリンク作成
include './jb/common/gps.model.inc';
| XHTML版 | HTML版 | DebugString | ||
echo ''."\n";
echo ' '.BR;
// エラー
if ($mode == 'error') {
foreach ($err as $val) {
echo $CLS_COM->fontColor('※'.$val, $CBS_BASE_COLOR3).CBSBR;
}
echo $CLS_COM->makeFormStart('diary_reg');
echo '';
echo '';
foreach ($odata as $key=>$val) {
echo '';
}
echo ''.CBSBR;
echo '';
// 書き込み完了
} elseif ($mode == 'exe') {
echo $CON_SHOWHTML->css('投稿が完了しました。', 'font-size:x-small;').BR;
if($status_open == "0"){
echo BR;
echo $CLS_COM->fontColor('サポートセンターでチェック後に掲載されます。', '','x-small');
}
echo CBSBR;
// 確認画面
} elseif ($mode == 'chk') {
if ($eid) {
echo '以下の内容で編集します。よろしいですか?'.CBSBR;
} else {
echo $CLS_COM->fontColor('投稿内容確認', $col_red,"x-small").CBSBR;
}
echo $CLS_COM->makeFormStart('diary_reg');
echo '';
echo '';
foreach ($odata[1] as $key=>$val) {
echo '';
}
echo $CLS_COM->fontColor('■タイトル', $col_brown,"x-small").CBSBR;
echo $CLS_COM->fontColor($odata[0]['title'], '',"x-small").CBSBR;
echo BR;
echo $CLS_COM->fontColor('■本文', $col_brown,"x-small").CBSBR;
echo $CLS_COM->fontColor($odata[0]['body'], '',"x-small").CBSBR;
echo BR;
echo $CLS_COM->fontColor('■公開設定', $col_brown,"x-small").CBSBR."\n";
echo ''."\n";
echo BR;
echo BR;
echo $CLS_COM->startBlock('text-align:center');
echo '';
echo '';
echo $CLS_COM->endBlock();
echo $CLS_COM->startBlock('text-align:center');
echo $CLS_COM->makeFormStart('diary_reg');
echo '';
echo '';
foreach ($odata[1] as $key=>$val) {
echo '';
}
echo '';
echo '';
echo $CLS_COM->endBlock();
// フォーム
} else {
echo '';
echo $CON_SHOWHTML->css('掲載基準', 'font-size:x-small;color:'.$col_red).'';
echo $CON_SHOWHTML->css('を読んで同意いただいてから投稿ください', 'font-size:x-small;').BR;
echo BR;
echo $CLS_COM->makeFormStart('diary_reg');
echo '';
echo '';
echo $CLS_COM->fontColor('タイトル', "","x-small").CBSBR;
echo $CLS_COM->fontColor('※全角20文字以内', "","x-small").CBSBR;
echo ''.CBSBR;
echo $CLS_COM->fontColor('本文', "","x-small").CBSBR;
echo $CLS_COM->fontColor('※全角500文字以内', "","x-small").CBSBR;
echo ''.CBSBR;
echo CBSBR;
echo $CLS_COM->startBlock('text-align:center');
echo ''.CBSBR;
echo $CLS_COM->endBlock();
echo $CLS_COM->fontColor('※題名・本文は絵文字入力が可能です。', $col_red,"x-small").CBSBR;
echo $CLS_COM->fontColor('※一部絵文字が利用できないブラウザもあります。', $col_red,"x-small").CBSBR;
echo '';
if ($eid) {
echo CBSBR;
echo $CLS_COM->fontColor('記事を削除する', "","x-small").CBSBR;
echo $CLS_COM->fontColor('×', $col_icon,"x-small");
echo $CLS_COM->makeLink('削除', 'diary_del&eid='.$eid, 'font-size:x-small;color:'.$col_red).CBSBR;
}
}
//お店を探す
include("./jb/common/menushop.view.inc");
if($CON_CLIENT->getHtmlType() == "XHTML"){
echo $CON_SHOWHTML->startBlock('text-align:center;background-color:'.$col_shortcut_bg1);
echo $CON_SHOWHTML->css($CON_EMOJI->get("secret"),'font-size:x-small;color:'.$col_icon);
echo $CON_SHOWHTML->css('ショートカット','font-size:x-small;').BR;
echo $CON_SHOWHTML->endBlock();
echo $CON_SHOWHTML->startBlock('background-color:'.$col_shortcut_bg2);
if(isset($IS_MEM) && $IS_MEM){
echo $CON_SHOWHTML->css($CON_EMOJI->get("9")."マイページへ",'font-size:x-small;').BR;
}
echo $CON_SHOWHTML->css($CON_EMOJI->get("0").CONTENT_TITLE."TOPへ",'font-size:x-small;').BR;
echo $CON_SHOWHTML->endBlock();
}else{
echo $CON_SHOWHTML->startBlock('text-align:center;');
echo $CON_SHOWHTML->css($CON_EMOJI->get("secret"),'font-size:x-small;color:'.$col_icon);
echo $CON_SHOWHTML->css('ショートカット','font-size:x-small;').BR;
echo $CON_SHOWHTML->endBlock();
if(isset($IS_MEM) && $IS_MEM){
echo $CON_SHOWHTML->css($CON_EMOJI->get("9")."マイページへ",'font-size:x-small;').BR;
}
echo $CON_SHOWHTML->css($CON_EMOJI->get("0").CONTENT_TITLE."TOPへ",'font-size:x-small;').BR;
}
// レコメンド
include './jb/common/rec_info.view.inc';
ラブホナビTOPへ戻る サイトマップへ![]() |
echo ''."\n";
echo ' '.BR;
// エラー
if ($mode == 'error') {
foreach ($err as $val) {
echo $CLS_COM->fontColor('※'.$val, $CBS_BASE_COLOR3).CBSBR;
}
echo $CLS_COM->makeFormStart('diary_reg');
echo '';
echo '';
foreach ($odata as $key=>$val) {
echo '';
}
echo ''.CBSBR;
echo '';
// 書き込み完了
} elseif ($mode == 'exe') {
echo $CON_SHOWHTML->css('投稿が完了しました。', 'font-size:x-small;').BR;
if($status_open == "0"){
echo BR;
echo $CLS_COM->fontColor('サポートセンターでチェック後に掲載されます。', '','x-small');
}
echo CBSBR;
// 確認画面
} elseif ($mode == 'chk') {
if ($eid) {
echo '以下の内容で編集します。よろしいですか?'.CBSBR;
} else {
echo $CLS_COM->fontColor('投稿内容確認', $col_red,"x-small").CBSBR;
}
echo $CLS_COM->makeFormStart('diary_reg');
echo '';
echo '';
foreach ($odata[1] as $key=>$val) {
echo '';
}
echo $CLS_COM->fontColor('■タイトル', $col_brown,"x-small").CBSBR;
echo $CLS_COM->fontColor($odata[0]['title'], '',"x-small").CBSBR;
echo BR;
echo $CLS_COM->fontColor('■本文', $col_brown,"x-small").CBSBR;
echo $CLS_COM->fontColor($odata[0]['body'], '',"x-small").CBSBR;
echo BR;
echo $CLS_COM->fontColor('■公開設定', $col_brown,"x-small").CBSBR."\n";
echo ''."\n";
echo BR;
echo BR;
echo $CLS_COM->startBlock('text-align:center');
echo '';
echo '';
echo $CLS_COM->endBlock();
echo $CLS_COM->startBlock('text-align:center');
echo $CLS_COM->makeFormStart('diary_reg');
echo '';
echo '';
foreach ($odata[1] as $key=>$val) {
echo '';
}
echo '';
echo '';
echo $CLS_COM->endBlock();
// フォーム
} else {
echo '';
echo $CON_SHOWHTML->css('掲載基準', 'font-size:x-small;color:'.$col_red).'';
echo $CON_SHOWHTML->css('を読んで同意いただいてから投稿ください', 'font-size:x-small;').BR;
echo BR;
echo $CLS_COM->makeFormStart('diary_reg');
echo '';
echo '';
echo $CLS_COM->fontColor('タイトル', "","x-small").CBSBR;
echo $CLS_COM->fontColor('※全角20文字以内', "","x-small").CBSBR;
echo ''.CBSBR;
echo $CLS_COM->fontColor('本文', "","x-small").CBSBR;
echo $CLS_COM->fontColor('※全角500文字以内', "","x-small").CBSBR;
echo ''.CBSBR;
echo CBSBR;
echo $CLS_COM->startBlock('text-align:center');
echo ''.CBSBR;
echo $CLS_COM->endBlock();
echo $CLS_COM->fontColor('※題名・本文は絵文字入力が可能です。', $col_red,"x-small").CBSBR;
echo $CLS_COM->fontColor('※一部絵文字が利用できないブラウザもあります。', $col_red,"x-small").CBSBR;
echo '';
if ($eid) {
echo CBSBR;
echo $CLS_COM->fontColor('記事を削除する', "","x-small").CBSBR;
echo $CLS_COM->fontColor('×', $col_icon,"x-small");
echo $CLS_COM->makeLink('削除', 'diary_del&eid='.$eid, 'font-size:x-small;color:'.$col_red).CBSBR;
}
}
//お店を探す
include("./jb/common/menushop.view.inc");
if($CON_CLIENT->getHtmlType() == "XHTML"){
echo $CON_SHOWHTML->startBlock('text-align:center;background-color:'.$col_shortcut_bg1);
echo $CON_SHOWHTML->css($CON_EMOJI->get("secret"),'font-size:x-small;color:'.$col_icon);
echo $CON_SHOWHTML->css('ショートカット','font-size:x-small;').BR;
echo $CON_SHOWHTML->endBlock();
echo $CON_SHOWHTML->startBlock('background-color:'.$col_shortcut_bg2);
if(isset($IS_MEM) && $IS_MEM){
echo $CON_SHOWHTML->css($CON_EMOJI->get("9")."マイページへ",'font-size:x-small;').BR;
}
echo $CON_SHOWHTML->css($CON_EMOJI->get("0").CONTENT_TITLE."TOPへ",'font-size:x-small;').BR;
echo $CON_SHOWHTML->endBlock();
}else{
echo $CON_SHOWHTML->startBlock('text-align:center;');
echo $CON_SHOWHTML->css($CON_EMOJI->get("secret"),'font-size:x-small;color:'.$col_icon);
echo $CON_SHOWHTML->css('ショートカット','font-size:x-small;').BR;
echo $CON_SHOWHTML->endBlock();
if(isset($IS_MEM) && $IS_MEM){
echo $CON_SHOWHTML->css($CON_EMOJI->get("9")."マイページへ",'font-size:x-small;').BR;
}
echo $CON_SHOWHTML->css($CON_EMOJI->get("0").CONTENT_TITLE."TOPへ",'font-size:x-small;').BR;
}
// レコメンド
include './jb/common/rec_info.view.inc';
ラブホナビTOPへ戻る サイトマップへ![]() |