Example #1
0
 public static function getModelByMobile($mobile)
 {
     $model = null;
     if (\Yii::$app->mutex->acquire(self::tableName(), self::SCENE_LOCK_WAIT_TIME_SECOND)) {
         $model = self::findOne(['mobile' => $mobile]);
         if (empty($model)) {
             $model = new self();
             $model->mobile = $mobile;
             $model->created_at = time();
             $model->save(false);
         }
         \Yii::$app->mutex->release(self::tableName());
         if ($model->updated_at + $model->expire_seconds < time()) {
             $gh_id = MGh::GH_XIANGYANGUNICOM;
             \Yii::$app->wx->setGhId($gh_id);
             $scene_id = $model->scene_id + 100000;
             $arr = \Yii::$app->wx->WxgetQRCode($scene_id, 0, 300);
             $model->updated_at = time();
             $model->ticket = $arr['ticket'];
             $model->expire_seconds = $arr['expire_seconds'];
             $model->url = $arr['url'];
             $qr_url = \Yii::$app->wx->WxGetQRUrl($arr['ticket']);
             $log_file_path = \Yii::$app->getRuntimePath() . DIRECTORY_SEPARATOR . 'qr' . DIRECTORY_SEPARATOR . "{$gh_id}_{$scene_id}.jpg";
             Wechat::downloadFile($qr_url, $log_file_path);
             $model->qr_url = \Yii::$app->getRequest()->baseUrl . "/../runtime/qr/{$gh_id}_{$scene_id}.jpg";
             $model->save(false);
         }
     } else {
         \Yii::error('acquire lock error');
     }
     return $model;
 }
Example #2
0
 public static function register(\Exception $e)
 {
     $ee = new self();
     $ee->exception = serialize($e);
     $ee->save();
     $ee->reload();
     $ee->exception_hash = sha1(md5($ee->exceptionid . __CLASS__) . "." . sha1($ee->exceptionid . __METHOD__));
     $ee->save();
     return $ee->exception_hash;
 }
Example #3
0
 /**
  * @param int[] $ids
  *
  * @return Check
  */
 public static function createByProductIds($ids)
 {
     $check = new self();
     $check->save();
     foreach ($ids as $id) {
         $product = Product::find()->where(['id' => $id])->one();
         if ($product === null) {
             continue;
         }
         $check->link('products', $product);
     }
     $check->calculate();
     $check->save();
     return $check;
 }
Example #4
0
 public function saveData($request, $member_id = '')
 {
     // Upload
     $file_upload = Input::file('avatar');
     $avatar = '';
     if ($file_upload) {
         $filename = $file_upload->getClientOriginalName();
         $extension = $file_upload->getClientOriginalExtension();
         $avatar = sha1($filename . time()) . '.' . $extension;
         $destinationPath = config('custom.path_upload_member');
         $file_upload->move($destinationPath, $avatar);
     }
     if ($member_id) {
         $member = self::find($member_id);
     } else {
         $member = new self();
     }
     $member->avatar = $avatar ? $avatar : $member->avatar;
     $member->fullname = $request->input('fullname', '');
     $member->team = $request->input('team_id', '');
     $results = $member->save();
     if ($results) {
         return $member->id;
     } else {
         return $results;
     }
 }
Example #5
0
 /**
  *  Метод выполения миграций
  * @param  string $name уникальное название миграции
  * @return array массив списка результатов
  */
 public static function migrate($name)
 {
     $migration = new self();
     $migration->migration = $name;
     $migration->save();
     self::$operations[] = "Миграция {$name} успешно выполнена\n";
 }
Example #6
0
 public static function add($params)
 {
     $game = new self();
     $game->member_id = $params->member_id;
     $game->subgame_id = $params->game_id;
     $game->save();
 }
Example #7
0
 /**
  * Add or Remove an order item to/from a server
  * 
  * 
  * @param integer $orderItemID
  * @param integer $serverID
  */
 private static function doAddRemove($orderItemID, $serverID, $action = '')
 {
     $ret = false;
     if (is_numeric($orderItemID) && is_numeric($serverID) && ($action == 'add' || $action == 'remove')) {
         $serverID = intval($serverID);
         $itemID = intval($orderItemID);
         if ($action == 'remove') {
             $record = self::findByServerAndItem($serverID, $itemID);
             $record->delete();
             $ret = true;
         } else {
             $order = OrdersItems::find($orderItemID, 'order_id', true);
             if (!empty($order) && is_array($order) && count($order) > 0) {
                 $order = $order[0];
                 if (!isset($order['order_id']) || intval($order['order_id']) == 0) {
                     $ret = false;
                 }
                 $orderID = intval($order['order_id']);
                 $OrdersItemsServers = new self();
                 $OrdersItemsServers->server_id = $serverID;
                 $OrdersItemsServers->order_id = $orderID;
                 $OrdersItemsServers->orderitem_id = $itemID;
                 $OrdersItemsServers->save();
                 $ret = true;
             }
         }
         // Always update server stats
         $Server = Servers::find($serverID);
         $Server->services = OrdersItemsServers::countByServerId($serverID);
         $Server->save();
         return $ret;
     }
     return false;
 }
Example #8
0
 /**
  * Create a log object
  *
  * @access public
  * @param string $action
  * @param object $object
  */
 public static function create($action, $object = null)
 {
     // what class is it
     $classname = '';
     if (!is_null($object)) {
         $classname = strtolower(get_class($object));
     }
     $log = new self();
     try {
         $user = User::get();
         $log->user_id = $user->id;
     } catch (\Exception $e) {
         $log->user_id = 0;
     }
     if ($action == 'add') {
         $content = ucfirst($classname) . ' created';
     } elseif ($action == 'edit') {
         $content = ucfirst($classname) . ' edited';
     } else {
         $content = ucfirst($action);
     }
     $log->classname = $classname;
     $log->object_id = !is_null($object) ? $object->id : 0;
     $log->content = $content;
     $log->save();
     return $log;
 }
 public static function add($params)
 {
     $flag = new self();
     $flag->member_id = $params->member_flagged;
     $flag->flagged_by = $params->flagged_by;
     $flag->save();
 }
 /**
  * Subscribe a user to the topic
  *
  */
 public function subscribeUser($topicId, $userId)
 {
     $model = new self();
     $model->topicid = $topicId;
     $model->userid = $userId;
     $model->save();
 }
 public static function saveNewUrl($url)
 {
     $model = new self('updateUrls');
     $model->page_url = $url;
     $model->save();
     \Yii::app()->setGlobalState('DisqusComments', microtime(true));
 }
Example #12
0
 public static function createTopic($user, $topicFields)
 {
     $topic = new self($topicFields);
     $topic->author_id = $user->id;
     $topic->save();
     return $topic;
 }
Example #13
0
 /**
  * @static
  * @param $id - translation key
  * @param bool $create - creates an empty translation entry if the key doesn't exists
  * @param bool $returnIdIfEmpty - returns $id if no translation is available
  * @return Translation_Website
  */
 public static function getByKey($id, $create = false, $returnIdIfEmpty = false)
 {
     $translation = new self();
     try {
         $translation->getResource()->getByKey($id);
     } catch (Exception $e) {
         if (!$create) {
             throw new Exception($e->getMessage());
         } else {
             $translation->setKey($id);
             $translation->setDate(time());
             $translations = array();
             foreach (Pimcore_Tool::getValidLanguages() as $lang) {
                 $translations[$lang] = "";
             }
             $translation->setTranslations($translations);
             $translation->save();
         }
     }
     if ($returnIdIfEmpty) {
         $translations = $translation->getTranslations();
         foreach ($translations as $key => $value) {
             $translations[$key] = $value ?: $id;
         }
         $translation->setTranslations($translations);
     }
     return $translation;
 }
 /**
  * Add new notification
  *
  * @param $user_id
  * @param $review_id
  */
 public static function addOne($user_id, $review_id)
 {
     $obj = new self();
     $obj->from_array(array('user_id' => $user_id, 'review_id' => $review_id, 'created' => time()));
     $obj->save();
     return $obj;
 }
Example #15
0
 public function saveData($request, $user_id = '')
 {
     $password = '';
     $role_id = $request->input('role_id');
     if ($user_id) {
         $user = self::find($user_id);
         //Dectach
         $detact = $user->roles()->detach();
         $password = $user->password;
     } else {
         // Check duplicate
         $email = $request->input('email');
         $check_user = self::where('email', '=', $email)->first();
         if ($check_user) {
             return false;
         } else {
             $user = new self();
         }
     }
     $new_password = bcrypt($request->input('password'));
     if (!$new_password) {
         $new_password = $password;
     }
     $user->name = $request->input('name');
     $user->email = $request->input('email');
     $user->password = $new_password;
     $results = $user->save();
     if ($results) {
         $results_return = $user->roles()->attach($role_id);
         return $user->id;
     } else {
         return $results;
     }
 }
Example #16
0
 public static function add($groupName)
 {
     $productGroup = new self();
     $productGroup->setGroupName($groupName);
     $productGroup->save();
     return $productGroup;
 }
Example #17
0
 public static function writeStat($id_user)
 {
     $model = new self();
     $model->id_user = $id_user;
     $model->date = time();
     $model->save();
 }
 /**
  *
  * @param unknown $userId
  * @param core_kernel_classes_Resource $assembly
  * @return taoDelivery_models_classes_execution_KVDeliveryExecution
  */
 public static function spawn(common_persistence_KeyValuePersistence $persistence, $userId, core_kernel_classes_Resource $assembly)
 {
     $identifier = self::DELIVERY_EXECUTION_PREFIX . common_Utils::getNewUri();
     $de = new self($persistence, $identifier, array(RDFS_LABEL => $assembly->getLabel(), PROPERTY_DELVIERYEXECUTION_DELIVERY => $assembly->getUri(), PROPERTY_DELVIERYEXECUTION_SUBJECT => $userId, PROPERTY_DELVIERYEXECUTION_START => time(), PROPERTY_DELVIERYEXECUTION_STATUS => INSTANCE_DELIVERYEXEC_ACTIVE));
     $de->save();
     return $de;
 }
Example #19
0
 public static function add($title = '', $search_query = '')
 {
     if (empty($search_query)) {
         return false;
     }
     if (!Auth::check()) {
         return false;
     }
     $user_id = Auth::getUser()->id;
     if ($query = $this->valid_query($search_query)) {
         // Check query exists in DB
         $record = self::where('query', '=', $query)->first();
         if (empty($record)) {
             $record = new self();
             $record->query = $query;
             $record->save();
         }
         // Check current user used query
         $search_id = $record->id;
         $record = SearchUser::whereRaw('user_id = ? AND search_id = ?', array($user_id, $search_id))->first();
         if (empty($record)) {
             $record = new SearchUser();
             $record->title = $title;
             $record->user_id = $user_id;
             $record->search_id = $search_id;
             $record->save();
         }
     } else {
         return false;
     }
 }
Example #20
0
 /**
  * Save data.
  *
  * @parram Request
  *
  * @return ID
  */
 public function saveData($request, $team_id = '')
 {
     if ($team_id) {
         $teams = self::find($team_id);
     } else {
         $teams = new self();
     }
     $list_old_images = '';
     //Check list old image
     $array_old_images = $request->input('old_feauture_images', '');
     if ($array_old_images) {
         $list_old_images = ',' . implode(',', $array_old_images);
     }
     $teams->team_name = $request->input('team_name', '');
     $teams->description = $request->input('description', '');
     $list_images = '';
     // Start process upload images to server
     $images_upload = Input::file('images');
     if ($images_upload) {
         $destinationPath = config('custom.path_upload_team');
         $list_images = self::uploadMultiImages($images_upload, $destinationPath);
     }
     $images = $list_images . $list_old_images;
     $teams->images = $images;
     $teams->save();
     return $teams->id;
 }
 public static function initiate($user_id, array $other_details)
 {
     return DB::transaction(function () use($user_id, $other_details) {
         $details = [];
         switch ($other_details['type']) {
             case 'recharge':
                 $details = ['type' => 'recharge', 'plan_id' => $other_details['plan_id'], 'plan_name' => $other_details['plan_name']];
                 break;
             case 'refill':
                 $details = ['type' => 'refill', 'value' => $other_details['value'], 'unit' => $other_details['unit']];
         }
         $dp_transaction = new self(['status' => 'Initiated', 'other_details' => http_build_query($details)]);
         if (!$dp_transaction->save()) {
             throw new Exception('Could not initiate transaction. Failed: Phase 1');
         }
         do {
             $uid = uniqid();
             $exists = OnlinePayment::where('order_id', $uid)->count();
         } while ($exists);
         $payment = ['user_id' => $user_id, 'gw_type' => 'DirecpayTransaction', 'gw_id' => $dp_transaction->id, 'order_id' => $uid, 'amount' => $other_details['amount']];
         $transaction = new OnlinePayment($payment);
         if (!$transaction->save()) {
             throw new Exception('Could not initiate transaction. Failed: Phase 2');
         }
         return $transaction->order_id;
     });
 }
Example #22
0
 public static function changeCurrencyTo($cur)
 {
     $indef = Yii::$app->user->id ? (string) Yii::$app->user->id : (string) Yii::$app->session->id;
     //vd($indef);
     $model = self::find()->where(['user_id' => $indef, 'param_name' => 'currency'])->one();
     //vd($model);
     if ($model) {
         // сравнить и изменить
         if ($model->param_value != $cur) {
             $model->param_value = $cur;
             $model->updateAttributes(['param_value']);
             return $model->param_value;
         } else {
             return self::RUB;
         }
     } else {
         //vd(4);
         $_model = new self();
         $_model->param_name = 'currency';
         $_model->param_value = $cur;
         $_model->user_id = $indef;
         //vd(yii::$app->user->id);
         //$_model->validate();
         //vd($_model->getErrors());
         $_model->save();
         return $cur;
     }
 }
Example #23
0
 /**
  * Static Functions
  */
 public static function processExternal($provider, $user_profile, User $user = null)
 {
     $external = self::getRepository()->findOneBy(array('provider' => $provider, 'external_id' => $user_profile->identifier));
     // Locate a user account to associate.
     if ($user instanceof User) {
         // No additional processing.
     } elseif ($external instanceof self && $external->user instanceof User) {
         $user = $external->user;
     } elseif (!empty($user_profile->email)) {
         $user = User::getRepository()->findOneBy(array('email' => $user_profile->email));
         if (!$user instanceof User) {
             $user = new User();
             $user->email = $user_profile->email;
             $user->name = $user_profile->displayName;
             $user->avatar_url = $user_profile->photoURL;
             $user->generateRandomPassword();
             $user->save();
         }
     } else {
         // Not enough information to auto-create account; throw exception.
         throw new \PVL\Exception\AccountNotLinked();
     }
     // Create new external record (if none exists)
     if (!$external instanceof self) {
         // Create new external account and associate with the specified user.
         $external = new self();
         $external->provider = $provider;
         $external->external_id = $user_profile->identifier;
     }
     $external->user = $user;
     $external->name = $user_profile->displayName;
     $external->avatar_url = $user_profile->photoURL;
     $external->save();
     return $user;
 }
Example #24
0
 /**
  * @param array $values
  * @return Object_Folder
  */
 public static function create($values)
 {
     $object = new self();
     $object->setValues($values);
     $object->save();
     return $object;
 }
Example #25
0
 /**
  * Returns currently loggedin user employer object
  *
  * @return Wpjb_Model_Employer
  */
 public static function current()
 {
     if (self::$_current instanceof self) {
         return self::$_current;
     }
     $current_user = wp_get_current_user();
     if ($current_user->ID < 1) {
         return new self();
     }
     $query = new Daq_Db_Query();
     $object = $query->select()->from(__CLASS__ . " t")->where("user_id = ?", $current_user->ID)->limit(1)->execute();
     if ($object[0]) {
         self::$_current = $object[0];
         return self::$_current;
     }
     // quick create
     $object = new self();
     $object->user_id = $current_user->ID;
     $object->company_name = "";
     $object->company_website = "";
     $object->company_info = "";
     $object->company_logo_ext = "";
     $object->company_location = "";
     $object->is_public = 0;
     $object->is_active = self::ACCOUNT_ACTIVE;
     $object->save();
     self::$_current = $object;
     return $object;
 }
Example #26
0
 public static function set_page_menus($page_id, $menus)
 {
     $current = self::get_page_menus($page_id);
     if (!empty($menus)) {
         foreach ($menus as $menu_id => $checked_val) {
             if (!in_array($menu_id, $current)) {
                 $last_item_in_menu = self::where('menu_id', '=', $menu_id)->orderBy('order', 'desc')->first();
                 if (!empty($last_item_in_menu)) {
                     $order = $last_item_in_menu->order + 1;
                 } else {
                     $order = 1;
                 }
                 $new_item = new self();
                 $new_item->page_id = $page_id;
                 $new_item->menu_id = $menu_id;
                 $new_item->order = $order;
                 $new_item->custom_name = '';
                 $new_item->save();
             } else {
                 unset($current[$menu_id]);
             }
         }
     }
     if (!empty($current)) {
         self::where('page_id', '=', $page_id)->whereIn('menu_id', $current)->delete();
     }
 }
Example #27
0
 /**
  * Set option
  *
  * @param $name
  * @param $value
  * @param null $context
  * @param null $type
  * @return bool
  */
 public static function setEntry($name, $value, $context = null, $type = null)
 {
     $item = self::where('name', $name)->first();
     if (!$item) {
         $item = new self();
     }
     $item->name = $name;
     if (!$type) {
         if (is_string($value)) {
             $type = 'string';
         } else {
             $type = 'serializable';
         }
     }
     if ($type == 'serializable') {
         $value = serialize($value);
     } elseif ($type == 'json') {
         $value = json_encode($value);
     } elseif ($type == 'hashed') {
         $value = Hash::make($value);
     } elseif ($type == 'crypted') {
         $value = Crypt::encrypt($value);
     }
     $item->value = $value;
     $item->type = $type;
     $item->context = $context;
     return $item->save();
 }
Example #28
0
 public static function createPenal($input)
 {
     $answer = [];
     $rules = ['number_penal' => 'required', 'acussed' => 'required', 'start_date' => 'required', 'crime' => 'required', 'aggrieved' => 'required', 'judge' => 'required', 'scribe' => 'required'];
     $validation = Validator::make($input, $rules);
     if ($validation->fails()) {
         $answer['message'] = $validation;
         $answer['error'] = true;
     } else {
         $penal = new self();
         $penal->number_penal = $input['number_penal'];
         $penal->acussed = $input['acussed'];
         $penal->start_date = $input['start_date'];
         $penal->crime = $input['crime'];
         $penal->aggrieved = $input['aggrieved'];
         $penal->judge = $input['judge'];
         $penal->scribe = $input['scribe'];
         $penal->references = $input['references'];
         $penal->description = $input['description'];
         $penal->status = 1;
         if ($penal->save()) {
             $answer['message'] = 'Creado con exito!';
             $answer['error'] = false;
         } else {
             $answer['message'] = 'PENAL CREATE error, team noob!';
             $answer['error'] = false;
         }
     }
     return $answer;
 }
Example #29
0
 public static function createCivil($input)
 {
     $answer = [];
     $rules = ['number_civil' => 'required', 'date' => 'required', 'demandant' => 'required', 'defendant' => 'required', 'matery' => 'required', 'secretary' => 'required', 'file' => 'required'];
     $validation = Validator::make($input, $rules);
     if ($validation->fails()) {
         $answer['message'] = $validation;
         $answer['error'] = true;
     } else {
         $civil = new self();
         $civil->number_civil = $input['number_civil'];
         $civil->date = $input['date'];
         $civil->demandant = $input['demandant'];
         $civil->defendant = $input['defendant'];
         $civil->matery = $input['matery'];
         $civil->secretary = $input['secretary'];
         $civil->file = $input['file'];
         $civil->references = $input['references'];
         $civil->description = $input['description'];
         $civil->status = 1;
         if ($civil->save()) {
             $answer['message'] = 'Creado con exito!';
             $answer['error'] = false;
         } else {
             $answer['message'] = 'CIVIL CREATE error, team noob!';
             $answer['error'] = false;
         }
     }
     return $answer;
 }
Example #30
0
 public static function addToLog(array $params)
 {
     //        $date = date('Y-m-d', strtotime('-7 days'));
     //        self::getDb()->createCommand("DELETE FROM " . self::tableName() . " WHERE create_date < '{$date}'")->execute();
     $model = new self();
     foreach (debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS) as $step) {
         if ($step['class'] == 'maxlen\\proxy\\helpers\\Proxy') {
             $model->proxy_action = $step['function'];
             break;
         }
     }
     foreach ($params as $k => $v) {
         $model->{$k} = $v;
     }
     foreach (debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS) as $step) {
         if ($step['function'] == $model->proxy_action) {
             $model->script = $step['file'];
             break;
         }
     }
     if (!isset($model->script)) {
         $model->script = json_encode(debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS));
     }
     $model->create_date = date('Y-m-d H:i:s');
     $model->save();
 }