Exemplo n.º 1
0
 public function action_save($id = 0)
 {
     $params = array('title' => '公众号设置——微信公众号管理', 'menu' => 'wxaccount', 'action_name' => '公众号资料');
     $account = array();
     if ($id) {
         $account = \Model_WXAccount::find($id);
     }
     if (\Input::method() == 'POST') {
         $data = \Input::post();
         $val = \Validation::forge('MyRules');
         $val->add_callable('MyRules');
         $val->add_field('open_id', 'OPENID', 'required' . ($id ? '' : '|unique[wx_accounts.open_id]'));
         $val->add_field('app_id', '应用ID', 'required');
         $val->add_field('app_secret', '应用密钥', 'required');
         if (!$val->run()) {
             foreach ($val->error() as $key => $value) {
                 $errors[$key] = (string) $value;
             }
             if (\Input::is_ajax()) {
                 die(json_encode(array('status' => 'err', 'msg' => '表单验证错误', 'data' => $errors, 'errcode' => 10)));
             }
             $msg = array('status' => 'err', 'msg' => '表单验证错误', 'data' => $errors, 'errcode' => 10);
         } else {
             //判断操作类型:编辑或创建
             if ($account) {
                 $account->set($data);
             } else {
                 $data['seller_id'] = isset($data['seller_id']) ? $data['seller_id'] : \Session::get('seller')->id;
                 $account = \Model_WXAccount::forge($data);
                 //设置额外属性
                 $account->metadata = array(\Model_WXAccountMetadata::forge(array('key' => 'keyword_not_fond', 'value' => 'reply_text')), \Model_WXAccountMetadata::forge(array('key' => 'keyword_not_found_content', 'value' => '')), \Model_WXAccountMetadata::forge(array('key' => 'is_subscribe_member', 'value' => 1)), \Model_WXAccountMetadata::forge(array('key' => 'wechat_ticket', 'value' => '')), \Model_WXAccountMetadata::forge(array('key' => 'wechat_ticket_valid', 'value' => 0)), \Model_WXAccountMetadata::forge(array('key' => 'is_fans_create_page', 'value' => 1)), \Model_WXAccountMetadata::forge(array('key' => 'share_url', 'value' => isset($data['share_url']) ? $data['share_url'] : '')), \Model_WXAccountMetadata::forge(array('key' => 'fans_create_page_keyword', 'value' => isset($data['fans_create_page_keyword']) ? $data['fans_create_page_keyword'] : 'ok')), \Model_WXAccountMetadata::forge(array('key' => 'fans_create_page_over_keyword', 'value' => isset($data['fans_create_page_over_keyword']) ? $data['fans_create_page_over_keyword'] : 'over')));
             }
             if ($account->save()) {
                 $seller = \Model_Seller::find(\Session::get('seller')->id);
                 \Session::set('seller', $seller);
                 \Session::set('WXAccount', $account);
                 $msg = array('status' => 'succ', 'msg' => '操作成功', 'errcode' => 0);
             } else {
                 $msg = array('status' => 'err', 'msg' => '操作失败', 'errcode' => 10);
             }
         }
         if (\Input::is_ajax()) {
             die(json_encode($msg));
         }
         \Session::set_flash('msg', $msg);
     }
     if ($account) {
         $params['item'] = $account;
     }
     \View::set_global($params);
     $this->template->content = \View::forge('ace/mp/account/details');
 }
Exemplo n.º 2
0
 public static function createAccount($data)
 {
     if (!isset($data['is_subscribe_create_user'])) {
         $data['is_subscribe_create_user'] = false;
     }
     if (!isset($data['is_subscribe_create_member'])) {
         $data['is_subscribe_create_member'] = false;
     }
     if (!isset($data['create_user_default_group'])) {
         $data['create_user_default_group'] = 1;
     }
     $account = \Model_WXAccount::forge($data);
     if (!$account->save()) {
         return false;
     }
     return $account;
 }