| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253 |
- <?php
- // +----------------------------------------------------------------------
- // | Fanwe 方维直播系统
- // +----------------------------------------------------------------------
- // | Copyright (c) 2011 http://www.fanwe.com All rights reserved.
- // +----------------------------------------------------------------------
- // | Author: 云淡风轻(1956838968@qq.com)
- // +----------------------------------------------------------------------
- class SmsAction extends CommonAction{
- private function read_modules()
- {
- $directory = APP_ROOT_PATH."system/sms/";
- $read_modules = true;
- $dir = @opendir($directory);
- $modules = array();
-
- while (false !== ($file = @readdir($dir)))
- {
- if (preg_match("/^.*?\.php$/", $file))
- {
- $modules[] = require_once($directory.$file);
- }
- }
- @closedir($dir);
- unset($read_modules);
-
- foreach ($modules AS $key => $value)
- {
- ksort($modules[$key]);
- }
- ksort($modules);
-
- return $modules;
- }
- public function index()
- {
- $modules = $this->read_modules();
- $db_modules = $GLOBALS['db']->getAll("select * from ".DB_PREFIX."sms");
- foreach($modules as $k=>$v)
- {
- $sms_info = array();
- foreach($db_modules as $kk=>$vv)
- {
- if($v['class_name']==$vv['class_name'])
- {
- //已安装
- $modules[$k]['id'] = $vv['id'];
- $modules[$k]['is_effect'] = $vv['is_effect'];
- $modules[$k]['description'] = $vv['description'];
- $modules[$k]['installed'] = 1;
- $vv['config'] = unserialize($vv['config']);
- $sms_info = $vv;
- break;
- }
- }
- if($modules[$k]['installed'] != 1)
- $modules[$k]['installed'] = 0;
- else
- {
- if($modules[$k]['is_effect']==1)
- {
- include APP_ROOT_PATH."system/sms/".$modules[$k]['class_name']."_sms.php";
- $sms_class = $modules[$k]['class_name']."_sms";
- $sms_module = new $sms_class($sms_info);
- $modules[$k]['name'] = $sms_module->getSmsInfo();
- }
- }
- }
- $this->assign("sms_list",$modules);
- $this->display();
- }
-
-
- public function install()
- {
- $class_name = $_REQUEST['class_name'];
- $directory = APP_ROOT_PATH."system/sms/";
- $read_modules = true;
-
- $file = $directory.$class_name."_sms.php";
- if(file_exists($file))
- {
- $module = require_once($file);
- $rs = M("Sms")->where("class_name = '".$class_name."'")->count();
- if($rs > 0)
- {
- $this->error(l("SMS_INSTALLED"));
- }
- }
- else
- {
- $this->error(l("INVALID_OPERATION"));
- }
-
- //开始插入数据
- $data['name'] = $module['name'];
- $data['class_name'] = $module['class_name'];
- $data['server_url'] = $module['server_url'];
- $data['lang'] = $module['lang'];
- $data['config'] = $module['config'];
- $this->assign("data",$data);
- $this->display();
-
- }
-
- public function uninstall()
- {
- $ajax = intval($_REQUEST['ajax']);
- $id = intval($_REQUEST ['id']);
- $data = M(MODULE_NAME)->getById($id);
- if($data)
- {
- $info = $data['class_name'];
- $list = M(MODULE_NAME)->where ( array('id'=>$data['id']) )->delete();
- if ($list!==false) {
- save_log($info.l("UNINSTALL_SUCCESS"),1);
- $this->success (l("UNINSTALL_SUCCESS"),$ajax);
- } else {
- save_log($info.l("UNINSTALL_FAILED"),0);
- $this->error (l("UNINSTALL_FAILED"),$ajax);
- }
- }
- else
- {
- $this->error (l("INVALID_OPERATION"),$ajax);
- }
- }
-
- public function insert()
- {
- $data = M(MODULE_NAME)->create ();
- $data['config'] = serialize($_REQUEST['config']);
- // 更新数据
- $log_info = $data['name'];
- $list=M(MODULE_NAME)->add($data);
- $this->assign("jumpUrl",u(MODULE_NAME."/index"));
- if (false !== $list) {
- //成功提示
- save_log($log_info.L("INSTALL_SUCCESS"),1);
- $this->success(L("INSTALL_SUCCESS"));
- } else {
- //错误提示
- save_log($log_info.L("INSTALL_FAILED"),0);
- $this->error(L("INSTALL_FAILED"));
- }
- }
-
- public function edit() {
- $id = intval($_REQUEST ['id']);
- $condition['id'] = $id;
- $vo = M(MODULE_NAME)->where($condition)->find();
-
- $directory = APP_ROOT_PATH."system/sms/";
- $read_modules = true;
-
- $file = $directory.$vo['class_name']."_sms.php";
- if(file_exists($file))
- {
- $module = require_once($file);
- }
- else
- {
- $this->error(l("INVALID_OPERATION"));
- }
- $data = $vo;
- $vo['config'] = unserialize($vo['config']);
-
- $data['lang'] = $module['lang'];
- $data['config'] = $module['config'];
-
- $this->assign ( 'vo', $vo );
- $this->assign ( 'data', $data );
- $this->display ();
- }
-
-
- public function update()
- {
- $data = M(MODULE_NAME)->create ();
- $data['config'] = serialize($_REQUEST['config']);
- $log_info = M(MODULE_NAME)->where("id=".intval($data['id']))->getField("name");
- $this->assign("jumpUrl",u(MODULE_NAME."/edit",array("id"=>$data['id'])));
-
- // 更新数据
- $list=M(MODULE_NAME)->save ($data);
- if (false !== $list) {
- //成功提示
- save_log($log_info.L("UPDATE_SUCCESS"),1);
- $this->success(L("UPDATE_SUCCESS"));
- } else {
- //错误提示
- save_log($log_info.L("UPDATE_FAILED"),0);
- $this->error(L("UPDATE_FAILED"),0,$log_info.L("UPDATE_FAILED"));
- }
- }
-
- public function set_effect()
- {
- $id = intval($_REQUEST['id']);
- $ajax = intval($_REQUEST['ajax']);
- $info = M(MODULE_NAME)->where("id=".$id)->getField("name");
- M(MODULE_NAME)->setField("is_effect",0);
- M(MODULE_NAME)->where("id=".$id)->setField("is_effect",1);
- save_log($info.l("SET_EFFECT_1"),1);
- $this->success($info.l("SET_EFFECT_1"));
- }
-
- public function send_demo()
- {
-
- $test_mobile = $_REQUEST['test_mobile'];
- // require_once APP_ROOT_PATH."system/utils/es_sms.php";
- // $sms = new sms_sender();
- //
- // $result = $sms->sendSms($test_mobile,l("DEMO_SMS"));
- $result = $GLOBALS['msg']->manage_msg("SMS_DEMO",$test_mobile);
- if($result['status'])
- {
- $this->success(l("SEND_SUCCESS"),1);
- }
- else
- {
-
- $this->error(l("ERROR_INFO") . $result['msg'],1);
- }
- }
-
- public function check_fee()
- {
- $id = intval($_REQUEST['id']);
- $data = M("Sms")->getById($id);
- if($data)
- {
- include APP_ROOT_PATH."system/sms/".$data['class_name']."_sms.php";
- $sms_info = $data;
- $sms_info['config'] = unserialize($sms_info['config']);
- $sms_class = $data['class_name']."_sms";
- $sms_module = new $sms_class($sms_info);
- header("Content-Type:text/html; charset=utf-8");
- echo $sms_module->check_fee();
- }
- else
- {
- header("Content-Type:text/html; charset=utf-8");
- return "接口不存在";
- }
- }
- }
- ?>
|