未実装:".$msg."
"; } // メッセージゴミ箱ステータス(type_trash_sender,type_trash_receiver) define('MESSAGE_TRASH_NONE', 0); // 通常 define('MESSAGE_TRASH_TRASHED', 1); // ゴミ箱 define('MESSAGE_TRASH_DELETED', 2); // 削除済み // 現在のページより前に表示するリンクの数 define ('NUMLINK_BEFORE' , 2); // 現在のページより後ろに表示するリンクの数 define ('NUMLINK_BACK' , 2); define('COMMENT_LIMIT_BYTES' , 30*2 ); // コメント一覧の文字数(バイト数なので文字数は×2) define('COMMENT_NEW_PASTDAY' , 7 ); // 新着コメントの検索範囲過去日数 define('COMMENT_HISTORY_PASTDAY' , 14 ); // コメント履歴の検索範囲過去日数 define('BLACK_LIST_MAX' , 12 ); // ブラックリストの登録数 define('BLACK_URL' ,SYSTEM_URL."error/errorAccess.php" ); // ブラックの行き先URL define ('LEVEL_DIARY_FRIEND' , 2); define ('LEVEL_DIARY_ALL' , 0); // フォト公開レベル(level_display) define('PHOTOCATEGORY_DISPLAY_DENY' , 0); // 非公開 define('PHOTOCATEGORY_DISPLAY_WEB' , 1); // WEBに公開 define('PHOTOCATEGORY_DISPLAY_SITE' , 2); // 本システム内に公開 define('PHOTOCATEGORY_DISPLAY_FRIEND', 3); // 友人のみ公開 // システムからのメール文言ID(tbl_master_mailsentence.type_sentence) define('SYSMAIL_NORMAL_SIGNUP' , 1); // 一般ユーザ仮登録メール define('SYSMAIL_NORMAL_REGIST' , 2); // 一般ユーザ本登録メール define('SYSMAIL_INVITATION' , 6); // 招待メール define('SYSMAIL_PASSWORD' , 7); // パスワード再送メール define('SYSMAIL_COMMUNITYINTRO' , 8); // コミュニティ紹介メール define('SYSMAIL_USERSCHEDULE' , 11); // ユーザスケジュール通知メール define('SYSMAIL_COMMUNITYAPPLY' , 13); // コミュニティ参加申請通知メール define('SYSMAIL_COMMUNITYPERMIT' , 14); // コミュニティ参加許可通知メール define('SYSMAIL_DIARYCOMMENT' , 15); // 日記コメント通知メール define('SYSMAIL_INTROCOMMENT' , 16); // 紹介文書き込み通知メール define('SYSMAIL_COMMUNITYJOIN' , 17); // コミュニティ参加通知メール define('SYSMAIL_USERMESSAGE' , 18); // メッセージ受信通知メール define('SYSMAIL_FRIENDPERMIT' , 19); // 友達申請通知メール define('SYSMAIL_HISTORYMEMORIAL' , 20); // 足あとキリバン通知メール define('SYSMAIL_COMMUNITYTRANSFER' , 21); // コミュニティ譲渡通知メール define('SYSMAIL_USERBIRTHDAY' , 22); // 誕生日おめでとうメール define('SYSMAIL_FRIENDBIRTHDAY' , 23); // 友達の誕生日通知メール define('SYSMAIL_PHOTOCOMMENT' , 24); // フォトコメント通知メール define('SYSMAIL_CHANGE_MAILADDR' , 25); // メールアドレス変更通知メール define('TYPE_BANNER_AMAZON' , 1); define('TYPE_BANNER_KAKAKUCOM' , 2); ?>setMethod(HTTP_REQUEST_METHOD_HEAD); $req->sendRequest(); $r_code = $req->getResponseCode(); if ( $r_code == 200 ) { return( true ); } else { return( false ); } } } //------------------------------------------------------------- // 関数名: //------------------------------------------------------------- function getImageZoomUrl( $type,$number,$filename,$size ) { $imgpath = IMG_UPLOAD_PATH; $imgurl = IMG_UPLOAD_URL; $loadpath = $imgpath.$type.'/'.$number.'/'.$filename; $urlpath = $imgurl.$type .'/'.$number.'/'; $path_parts = pathinfo( $loadpath ); $dirname = $path_parts['dirname']; $basename = $path_parts['basename']; $extension = $path_parts['extension']; // サイズ変換した画像ファイルがあるかどうかチェックする。 $nameParts = explode( ".".$extension , $basename ); $namePartsPath = explode( ".".$extension , $loadpath ); list($hard,$ez_flag,$cac,$mheight,$mwidth,$mcolor,$mime) = hardware(); if( $hard !="pc" && $size > 240 ) $size = 230; if( $hard !="pc" ) { $extension = "jpg"; } $namePath = $namePartsPath[0]."_".$size.".".$extension; $nameUrl = $urlpath.$nameParts[0]."_".$size.".".$extension; // 元ファイルが無きゃ無くなったよを返す if(!@file_exists(PATH_OMC.$filename) && !@file_exists($loadpath) ) { return($imgurl.$type.'/ng/ng'.$type.'_image_'.$size.'.png'); } // ファイルが存在しなければ作る if(!@file_exists($namePath) || ( @filemtime($namePath) <= @filemtime($loadpath) )){ return(PUBLIC_URL."etc/image_zoom.php?type=".$type."&im=".$number."&name=".$filename."&size=".$size); }else{ return($nameUrl."?dummy=".filemtime($namePath)); } } //------------------------------------------------------------- // 関数名: //------------------------------------------------------------- function explodeStream( $target ) { $work = explode(",", $target); if( $work[0] == "" ) { unset($work[0]); } if( $work[count($work)] == "" ) { unset($work[count($work)]); } if( $work[count($work)-1] == "" ) { unset($work[count($work)-1]); } $work = array_values($work); return($work); } //------------------------------------------------------------- // 関数名:リダイレクト一括管理 //------------------------------------------------------------- function headerPlus( $url ) { $paramM = new httpParamManager(); $agent=$_SERVER['HTTP_USER_AGENT']; if(!strstr($agent,"Mozilla") && !strstr($agent,"Opera")){ if( !mb_ereg( 'mbcheckkey', $url ) ) { if( mb_ereg( '\?', $url ) ) $url.="&mbcheckkey=".$paramM->getHttpParam("mbcheckkey"); else $url.="?mbcheckkey=".$paramM->getHttpParam("mbcheckkey"); } } if( PARAM_CLYPT==1 ) { $work = split("\?",$url); if( $work[1] != NULL ) { $crypt_param = bin2hex( crypt_md5($work[1],"param") ); $work[0] = mbereg_replace("\.php","",$work[0]); setSessionData("cript_param",$crypt_param); $url = $work[0].",".time(); // $url = $work[0].",".$crypt_param; // $url = $work[0]."?p=".$crypt_param; } else { $work[0] = mbereg_replace("\.php","",$work[0]); $url = $work[0].",".time(); } } if(!strstr($agent,"Mozilla") && !strstr($agent,"Opera")){ if( !mb_ereg( 'PHPSESSID', $url ) ) { if( mb_ereg( '\?', $url ) ) $url.="&PPP=333&PHPSESSID=".session_id(); else $url.="?PPP=333&PHPSESSID=".session_id(); } } header("Location:".$url); die; } //------------------------------------------------------------- // 関数名:画面表示チェック // IN:画面表示レベル MEMBER_LEVEL_ALL :制限無し // MEMBER_LEVEL_MEMBER :会員のみ // MEMBER_LEVEL_COMJOIN :コミュニティ会員のみ) // MEMBER_LEVEL_SELF :ログインユーザ自身のみ // 履歴ログ用画面機能番号 // 訪問先ユーザID(無ければNULL) // 訪問先コミュニティーID(無ければNULL) // 訪問先リソースID(無ければNULL) // ランキングタイプ(ランキング対象の画面で無ければNULL) // OUT:ポータルログイン管理クラスのインスタンス // 概要:今から表示したい画面について、表示可能かどうかチェックする。 //------------------------------------------------------------- function checkDisp( $levelDisp, $numDispFunc, $idHostMember, $idHostCommunity, $idHostResource, $typeRanking, $isSSL=false){ // 携帯からのアクセスははじく $agent=$_SERVER['HTTP_USER_AGENT']; /* if(!strstr($agent,"Mozilla") && !strstr($agent,"Opera")){ headerPlus(SYSTEM_URL."error/errorAgent.php"); } */ $memberM = new dbMemberManager(); $paramM = new httpParamManager(); $httphost=$_SERVER[HTTP_HOST]; $requesturi=$_SERVER[REQUEST_URI]; $uri=$httphost.$requesturi; $port=$_SERVER["SERVER_PORT"]; if($idHostMember > 0){ // 存在しないユーザかどうかチェック $memberData = $memberM->getMemberData($idHostMember, NULL); // 存在しなければリダイレクト if($memberData == NULL || $memberData[flgvalid_status] != MEMBER_STATUS_VALID){ headerPlus(SYSTEM_URL."error/errorNoContents.php"); } } if(SITE_MODE == 1){ // SSL対応 if($isSSL == false && $port!=80){ // SSL対応ページでないのに443番ポートで接続された場合httpでリダイレクト //echo "SSL対応ページでないのに443番ポートで接続された場合httpでリダイレクト ",$requesturi,"
"; headerPlus("http://$uri"); } else if ($isSSL == true && $port==80 ){ //echo "SSL対応ページなのに80番ポートで接続された場合httpsでリダイレクト ",$requesturi,"
"; headerPlus("https://$uri"); } } $loginM = new loginManager(); $id_login = $loginM->getLoginUserData(); // ALLじゃないのにログインしていなければTOPにリダイレクト if($id_login == NULL && $levelDisp != MEMBER_LEVEL_ALL){ headerPlus(SYSTEM_URL."error/errorNoLogin.php"); } /* if( $numDispFunc != "top" ) { // 携帯だったら、セッションとキーが一致するかチェック if(!strstr($agent,"Mozilla") && !strstr($agent,"Opera")){ $checkKey = $paramM->getHttpParam("mbcheckkey"); if( $id_login > 0 && $id_login != $checkKey ) { $loginM->logout($loginM->getLoginUserData("str_mailaddr"),$loginM->getLoginUserData("str_passwd")); headerPlus(SYSTEM_URL); } } } if( !$idHostCommunity && $id_login && $idHostMember ){ // ブラックリストのチェック //echo "idlogin:".$id_login."/idHost:".$idHostMember."
"; if( checkBlackList($id_login, $idHostMember)==ERR_NUMBER ){ headerPlus(BLACK_URL); } } $pattern = SYSTEM_MANAGE_URL; $target = $_SERVER[HTTP_REFERER]; if(strstr( $target, $pattern ) != FALSE ){ // システム管理者の場合、今から見るコンテンツのオーナーとしてログインさせる if($idHostMember > 0){ $memberData = $memberM->getMemberData($idHostMember); $loginM->login($memberData[str_mailaddr], $memberData[str_passwd]); } else if($idHostCommunity > 0){ $communityData = $communityM->getCommunityDataWithCreateMember($idHostCommunity); $memberData = $memberM->getMemberData($communityData[id_member]); $loginM->login($memberData[str_mailaddr], $memberData[str_passwd]); } setSessionData("sess_systemAdminType","systemadmin"); } if(getSessionData("sess_systemAdminType") == "systemadmin"){ if($idHostMember > 0){ $memberData = $memberM->getMemberData($idHostMember); $loginM->login($memberData[str_mailaddr], $memberData[str_passwd]); if($id_login != $idHostMember){ headerPlus($_SERVER[REQUEST_URI]); } } else if($idHostCommunity > 0){ $communityData = $communityM->getCommunityDataWithCreateMember($idHostCommunity); $memberData = $memberM->getMemberData($communityData[id_member]); $loginM->login($memberData[str_mailaddr], $memberData[str_passwd]); } // ポータルログイン管理クラスのインスタンスを作成する return( $loginM ); } */ // 【ログイン状態取得】メソッドにてログインしているかチェック if( $typeCommunity != COMMUNITYTYPE_PUBLIC && $levelDisp != MEMBER_LEVEL_ALL ) { // echo "ログインしているかチェック[".$loginM->isNowLogin()."]
"; if( !$loginM->isNowLogin() ){ headerPlus(SYSTEM_URL."error/errorNoLogin.php"); // echo "errorNoLogin.php
"; } } // 引数の画面表示レベルがMEMBER_LEVEL_SELFの場合 if( $levelDisp == MEMBER_LEVEL_SELF ){ // 訪問先がログインユーザのIDと異なる場合はエラー if( $idHostMember != $loginM->getLoginUserData() ) { headerPlus(SYSTEM_URL."error/errorNoContents.php"); } } // 【履歴ログ書き込み】メソッドを // ログインしているユーザのID、訪問先のコミュニティーID,訪問先のユーザID、穂運先のリソースのIDを引数にコールする。 $isLoginUserNeedHistory = $loginM->getLoginUserData("flgvalid_history"); // 足あと機能を必要としている人のみ作成する $isNeedLog = false; if($idHostMember > 0){ // 他人のページなら両方が足あと機能を使う場合のみ履歴を残す if($memberData[flgvalid_history] == 1 && $isLoginUserNeedHistory == 1){ $isNeedLog = true; } }else{ // コミュニティなどはログインユーザが足あと機能を使いたい場合のみ履歴を残す if($isLoginUserNeedHistory == 1){ $isNeedLog = true; } } if($isNeedLog){ if($id_login > 0 && $idHostMember > 0){ $logM = new dbLogManager(); $logM->createHistoryLog($idHostMember, $numDispFunc, $id_login); } } // 最終ログイン時刻をtime_loginに入れる if($id_login > 0){ $dataArray = NULL; $dataArray[time_login] = date("Y-m-d H:i:s"); $memberM->editMember($id_login, $dataArray,NULL); } // ポータルログイン管理クラスのインスタンスを作成する return( $loginM ); } //------------------------------------------------------------- // 関数名:管理権限チェック // IN:訪問先ユーザID(無ければNULL) // 訪問先コミュニティーID(無ければNULL) // OUT:操作権限の有無(true:権限有り,false:権限無し) // 概要:今から表示したい画面について、操作権限の有無をチェックする。 //------------------------------------------------------------- function checkAuth( $idHostMember, $idHostCommunity ){ $admin = false; /* $loginM = new loginManager(); $communityM = new dbCommunityManager(); $id_login = $loginM->getLoginUserData(); // ユーザの場合 if( $idHostMember > 0 && $id_login == $idHostMember ) { $admin = true; } // コミュニティーの場合 else if( $idHostCommunity > 0 ) { if( $communityM->isMemberAuth($idHostCommunity,$id_login) ) { $admin = true; } } */ // コミュニティーの場合 if( $idHostCommunity > 0 ) { $communityM = new dbCommunityManager(); if( $communityM->isMemberAuth($idHostCommunity,$id_login) ) { $admin = true; } } return( $admin ); } //------------------------------------------------------------- // 関数名:携帯固有番号取得 // IN:なし // OUT:携帯固有 // 概要:携帯固有を取得する。 //------------------------------------------------------------- function getMbNumber() { // print_r($_SERVER); //echo("HTTP_X_UP_SUBNO[". $_SERVER[HTTP_X_UP_SUBNO] ."]
"); mb_regex_encoding("EUC-JP"); // AUだったら if( $_SERVER[HTTP_X_UP_SUBNO] != NULL ) { $mbNumber = $_SERVER[HTTP_X_UP_SUBNO]; } // MOVAだったら if( $mbNumber == NULL ) { mb_eregi("/ser.*$",$_SERVER[HTTP_USER_AGENT],$regs); if( $regs[0] != NULL ) $mbNumber = $regs[0]; } // MOVAだったら if( $mbNumber == NULL ) { mb_eregi(";ser.*;",$_SERVER[HTTP_USER_AGENT],$regs); if( $regs[0] != NULL ) $mbNumber = $regs[0]; } // SOFTBANKだったら if( $mbNumber == NULL ) { //echo "HTTP_USER_AGENT:".$_SERVER[HTTP_USER_AGENT]."
"; mb_eregi("SN[\S]*\s",$_SERVER[HTTP_USER_AGENT],$regs); if( $regs[0] != NULL ) $mbNumber = $regs[0]; $mbNumber = trim($mbNumber); } // echo("mbNumber[".$mbNumber."]
"); return($mbNumber); } //------------------------------------------------------------- // 関数名:携帯用絵文字変換 // IN:変換対象のSmarty変数 // 変換する実データ // OUT:テンプレートの内容を出力 // 概要:テンプレートの内容を出力する。 //------------------------------------------------------------- function emoji_replace_mb($smartyData) { mb_language('ja'); mb_internal_encoding("SJIS"); mb_regex_encoding("SJIS"); $smartyData = mb_convert_encoding($smartyData, "SJIS", "EUC-JP"); require_once(PATH_SYSTEM.'lib/emj_lib/lib/mobile_class_7.php'); $emojiM = init_emj(); $emojiM->reqest_data_conv('r','','SJIS','SJIS'); $text_dec = $emojiM->emj_decode($smartyData,'', "SJIS", ''); $smartyData = mbereg_replace("\{emj.*?\}","",$text_dec[bin]); return($smartyData); /* mb_language('ja'); mb_internal_encoding('EUC-JP'); require_once(PATH_SYSTEM.'lib/emj_lib/lib/mobile_class_7.php'); $emojiM = init_emj(); $emojiM->reqest_data_conv('r','','EUC-JP','EUC-JP'); $smartyData = $emojiM->emj_encode($smartyData, "EUC-JP", 1, "EUC-JP"); $split_textarea = split(" $row) { // 最初にはvalue句は絶対無いので安心 if( $key == 0 ) { $check = $row; } else { $pos = mb_strpos($row,""); $work=" $row_i) { // 最初にはvalue句は絶対無いので安心 if( $key_i == 0 ) { $text_dec = $emojiM->emj_decode($row_i,'', "EUC-JP"); $ret_str.=$text_dec[web]; } else { $pos = mb_strpos($row_i,">"); $work_i[0]="emj_decode($work_i[1],'', "EUC-JP"); $ret_str.=$work_i[0].$text_dec[web]; } } } return($ret_str); */ } /** * 指定された文字列をShift-JISへ変換する。 * * @param unknown_type $value * @param unknown_type $smarty * @return Shift-JISへ変更した文字列 */ function SJIS_Encoding($smartyData) { return mb_convert_encoding($smartyData, "SJIS", "EUC-JP"); } //------------------------------------------------------------- // 関数名:formタグにhiddenの値を追加する // IN:なし // OUT:テンプレートの内容を出力 // 概要:テンプレートの内容を出力する。 //------------------------------------------------------------- function plusFormData($smartyData) { $pattern = '
'; if ( preg_match_all( "/".$pattern."/i", $smartyData, $match, PREG_SET_ORDER) ){ if( $match ) { foreach( $match as $key => $row) { $replace = $row[0].''; $smartyData = ereg_replace(quotemeta($row[0]),$replace,$smartyData); } } } return($smartyData); } //------------------------------------------------------------- // 関数名:携帯用ログインチェックキー付加 // IN:変換対象のSmarty変数 // 変換する実データ // OUT:テンプレートの内容を出力 // 概要:テンプレートの内容を出力する。 //------------------------------------------------------------- function addMobileKeyToURL($smartyData,$mbcheckkey) { $agent=$_SERVER['HTTP_USER_AGENT']; $paramM = new httpParamManager(); mb_regex_encoding("SJIS"); $pattern = '.*?'; if ( preg_match_all( "/".$pattern."/i", $smartyData, $match, PREG_SET_ORDER) ){ if( $match ) { foreach( $match as $key => $row) { $pattern_2 = '=(.*)\.php([^\s>]*)'; if( preg_match_all( "/".$pattern_2."/i", $row[0], $match_2, PREG_SET_ORDER) ) { $url = trim($match_2[0][0],'="\''); if(!strstr($agent,"Mozilla") && !strstr($agent,"Opera")){ if( !mb_ereg( 'mbcheckkey', $url ) ) { if( mb_ereg( '\?', $url ) ) $url.="&mbcheckkey=".$paramM->getHttpParam("mbcheckkey"); else $url.="?mbcheckkey=".$paramM->getHttpParam("mbcheckkey"); } } if( PARAM_CLYPT==1 ) { $work = split("\?",$url); if( $work[1] != NULL ) { $crypt_param = bin2hex( crypt_md5($work[1],"param") ); $work[0] = mbereg_replace("\.php","",$work[0]); $url = $work[0].",".$crypt_param; } else { $work[0] = mbereg_replace("\.php","",$work[0]); $url = $work[0].",".time(); } } if(!strstr($agent,"Mozilla") && !strstr($agent,"Opera")){ if( !mb_ereg( 'PHPSESSID', $url ) ) { if( mb_ereg( '\?', $url ) ) $url.="&PPP=333&PHPSESSID=".session_id(); else $url.="?PPP=333&PHPSESSID=".session_id(); } } $url='="'.$url.'"'; $replace = mbereg_replace(quotemeta($match_2[0][0]),$url,$row[0]); $smartyData = mbereg_replace(quotemeta($row[0]),$replace,$smartyData); } } } } $pattern = ''; if ( preg_match_all( "/".$pattern."/i", $smartyData, $match, PREG_SET_ORDER) ){ if( $match ) { foreach( $match as $key => $row) { $replace = $row[0]; if(!strstr($agent,"Mozilla") && !strstr($agent,"Opera")){ $replace = $replace.''; } $smartyData = ereg_replace(quotemeta($row[0]),$replace,$smartyData); } } } return($smartyData); } //------------------------------------------------------------- // 関数名:PC用絵文字変換 // IN:変換対象のSmarty変数 // 変換する実データ // OUT:テンプレートの内容を出力 // 概要:テンプレートの内容を出力する。 //------------------------------------------------------------- function emoji_replace_pc($smartyData) { mb_language('ja'); // mb_regex_encoding("EUC-JP"); mb_internal_encoding('EUC-JP'); require_once(PATH_SYSTEM.'lib/emj_lib/lib/mobile_class_7.php'); $emojiM = init_emj(); $emojiM->reqest_data_conv('r','','EUC-JP','EUC-JP'); $smartyData = $emojiM->emj_encode($smartyData, "EUC-JP", 1, "EUC-JP"); $split_textarea = split(" $row) { // 最初にはvalue句は絶対無いので安心 if( $key == 0 ) { $check = $row; } else { $pos = mb_strpos($row,""); $work=" $row_i) { // 最初にはvalue句は絶対無いので安心 if( $key_i == 0 ) { $text_dec = $emojiM->emj_decode($row_i,'', "EUC-JP", 1); $ret_str.=$text_dec[web]; } else { $pos = mb_strpos($row_i,">"); $work_i[0]="emj_decode($work_i[1],'', "EUC-JP"); $ret_str.=$work_i[0].$text_dec[web]; } } } return($ret_str); } /* //------------------------------------------------------------- // 関数名:最大ユーザ数を取得 // IN:なし // OUT:最大ユーザ数までの残り登録可能ユーザ数 // 概要:dbConfig.cfgの内容から最大ユーザ数を取得する。 //------------------------------------------------------------- function getEnableSignupMemberCount() { $maxMember = getSessionData("maxMember"); if( $maxMember == NULL ) { // 設定ファイルから接続情報を取得する。 $cfg = PATH_LIB."config/dbConfig.cfg"; $fp = fopen( $cfg , "r" ) ; $line = fgets( $fp ); $maxMember = decrypt_md5( hex2bin( trim( $line ) ) , "snsdemo" ) ; $line = fgets( $fp ); $user = decrypt_md5( hex2bin( trim( $line ) ) , "snsdemo" ) ; $line = fgets( $fp ); $passwd = decrypt_md5( hex2bin( trim( $line ) ) , "snsdemo" ) ; $line = fgets( $fp ); $dbname = decrypt_md5( hex2bin( trim( $line ) ) , "snsdemo" ) ; $line = fgets( $fp ); $maxMember = decrypt_md5( hex2bin( trim( $line ) ) , "snsdemo" ) ; setSessionData("db_host" ,$host); setSessionData("db_user" ,$user); setSessionData("db_passwd",$passwd); setSessionData("db_dbname",$dbname); setSessionData("maxMember",$maxMember); } $memberM = new dbMemberManager(); $count = $memberM->getSignupMemberCount(); return ($maxMember - $count); } */ //------------------------------------------------------------- // 関数名:WEBサービス元のバナータイプ取得 // IN:なし // OUT:最大ユーザ数までの残り登録可能ユーザ数 // 概要:WEBサービス元のバナータイプを取得する。 //------------------------------------------------------------- function getBannerType($url){ if(strstr($url, "amazon") != NULL){ return TYPE_BANNER_AMAZON; }else{ return TYPE_BANNER_KAKAKUCOM; } } //------------------------------------------------------------- // 関数名:リダイレクト // IN:管理画面トップページからの相対パス // OUT:なし // 概要:相対パスへリダイレクトする。 //------------------------------------------------------------- function redirect($relation_url = "") { headerPlus(SYSTEM_MANAGE_URL . $relation_url); } //------------------------------------------------------------- // 関数名:ログインチェック // IN:なし // OUT:なし // 概要:ログイン済みか確認し、していなければトップページへリダイレクトする。 //------------------------------------------------------------- function loggingOnOrRedirect() { $loginM = new sysLoginManager(); // ログイン確認 if (!$loginM->isNowLogin()) { // ログインしていないのでリダイレクト redirect(); exit(); } } //------------------------------------------------------------- // 関数名:権限チェック // IN:権限グループID // OUT:なし // 概要:権限グループについて確認し、グループに属していなければトップページへリダイレクトする。 //------------------------------------------------------------- function authorizedOrRedirect($staffGroupID) { $loginM = new sysLoginManager(); // 権限グループ確認 if (!$loginM->isAuthStaff($staffGroupID)) { // 権限グループに属してしていないのでリダイレクト redirect(); exit(); } } //------------------------------------------------------------- // 関数名:エラー発生時にADMINにメール通知する // IN:発生したエラーのSQL文 // OUT:なし // 概要:エラー発生時にADMINにメール通知する //------------------------------------------------------------- function errorSendToAdmin($sql){ $uri = $_SERVER[REQUEST_URI]; mb_internal_encoding("SJIS"); $strTitle = mb_convert_encoding("まぜのべSQLエラー発生", "SJIS", "EUC-JP"); $strTitle = mb_encode_mimeheader($strTitle,"SJIS","B","\n"); $mailBody = mb_convert_encoding("<不具合が発生したURL>\n", "SJIS", "EUC-JP").$uri."\n\n"; $mailBody .= mb_convert_encoding("<原因のSQL文>\n", "SJIS", "EUC-JP").$sql."\n"; $mimeHeader = getMimeHeadr(); // $check= mail("ohi@kyoto-souraku.com", $strTitle, $mailBody, $mimeHeader, " -f "."error".BOUNCE_MAILADDR); // $check= mail("katsuta@kyoto-souraku.com", $strTitle, $mailBody, $mimeHeader, " -f "."error".BOUNCE_MAILADDR); $check= mail("kakeo@kyoto-souraku.com", $strTitle, $mailBody, $mimeHeader, " -f "."error".BOUNCE_MAILADDR); $check= mail("wtlog@terranetz.com", $strTitle, $mailBody, $mimeHeader, " -f "."error".BOUNCE_MAILADDR); } //------------------------------------------------------------- // 関数名:日記RSS配信ファイル作成 // IN:ユーザID // OUT:なし // 概要:rss.xmlファイルを作成する //------------------------------------------------------------- function setRssFile($idMember){ if(is_numeric($idMember) == false) return; $smarty = new Smarty; $smarty->config_dir = './'; $smarty->cache_dir = './'; $smarty->compile_check = true; $smarty->template_dir = SMARTY_TEMPLATE_DIR."pc/rss/"; $smarty->compile_dir = SMARTY_DIR."smarty_compile_dir/"; $rssDir; $dispname; $memberM = new dbMemberManager(); $memberData = $memberM->getMemberData($idMember); $dispname = $memberData[str_dispname]; $rssDir = IMG_MEMBER_PATH.$idMember."/rss/"; // まず、日記の公開レベルがRSS配信OKでなければ削除 if($memberData[level_diarydisplay] != MEMBER_DIARY_DISPLAY_WEB){ // もしWEBに公開していなければRSSファイルは削除して終了 if( file_exists($rssDir) ) exec("rm -r -f ".$rssDir."*.*"); return; } if( !file_exists(IMG_MEMBER_PATH) ) { mkdir(IMG_MEMBER_PATH ,0777); chmod(IMG_MEMBER_PATH ,0777); } if( !file_exists(IMG_MEMBER_PATH.$idMember) ) { mkdir(IMG_MEMBER_PATH.$idMember ,0777); chmod(IMG_MEMBER_PATH.$idMember ,0777); } if( !file_exists($rssDir) ) { mkdir($rssDir ,0777); chmod($rssDir ,0777); } $rss1File = $rssDir."rss1.xml"; $rss2File = $rssDir."rss2.xml"; $atomFile = $rssDir."atom.xml"; $rss1Fp = fopen($rss1File, "w"); // RSS1.0対応 $rss2Fp = fopen($rss2File, "w"); // RSS2.0対応 $atomFp = fopen($atomFile, "w"); // atom0.3対応 $smarty->assign("rss_title" ,mb_convert_encoding(SYSTEM_NAME,"UTF-8","EUC-JP")); $smarty->assign("rss_link" ,SYSTEM_URL); $smarty->assign("rss_link_rss" ,$smarty->template_dir."rss1.tpl"); // 絵文字削除 mb_language('ja'); mb_internal_encoding('EUC-JP'); require_once(PATH_SYSTEM.'lib/emj_lib/lib/mobile_class_7.php'); $emoji_obj = init_emj(); $dispname = $emoji_obj->delete_emoji_code($dispname,'0','0','0','EUC-JP','1',"EUC-JP"); $smarty->assign("rss_creator" ,mb_convert_encoding($dispname,"UTF-8","EUC-JP")); $smarty->assign("rss_description" ,mb_convert_encoding(SYSTEM_TITLE_SNS,"UTF-8","EUC-JP")); // RSS1.0用の日付 $smarty->assign("rss1_dcDate" ,date('D, d M Y H:i:s +0900')); $smarty->assign("rss1_lastBuildDate" ,date('Y-m-d\TH:i:s\Z')); // RSS2.0用の日付 $smarty->assign("rss2_pubDate" ,date('D, d M Y H:i:s +0900')); // atom0.3用の日付 $smarty->assign("atom_pubDate" ,date('Y-m-d\TH:i:s\Z')); $diaryM = new dbDiaryManager($idMember); $diaryList = $diaryM->getDiaryListForRss($idMember); $f=fopen(PATH_LOG."make_rss.txt","w"); fputs($f, "make rss start\n"); if(count($diaryList) > 0){ foreach($diaryList as $key=>$value){ // まずHTMLタグをはずす $value[str_title]=strip_tags($value[str_title]); $value[str_body]=strip_tags($value[str_body]); // 絵文字削除 fputs($f, "--------------------------\n"); fputs($f, "変換前:"); fputs($f, "タイトル:".$value[str_title]."\n"); fputs($f, "本文:".$value[str_body]."\n"); $value[str_title] = $emoji_obj->delete_emoji_code($value[str_title],'0','0','0','EUC-JP','1',"EUC-JP"); $value[str_body] = $emoji_obj->delete_emoji_code($value[str_body],'0','0','0','EUC-JP','1',"EUC-JP"); fputs($f, "変換後:"); fputs($f, "タイトル:".$value[str_title]."\n"); fputs($f, "本文:".$value[str_body]."\n"); $dataArray[$key][title] = mb_convert_encoding($value[str_title],"UTF-8","EUC-JP"); $dataArray[$key][link] = SYSTEM_URL."diary/diaryComment.php?id=".$value[id_diary]; $dataArray[$key][cdata] = mb_convert_encoding($value[str_body] ,"UTF-8","EUC-JP"); $value[str_body] = str_replace("
", "", $value[str_body] ); $value[str_body] = mb_substr($value[str_body] ,0,30); $dataArray[$key][description] = mb_convert_encoding($value[str_body] ,"UTF-8","EUC-JP"); $workDate = strtotime($value[time_create]); // RSS1.0用 $dataArray[$key][rss1_pubDate] = date('D, d M Y H:i:s +0900', $workDate); // RSS2.0用 $dataArray[$key][rss2_pubDate] = date('D, d M Y H:i:s +0900', $workDate); // atom0.3用 $dataArray[$key][atom_pubDate] = date('Y-m-d\TH:i:s\Z', $workDate); fputs($f, "time_create:".$value[time_create]."=>"); fputs($f, "pubDate:".$dataArray[$key][pubDate]."\n"); $dataArray[$key][guid] = $value[id_diary]; } } fclose($f); $smarty->assign("dataArray",$dataArray); fputs($rss1Fp, $smarty->fetch($smarty->template_dir."rss1.tpl")); fputs($rss2Fp, $smarty->fetch($smarty->template_dir."rss2.tpl")); fputs($atomFp, $smarty->fetch($smarty->template_dir."atom.tpl")); fclose($rss1Fp); fclose($rss2Fp); fclose($atomFp); @chmod($rss1File,0777); @chmod($rss2File,0777); @chmod($atomFile,0777); } ?>
Fatal error: Call-time pass-by-reference has been removed in /var/www/cts/lib_cts_maze/lib/smartyManager.php on line 146