public function __construct() { $para_array = get_sys_para("WEIXINQY_CORPID,WEIXINQY_SECRET"); $weixinqy_corpid = $para_array['WEIXINQY_CORPID']; $weixinqy_secret = $para_array['WEIXINQY_SECRET']; if ($weixinqy_corpid == "" || $weixinqy_secret == "") { echo _("ERR: 系统未绑定微信企业账号"); exit; } $this->corpid = $weixinqy_corpid; $this->corpsecret = $weixinqy_secret; $this->getTokens(); $this->getDeptInfo(); include "weixinqy.config.php"; $this->_base_config = $WXQY_CONFIG; }
<?php include_once "inc/auth.inc.php"; include_once "inc/utility_all.php"; if ($_SERVER['REQUEST_METHOD'] == "POST" && $_POST['appId'] != "") { $appId = intval($_POST['appId']); set_sys_para(array("WEIXINQY_APP_SMS" => "{$appId}")); } $PARA_ARRAY = get_sys_para("WEIXINQY_APP_SMS"); $WEIXINQY_APP_SMS = $PARA_ARRAY['WEIXINQY_APP_SMS']; $HTML_PAGE_TITLE = _("应用设置 - 事务提醒"); $HTML_PAGE_BASE_STYLE = FALSE; include_once "inc/header.inc.php"; echo "<body>\r\n<link rel=\"stylesheet\" type=\"text/css\" href=\""; echo MYOA_STATIC_SERVER; echo "/static/js/bootstrap/css/bootstrap.css\">\r\n<link rel=\"stylesheet\" type=\"text/css\" href=\""; echo MYOA_STATIC_SERVER; echo "/static/modules/weixinqy/style.css\">\r\n<script type=\"text/javascript\" src=\""; echo MYOA_JS_SERVER; echo "/static/js/jquery-1.10.2/jquery.min.js"; echo $GZIP_POSTFIX; echo "\"></script>\r\n<script type=\"text/javascript\">\r\n\r\n</script>\r\n<div>\r\n <fieldset>\r\n <legend><h5>"; echo _("应用设置 - 事务提醒"); echo "</h5></legend>\r\n </fieldset>\r\n\r\n <form class=\"form-horizontal\" method=\"POST\" action=\"#\">\r\n <div class=\"control-group\">\r\n <label class=\"control-label\" for=\"inputEmail\">应用ID</label>\r\n <div class=\"controls\">\r\n <input type=\"text\" id=\"appId\" name=\"appId\" placeholder=\"应用ID\" value=\""; echo $WEIXINQY_APP_SMS; echo "\">\r\n </div>\r\n </div>\r\n\r\n <div class=\"control-group\">\r\n <div class=\"controls\">\r\n <button type=\"submit\" class=\"btn btn-primary\">"; echo _("确定"); echo "</button>\r\n </div>\r\n </div>\r\n </form>\r\n\r\n</div>\r\n</body>\r\n</html>";
<?php include_once "inc/conn.php"; include_once "inc/utility_all.php"; define("MSGCHECKTIME", "WEIXINQY_MSGCHECK_TIME"); $CUR_TIME = time(); $PARA_ARRAY = get_sys_para(MSGCHECKTIME, FALSE); $MSG_CHK_TIME = intval(trim($PARA_ARRAY[MSGCHECKTIME])); $BEGIN_TIME = $MSG_CHK_TIME <= 0 ? $CUR_TIME : $MSG_CHK_TIME; $query = "SELECT FROM_UID,TO_UID,CONTENT,SEND_TIME FROM MESSAGE where REMIND_FLAG='1' and MSG_TYPE='1' and\n\t\t\t FROM_UID!=0 and TO_UID!=0 and SEND_TIME>'{$BEGIN_TIME}' and SEND_TIME<='{$CUR_TIME}' order by TO_UID,FROM_UID,SEND_TIME asc"; $cursor = exequery(TD::conn(), $query); if (!$cursor) { echo "-ERR "; exit; } while ($ROW = mysql_fetch_array($cursor)) { $FROM_UID = $ROW['FROM_UID']; include_once "inc/utility_cache.php"; $FROM_USER_NAME = getuserinfobyuid($FROM_UID, "USER_NAME"); $TO_UID = $ROW['TO_UID']; $CONTENT = $ROW['CONTENT']; include_once "inc/itask/itask.php"; mobile_push_notification($TO_UID, $FROM_USER_NAME . _(":") . $CONTENT . _("【即时通讯离线消息】"), "msg"); } set_sys_para(array(MSGCHECKTIME => $CUR_TIME)); $CUR_TIME_FORMAT = date("Y-m-d H:i:s", $CUR_TIME); $qry = "UPDATE OFFICE_TASK SET LAST_EXEC='{$CUR_TIME_FORMAT}',EXEC_FLAG='1',EXEC_MSG='{$CUR_TIME_FORMAT}' WHERE TASK_CODE='inst_msg_offl_push'"; exequery(TD::conn(), $qry); echo "+OK";
$CONTENT_STRIP = strip_tags($CONTENT); $COMPRESS_CONTENT = bin2hex(gzcompress($CONTENT)); $CONTENT_SIZE = strlen($CONTENT); $CONTENT_SIZE1 = strlen($CONTENT_STRIP); $COMPRESS_CONTENT_SIZE = strlen($COMPRESS_CONTENT); if ($CONTENT_SIZE < $CONTENT_SIZE1 + $COMPRESS_CONTENT_SIZE) { $CONTENT_STRIP = mysql_escape_string($CONTENT); $COMPRESS_CONTENT = "''"; } else { $CONTENT_STRIP = mysql_escape_string($CONTENT_STRIP); $COMPRESS_CONTENT = "0x" . $COMPRESS_CONTENT; } if ($SEND_FLAG == "1") { $email_audit_flag = check_email_audit(3); if ($email_audit_flag) { $PARA_ARRAY = get_sys_para("EMAIL_FREE_AUDIT_MAN"); $EMAIL_FREE_AUDIT_MAN = $PARA_ARRAY['EMAIL_FREE_AUDIT_MAN']; if (!find_id($EMAIL_FREE_AUDIT_MAN, $_SESSION['LOGIN_USER_ID'])) { $SEND_FLAG = 2; } else { $SEND_FLAG = 1; } } $SUBJECT1 = $SUBJECT; $TO_ID2 = $TO_ID; $TO_ID_STR = $TO_ID . $COPY_TO_ID . $SECRET_TO_ID; $IS_WEBMAIL = td_trim($TO_ID_STR) == "" && $TO_WEBMAIL != "" ? "1" : "0"; if (td_trim($TO_ID_STR) == "" && $TO_WEBMAIL == "") { message(_("提示"), _("内外部收件人不能同时为空"), "", $BUTTON_BACK); exit; }
function mobile_push_notification($uid_sent, $content, $module, $options = NULL) { $org_content = $content; $PARA_ARRAY = get_sys_para("MOBILE_PUSH_OPTION,PCONLINE_MOBILE_PUSH", FALSE); while (list($PARA_NAME, $PARA_VALUE) = each(&$PARA_ARRAY)) { ${$PARA_NAME} = $PARA_VALUE; } if ($MOBILE_PUSH_OPTION == "1") { if ($uid_sent == "") { return; } if (substr($uid_sent, -1) != ",") { $uid_sent .= ","; } $module = strtolower($module); $mp_to_uids = td_trim($uid_sent); $a_uid_sent = $a_unpush_uid = array(); $a_uid_sent = explode(",", $mp_to_uids); if ($PCONLINE_MOBILE_PUSH == "0") { $query = "select DISTINCT(UID) from user_online where UID in(" . $mp_to_uids . ") and CLIENT!=5 and CLIENT!=6"; $cursor = exequery(TD::conn(), $query); while ($ROW = mysql_fetch_array($cursor)) { $a_unpush_uid[] = $ROW['UID']; } foreach ($a_uid_sent as $k => $v) { if (!($PCONLINE_MOBILE_PUSH == "0") && !is_array($a_unpush_uid) && !in_array($v, $a_unpush_uid)) { unset($a_uid_sent[$k]); } } $a_uid_sent = array_filter($a_uid_sent); $uid_sent = implode(",", $a_uid_sent); $uid_sent .= ","; } if ($module == "message") { include_once "task/message_push/funcs.php"; $C_MOBILE_DEVICES = TD::get_cache("C_MOBILE_DEVICES"); if ($C_MOBILE_DEVICES === FALSE) { rebuildmobilecache(); $C_MOBILE_DEVICES = TD::get_cache("C_MOBILE_DEVICES"); } if ($C_MOBILE_DEVICES && 0 < count($C_MOBILE_DEVICES)) { $M_STA = $M_ENT = array(); foreach ($a_uid_sent as $k => $v) { if ($C_MOBILE_DEVICES[$v]) { if ($C_MOBILE_DEVICES[$v]['client_ver'] == 1) { $M_STA[$v][] = array("content" => $content, "module" => "message"); } else { if ($C_MOBILE_DEVICES[$v]['client_ver'] == 2) { $M_ENT[$v][] = array("content" => $content, "module" => "message"); } } } } } tdmobilepush(array("sta" => $M_STA, "ent" => $M_ENT)); } $content = $org_content = strip_tags($content); if (strtolower(MYOA_CHARSET) != "utf-8") { $content = td_iconv($content, MYOA_CHARSET, "UTF-8"); } imtask("C^m^n^" . $uid_sent . "^" . $module . "^" . $content); if (!$MYOA_WEIXINQY_PUSH_ACTIVE) { $useble_module = array("email", "news", "notify"); if (!in_array($module, $useble_module)) { $uid_sents = td_trim($uid_sent); $query = "SELECT USER_ID FROM USER WHERE UID IN (" . $uid_sents . ")"; $cursor = exequery(TD::conn(), $query); while ($ROW = mysql_fetch_array($cursor)) { $user_id_arr[] = $ROW['USER_ID']; } wxqy_sms(array("user" => $user_id_arr, "module" => $module, "content" => $org_content)); } } } }
include_once "inc/utility_cache.php"; $WEIXINQY_TOKENS = TD::get_cache("WEIXINQY_TOKENS"); if ($WEIXINQY_TOKENS !== FALSE) { TD::set_cache("WEIXINQY_TOKENS", NULL); } } } include_once "inc/conn.php"; include_once "inc/utility_update.php"; if (!field_exists("DEPARTMENT", "WEIXIN_DEPT_ID")) { $query = "ALTER TABLE `department` ADD COLUMN `WEIXIN_DEPT_ID` int(11) NOT NULL DEFAULT 0 AFTER `DEPT_EMAIL_AUDITS_IDS`"; exequery(TD::conn(), $query, TRUE); add_sys_para(array("WEIXINQY_SECRET" => "", "WEIXINQY_CORPID" => "", "WEIXINQY_OAURL" => "", "WEIXINQY_APP_SMS" => "")); cache_sys_para(); } $PARA_ARRAY = get_sys_para("WEIXINQY_CORPID,WEIXINQY_SECRET,WEIXINQY_OAURL"); $WEIXINQY_CORPID = $PARA_ARRAY['WEIXINQY_CORPID']; $WEIXINQY_SECRET = $PARA_ARRAY['WEIXINQY_SECRET']; $WEIXINQY_OAURL = $PARA_ARRAY['WEIXINQY_OAURL']; echo "<body>\r\n<link rel=\"stylesheet\" type=\"text/css\" href=\""; echo MYOA_JS_SERVER; echo "/static/js/bootstrap/css/bootstrap.css\">\r\n<link rel=\"stylesheet\" type=\"text/css\" href=\""; echo MYOA_JS_SERVER; echo "/static/modules/weixinqy/style.css\">\r\n<script type=\"text/javascript\" src=\""; echo MYOA_JS_SERVER; echo "/static/js/jquery-1.10.2/jquery.min.js"; echo $GZIP_POSTFIX; echo "\"></script>\r\n<script type=\"text/javascript\">\r\n\$(function(){\r\n \$(\"#connect-btn\").click(function(){\r\n \$.get(\"setting.php\", {action: \"connect\", time: new Date().getTime()}, function(msg){\r\n if(msg == \"ok\"){\r\n \$(\"#connect-msg\").addClass(\"text-success\").html(\""; echo _("连接成功!"); echo "\");\r\n }else{\r\n \$(\"#connect-msg\").removeClass(\"text-success\").addClass(\"text-error\").html(\""; echo _("连接失败,请5分钟后尝试!");