Esempio n. 1
0
 public function checkOn(C2goActiveRecord $model)
 {
     $modelName = get_class($model);
     $modelPK = $model->{$model->tableSchema->primaryKey};
     $CDbCriteria = unserialize($this->criteria);
     $CDbCriteria->addCondition(':pk_id = t.' . $model->tableSchema->primaryKey);
     $CDbCriteria->params[':pk_id'] = $modelPK;
     if ($model::model()->count($CDbCriteria)) {
         $AutosearchResult = new AutosearchResult();
         $AutosearchResult->model = $modelName;
         $AutosearchResult->model_id = $modelPK;
         $AutosearchResult->autosearch_id = $this->autosearch_id;
         $AutosearchResult->user_id = $this->user_id;
         try {
             $AutosearchResult->save();
         } catch (CDbException $e) {
             if ($e->errorInfo[1] != '1062') {
                 throw $e;
             }
         }
     }
 }
Esempio n. 2
0
 public function actionIndex()
 {
     Yii::app()->setImport(['application.modules.cargo.models.*', 'vendor.cmail.*']);
     $criteria = new CDbCriteria();
     $criteria->condition = 'status = :status';
     $criteria->params = [':status' => AutosearchResult::NEW_RESULT];
     $criteria->group = 'user_id';
     $results = AutosearchResult::model()->findAll($criteria);
     foreach ($results as $user) {
         $criteria = new CDbCriteria();
         $criteria->condition = 'status = :status AND user_id = :user_id';
         $criteria->params = [':status' => AutosearchResult::NEW_RESULT, ':user_id' => $user->user_id];
         $resultCount = AutosearchResult::model()->count($criteria);
         if ($resultCount > 0) {
             $this->sendMail($user->user_id, $resultCount);
         }
     }
 }
Esempio n. 3
0
 public function getAutosearchCount()
 {
     if (empty($this->autosearch_visit)) {
         return 0;
     } else {
         $criteria = new CDbCriteria();
         $criteria->addCondition(':autosearch_visit < t.create');
         $criteria->params = [':autosearch_visit' => $this->autosearch_visit];
         return AutosearchResult::model()->count($criteria);
     }
 }
?>
<tr class="<?php 
echo $data->status == $data::NEW_RESULT ? 'element new' : 'element';
?>
" onclick="window.location.href = '<?php 
echo $class::getModelLink($data->model_id);
?>
'">
    <td>
        <?php 
echo $data->autosearch->name;
?>
    </td>
    <td>
        <?php 
echo AutosearchResult::model()->resultTotalCount($data->model) . ' / ' . AutosearchResult::model()->resultCount($data->model);
?>
    </td>
    <td>
        <?php 
echo Yii::app()->timezonefix->date($data, 'create');
?>
    </td>
</tr>
<?php 
if ($data->status == $data::NEW_RESULT) {
    ?>
<script>
	$(document).ready(function(){
		setViewed(<?php 
    echo $data->autosearch_result_id;
 public function actionViewed()
 {
     if (Yii::app()->request->isAjaxRequest) {
         AutosearchResult::model()->updateByPk($_GET['id'], ['status' => AutosearchResult::VIEWED]);
     }
 }
Esempio n. 6
0
<tr class="element">
    <td>
        <?php 
echo $data->name;
?>
    </td>
    <td>
        <?php 
echo Yii::app()->timezonefix->date($data, 'create');
?>
    </td>
    <td>
		<?php 
echo AutosearchResult::model()->resultCount($data->model);
?>
    </td>
    <td>
        <div class="row">
            <section class="col-md-12">
            <?php 
$this->widget('bootstrap.widgets.TbButton', ['url' => '/cabinet/autosearch/edit/' . $data->autosearch_id, 'buttonType' => 'link', 'label' => Yii::t('CabinetModule.default', 'Редактировать')]);
?>
            </section>
		</div>
		<div class="row">
            <section class="col-md-12">
                <?php 
$this->widget('bootstrap.widgets.TbButton', ['url' => '/cabinet/autosearch/delete/' . $data->autosearch_id, 'buttonType' => 'link', 'label' => Yii::t('CabinetModule.default', 'Удалить')]);
?>
            </section>
        </div>
Esempio n. 7
0
    ?>
var dimensionValue='<?php 
    echo 'Авторизован';
    ?>
';<?php 
}
?>
  ga('set', 'dimension1', dimensionValue);
  ga('send', 'pageview');
</script>
</head>
<?php 
$response_count = $autosearch_count = $unread_messages_count = '';
if (!Yii::app()->user->isGuest) {
    $response_count = Yii::app()->getUser()->getProfile()->getResponceCount();
    $autosearch_count = AutosearchResult::model()->resultCount('All');
    $unread_messages_count = Yii::app()->getUser()->getProfile()->getUnreadMessagesCount();
    if ($response_count > 0) {
        $response_count = '<sup>' . $response_count . '</sup>';
    } else {
        $response_count = '';
    }
    if ($autosearch_count > 0) {
        $autosearch_count = '<sup>' . $autosearch_count . '</sup>';
    } else {
        $autosearch_count = '';
    }
    if ($unread_messages_count) {
        $unread_messages_count = '<sup id="unread_messages_count">' . $unread_messages_count . '</sup>';
    } else {
        $unread_messages_count = '<sup id="unread_messages_count"></sup>';
Esempio n. 8
0
 public function actionAutosearchresult()
 {
     if (\Yii::app()->user->isGuest) {
         throw new CHttpException(403);
     }
     $User = \Yii::app()->getUser()->getProfile();
     $criteria = new \CDbCriteria();
     $criteria->addCondition(':user_id = t.user_id');
     $criteria->params = [':user_id' => \Yii::app()->user->id];
     if (!empty($_REQUEST['filter'])) {
         $criteria->addCondition('`model`=:model');
         $criteria->params[':model'] = $_REQUEST['filter'];
     }
     $criteria->order = 'autosearch_result_id DESC';
     $this->render('autosearchresult', ['Autosearch' => \AutosearchResult::model()->findAll($criteria), 'lastVisit' => strtotime($User->autosearch_visit)]);
     $User->updateByPk($User->id, ['autosearch_visit' => new \CDbExpression('NOW()')]);
 }
<?php

$variants = array_merge(['' => Yii::t('default', 'Все')], Autosearch::model()->getModul());
?>
<div class="row">
    <div class="col-sm-12">
        <table>
            <tr>
				<?php 
$curFilter = isset($_GET['filter']) ? $_GET['filter'] : '';
foreach ($variants as $filter => $name) {
    $counter = AutosearchResult::model()->resultTotalCount($filter != '' ? $filter : 'All');
    ?>
	                <td>
						<?php 
    if ($curFilter == $filter) {
        echo $name . '<sup>' . $counter . '</sup>';
    } else {
        ?>
							<a href="/autosearch/result?filter=<?php 
        echo $filter;
        ?>
"><?php 
        echo $name;
        ?>
</a>
							<sup><?php 
        echo $counter;
        ?>
</sup>
				<?php 
 private function deleteAutosearchResult(\User $user)
 {
     $data = 'user_id = :user_id';
     $param = array(':user_id' => $user->id);
     if ($this->debug) {
         echo "    ... AutosearchResult: del " . AutosearchResult::model()->count($data, $param) . " \n";
     } else {
         AutosearchResult::model()->deleteAll($data, $param);
     }
 }