상품코드) $annual_items = [ '빅5' => '1744799759', '일반' => '1744817586', ]; // 퍼스트가든 관리페이지 adm 페이지로 전환 // /adm/admin.menuXXX.php 파일이 없는 경우, 새 메뉴 그룹이 없기 때문에, 강제로 메뉴파일 배열을 추가 hook (gnuwiz) if(! function_exists('add_admin_amenu_update') ) { add_replace('admin_amenu', 'add_admin_amenu_update', 1, 1); function add_admin_amenu_update($amenu) { $amenu['998'] = ''; return $amenu; } } // 관리자메뉴에 커스텀 메뉴를 동적으로 추가 hook (gnuwiz) if(! function_exists('add_admin_menu_update') ) { add_replace('admin_menu', 'add_admin_menu_update', 1, 1); function add_admin_menu_update($menu) { $menu['menu998'] = array(); array_push($menu['menu998'], array('998000', '퍼스트가든', G5_ADMIN_URL . '/fg_admin/bakery/bakery_stock.php', 'firstgarden'), array('998010', '베이커리 재고관리', G5_ADMIN_URL . '/fg_admin/bakery/bakery_stock_adm.php', 'firstgarden'), array('998020', '베이커리 목록관리', G5_ADMIN_URL . '/fg_admin/bakery/bakery_product_list.php', 'firstgarden'), array('998210', 'VIP 명단관리', G5_ADMIN_URL . '/fg_admin/vip/vip_list.php', 'firstgarden'), array('998220', 'VIP 구분관리', G5_ADMIN_URL . '/fg_admin/vip/vip_list_category.php', 'firstgarden'), array('998310', '연간회원 명단관리', G5_ADMIN_URL . '/fg_admin/annual_member/annual_member_list.php', 'firstgarden'), array('998320', '연간회원 구분관리', G5_ADMIN_URL . '/fg_admin/annual_member/annual_member_category.php', 'firstgarden'), array('998411', '매표소주문확인', G5_ADMIN_URL.'/fg_admin/orderlist_ticket.php', 'firstgarden'), array('998421', '혜윰주문확인', G5_ADMIN_URL.'/fg_admin/orderlist_hy.php', 'firstgarden'), array('998431', 'B2B주문확인', G5_ADMIN_URL.'/fg_admin/orderlist_b2b.php', 'firstgarden'), array('998412', '관리자주문확인', G5_ADMIN_URL . '/fg_admin/orderlist_admin.php', 'firstgarden'), array('998413', '관지라월정산용', G5_ADMIN_URL . '/fg_admin/orderlist_admin_sum.php', 'firstgarden'), ); return $menu; } } // 새 글 작성 시 알림 // add_event('write_update_after', 'curl_tele_sent' G5_HOOK_DEFAULT_PRIORITY, 5); // 텔레그램 메시지 보내기 // 사용법 curl_tele_sent(메세지); if(! function_exists('curl_tele_sent')) { function curl_tele_sent($text){ if(!$text){ exit("No Data!!"); } // end $ch = curl_init(); $api_code = ""; // 900~ $chat_id = ""; // 822~~ $curl_url = "https://api.telegram.org/bot{$api_code}/sendMessage?chat_id={$chat_id}&text={$text}"; @curl_setopt($ch, CURLOPT_URL, $curl_url); @curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); @curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); @curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); $exec = curl_exec($ch); } // curl_tele_sent end } // 주문이 실행되는 경우 연간회원권 주문인지 확인하고, 연간회원권이라면 회원정보 입력 페이지로 이동시킴 if (!function_exists('add_annual_member')) { function add_annual_member($od_id) { global $g5, $annual_items; // 상품코드 배열만 추출 $annu_item_code = array_values($annual_items); $sql = "SELECT it_id, ct_qty FROM {$g5['g5_shop_cart_table']} WHERE od_id = '{$od_id}'"; $result = sql_query($sql); $total_qty = 0; while ($row = sql_fetch_array($result)) { if (in_array($row['it_id'], $annu_item_code)) { $total_qty += (int)$row['ct_qty']; } } if ($total_qty > 0) { send_annual_member_notice($od_id, $total_qty); } } add_event('fg_orderformupdate_after', 'add_annual_member', G5_HOOK_DEFAULT_PRIORITY, 1); } // SMS 발송 function send_annual_member_notice($od_id, $qty) { global $g5; $od = sql_fetch("SELECT od_name, od_hp, od_email FROM {$g5['g5_shop_order_table']} WHERE od_id = '{$od_id}'"); $link = G5_URL . "/manager/annu_member_insert.php?od_id={$od_id}"; $message = "주문하신 연간회원권 {$qty}건에 대한 회원정보 입력이 필요합니다.\n" . "아래 링크를 통해 회원 정보를 입력해주세요:\n{$link}"; // SMS 발송 (예시) annu_send_sms(preg_replace('/[^0-9]/', '', $od['od_hp']), $message); // 메일 발송 (예시) /* $subject = "연간회원권 회원정보 입력 안내"; $body = "안녕하세요, {$od['od_name']}님.\n\n" . "주문하신 연간회원권 {$qty}건에 대한 회원정보 입력이 필요합니다.\n" . "아래 링크를 클릭하여 입력해주세요.\n\n" . "{$link}\n\n감사합니다."; send_mail($od['od_email'], $subject, $body); */ } function annu_send_sms($phone, $message) { global $config, $default, $g5; if (!$config['cf_sms_use'] || !$phone || !$message) { return false; } $recv_number = preg_replace("/[^0-9]/", "", $phone); $send_number = preg_replace("/[^0-9]/", "", $default['de_admin_company_tel']); if (!$recv_number) { return false; } $sms_messages = [ ['recv' => $recv_number, 'send' => $send_number, 'cont' => $message] ]; $sms_count = 1; if ($sms_count > 0) { if ($config['cf_sms_type'] == 'LMS') { include_once(G5_LIB_PATH . '/icode.lms.lib.php'); $port_setting = get_icode_port_type($config['cf_icode_id'], $config['cf_icode_pw']); if ($port_setting !== false) { $SMS = new LMS; $SMS->SMS_con($config['cf_icode_server_ip'], $config['cf_icode_id'], $config['cf_icode_pw'], $port_setting); foreach ($sms_messages as $sms) { $strDest = [$sms['recv']]; $strCallBack = $sms['send']; $strCaller = iconv_euckr(trim($default['de_admin_company_name'])); $strSubject = ''; $strURL = ''; $strData = iconv_euckr($sms['cont']); $strDate = ''; $nCount = count($strDest); $SMS->Add($strDest, $strCallBack, $strCaller, $strSubject, $strURL, $strData, $strDate, $nCount); $SMS->Send(); $SMS->Init(); } return true; } } else { include_once(G5_LIB_PATH . '/icode.sms.lib.php'); $SMS = new SMS; $SMS->SMS_con($config['cf_icode_server_ip'], $config['cf_icode_id'], $config['cf_icode_pw'], $config['cf_icode_server_port']); foreach ($sms_messages as $sms) { $recv_number = $sms['recv']; $send_number = $sms['send']; $sms_content = iconv_euckr($sms['cont']); $SMS->Add($recv_number, $send_number, $config['cf_icode_id'], $sms_content, ""); } $SMS->Send(); $SMS->Init(); return true; } } return false; } // 전화번호에 하이픈 추가 function add_hyphen($tel){ $tel = preg_replace("/[^0-9]*/s","",$tel); //숫자이외 제거 if (substr($tel,0,2) =='02'){ return preg_replace("/([0-9]{2})([0-9]{3,4})([0-9]{4})$/","\\1-\\2-\\3", $tel); } else if(substr($tel,0,2) =='8' && substr($tel,0,2) =='15' || substr($tel,0,2) =='16'|| substr($tel,0,2) =='18' ) { return preg_replace("/([0-9]{4})([0-9]{4})$/","\\1-\\2",$tel); // 지능망 번호이면 } else { return preg_replace("/([0-9]{3})([0-9]{3,4})([0-9]{4})$/","\\1-\\2-\\3" ,$tel); //핸드폰번호만 이용한다면 이것만있어도됨 } }