Example #1
1
 public static function register($data)
 {
     static::$error = false;
     $user = new static();
     if (!$user->set($data)->success()) {
         static::$error = 'REGISTER_VALIDATION_FALSE';
         return false;
     }
     $login = isset($data[static::ROW_LOGIN]) ? $data[static::ROW_LOGIN] : '';
     if (!$login) {
         static::$error = 'REGISTER_NO_LOGIN';
         return false;
     }
     $found = static::findBy(static::ROW_LOGIN, $login)->getFirst();
     if ($found) {
         static::$error = 'REGISTER_DUBLICATE_USER';
         return false;
     }
     $password = isset($data[static::ROW_PASSWORD]) ? $data[static::ROW_PASSWORD] : '';
     if (!$password) {
         static::$error = 'REGISTER_NO_PASSWORD';
         return false;
     }
     $user->{static::ROW_HASH_RESTORE} = static::makeHash();
     $user->save();
     return $user;
 }
 public static function get_cached_image($image)
 {
     $instance = new static();
     $instance->cached_image_directory = static::get_cache_directory();
     if (!is_string($image)) {
         $instance->error('Image source given must be a string.');
     }
     $instance->image_src = $image;
     $instance->pre_set_class_vars();
     // If the image hasn't been server up at thi point, fetch, compress, cache, and return
     if ($instance->cached_file_exists()) {
         $instance->src_filesize = filesize($instance->image_src);
         $instance->cached_filesize = filesize($instance->cached_filename);
         if ($instance->src_filesize < $instance->cached_filesize) {
             return $instance->docroot_to_url($instance->image_src . '?' . md5_file($instance->image_src));
         }
         return $instance->docroot_to_url();
     }
     if ($instance->is_remote) {
         $instance->download_image();
     }
     if (!$instance->fetch_image()) {
         $instance->error('Could not copy image resource.');
     }
     $instance->src_filesize = filesize($instance->image_src);
     $instance->cached_filesize = filesize($instance->cached_filename);
     if ($instance->src_filesize < $instance->cached_filesize) {
         return $instance->docroot_to_url($instance->image_src . '?' . md5_file($instance->image_src));
     }
     return $instance->docroot_to_url();
 }
Example #3
0
 /**
  * Apply a configuration array
  *
  * @param  array  $configuration
  */
 public static function setUp(array $configuration)
 {
     self::reset();
     foreach ($configuration as $k => $v) {
         switch ($k) {
             case 'returnSize':
                 static::$returnSize = $v;
                 break;
             case 'reportedSize':
                 static::$reportedSize = $v;
                 break;
             case 'url':
                 static::$url = $v;
                 break;
             case 'errno':
                 static::$errno = $v;
                 break;
             case 'error':
                 static::$error = $v;
                 break;
             case 'httpstatus':
                 static::$httpstatus = $v;
                 break;
         }
     }
 }
Example #4
0
 /**
  * Helper method to set an internal error message.
  *
  * @param int $errorNumber Number of the error
  * @param string $errorMessage Description of the error
  * @return void
  */
 protected static function _setError($errorNumber, $errorMessage)
 {
     if (static::$error === false) {
         static::$error = array();
     }
     static::$error[$errorNumber] = $errorMessage;
     static::$lastError = $errorNumber;
 }
Example #5
0
 /**
  * Bind a callback when an error occurs.
  * @param  callable $callback The callback to be binded to the route. If omitted triggers the callback.
  */
 public static function error(callable $callback = null)
 {
     $callback ? is_callable($callback) && (static::$error = $callback) : static::$error && call_user_func(static::$error);
 }
Example #6
0
 /**
  * Decodes a NEON string.
  * @param  string
  * @return mixed
  */
 public static function decode($input)
 {
     if (!is_string($input)) {
         throw new Nette\InvalidArgumentException("Argument must be a string, " . gettype($input) . " given.");
     }
     if (!self::$tokenizer) {
         self::$tokenizer = new Tokenizer(self::$patterns, 'mi');
     }
     $input = str_replace("\r", '', $input);
     self::$tokenizer->tokenize($input);
     $parser = new static();
     $res = $parser->parse(0);
     while (isset(self::$tokenizer->tokens[$parser->n])) {
         if (self::$tokenizer->tokens[$parser->n][0] === "\n") {
             $parser->n++;
         } else {
             $parser->error();
         }
     }
     return $res;
 }
Example #7
0
 /**
  * @param $mailingChainId
  * @return string
  */
 public static function chainSend($mailingChainId)
 {
     static::$error = null;
     $mailingChainPrimary = array('ID' => $mailingChainId);
     $mailingChainDb = MailingChainTable::getById($mailingChainPrimary);
     $arMailingChain = $mailingChainDb->fetch();
     if ($arMailingChain && $arMailingChain['STATUS'] == MailingChainTable::STATUS_SEND) {
         if (\COption::GetOptionString("sender", "auto_method") === 'cron') {
             $maxMailCount = 0;
             $timeout = 0;
         } else {
             $maxMailCount = \COption::GetOptionInt("sender", "max_emails_per_hit");
             $timeout = \COption::GetOptionInt("sender", "interval");
         }
         try {
             $postingSendStatus = PostingManager::send($arMailingChain['POSTING_ID'], $timeout, $maxMailCount);
         } catch (Exception $e) {
             static::$error = $e;
         }
         if (empty(static::$error) && $postingSendStatus !== PostingManager::SEND_RESULT_CONTINUE) {
             if ($arMailingChain['REITERATE'] == 'Y') {
                 MailingChainTable::update($mailingChainPrimary, array('POSTING_ID' => null, 'STATUS' => MailingChainTable::STATUS_WAIT, 'AUTO_SEND_TIME' => null));
             } else {
                 MailingChainTable::update($mailingChainPrimary, array('STATUS' => MailingChainTable::STATUS_END));
             }
         } else {
             return static::getAgentName($mailingChainId);
         }
     }
     return "";
 }
Example #8
0
 /**
  * @param $mailingChainId
  * @return string
  */
 public static function chainSend($mailingChainId)
 {
     static::$error = null;
     $mailingChainPrimary = array('ID' => $mailingChainId);
     $mailingChainDb = MailingChainTable::getById($mailingChainPrimary);
     $mailingChain = $mailingChainDb->fetch();
     if ($mailingChain && $mailingChain['STATUS'] == MailingChainTable::STATUS_SEND) {
         if (\COption::GetOptionString("sender", "auto_method") === 'cron') {
             $maxMailCount = 0;
             $timeout = 0;
         } else {
             $maxMailCount = \COption::GetOptionInt("sender", "max_emails_per_hit");
             $timeout = \COption::GetOptionInt("sender", "interval");
         }
         $postingSendStatus = '';
         if (!empty($mailingChain['POSTING_ID'])) {
             try {
                 $postingSendStatus = PostingManager::send($mailingChain['POSTING_ID'], $timeout, $maxMailCount);
             } catch (Exception $e) {
                 static::$error = $e;
                 $postingSendStatus = PostingManager::SEND_RESULT_ERROR;
             }
         }
         if (empty(static::$error) && $postingSendStatus !== PostingManager::SEND_RESULT_CONTINUE) {
             if ($mailingChain['REITERATE'] == 'Y') {
                 $mailingChainFields = array('STATUS' => MailingChainTable::STATUS_WAIT, 'AUTO_SEND_TIME' => null, 'POSTING_ID' => null);
                 if ($mailingChain['IS_TRIGGER'] == 'Y') {
                     $postingDb = PostingTable::getList(array('select' => array('ID', 'DATE_CREATE'), 'filter' => array('STATUS' => PostingTable::STATUS_NEW, 'MAILING_CHAIN_ID' => $mailingChain['ID']), 'order' => array('DATE_CREATE' => 'ASC'), 'limit' => 1));
                     if ($posting = $postingDb->fetch()) {
                         $mailingChainFields['AUTO_SEND_TIME'] = $posting['DATE_CREATE']->add($mailingChain['TIME_SHIFT'] . ' minutes');
                         $mailingChainFields['STATUS'] = MailingChainTable::STATUS_SEND;
                         $mailingChainFields['POSTING_ID'] = $posting['ID'];
                     }
                 }
                 MailingChainTable::update($mailingChainPrimary, $mailingChainFields);
                 $eventData = array('MAILING_CHAIN' => $mailingChain);
                 $event = new \Bitrix\Main\Event('sender', 'OnAfterMailingChainSend', array($eventData));
                 $event->send();
             } else {
                 MailingChainTable::update($mailingChainPrimary, array('STATUS' => MailingChainTable::STATUS_END));
             }
         } else {
             return static::getAgentName($mailingChainId);
         }
     }
     return "";
 }
Example #9
0
File: Ftp.php Project: schpill/thin
 /**
  * Remove directory on FTP server
  *
  * @param string $directory
  * @return bool
  */
 public function rmdir($directory = null)
 {
     // attempt remove dir
     if (ftp_rmdir(static::$_stream, $directory)) {
         // success
         return true;
         // fail
     } else {
         static::$error = "Failed to remove directory \"{$directory}\"";
         return false;
     }
 }
Example #10
0
 /**
  * Set the error messages array - probably translations
  * 
  * @param array $errorMessages
  * @see \Validator::$error
  */
 public static function setMessages(array $errorMessages)
 {
     static::$error = $errorMessages;
 }
Example #11
0
 public static function error($err)
 {
     static::$error = $err;
 }