вторник, 30 декабря 2014 г.

Yii - createAbsoluteUrl, createUrl


<?php echo $this->createAbsoluteUrl('', array("id" => $id)) . "<br>"; echo $this->createUrl('', array("id" => $id)); ?>

На выходе:
  • http://bio/index.php?r=ad/view&id=
  • /index.php?r=ad/view&id=

четверг, 25 декабря 2014 г.

Yii Количество просмотров страницы (Yii Number of page views)

Мой вариант:
public function actionView($id)
        {
            $model = $this->loadModel($id);
            if(!Yii::app()->request->cookies[$id])
                {
                    $cookie = new CHttpCookie($id, true);   
                    $cookie->expire = time() + 3600;                       
                    Yii::app()->request->cookies[$id] = $cookie;   
                    //сохраняем в БД в поле "hits" (не забудьте создать)
                    $model->saveCounters(array('hits' => 1));
                }
           
            $this->render('view', array('model'=>$model,));
        }

Источники: 

вторник, 23 декабря 2014 г.

Yii Booster popover tooltip

Обязательные параметры(Required parameters): rel="popover" и rel="tooltip"
  • <a href="#" rel="tooltip" data-placement="left" data-trigger = "hover" title="" data-html="true" data-title="<strong>placement</strong><br>Tooltip on left">Tooltip</a>
    
  • stackoverflow.com
<?php Yii::app()->clientScript->registerScript("", "$('.ipopover').popover();", CClientScript::POS_READY) ?>
<?php echo CHtml::Link('<i class="icon-info-sign"></i>', null, array(
    'class' => 'ipopover',
    'data-trigger' => 'hover',
    'data-title' => 'Your title',
    'data-content' => 'Your content',
))?>

пятница, 7 ноября 2014 г.

четверг, 30 октября 2014 г.

Yii 2 - Pagination


...\controllers\SiteController.php

 public function actionNews()
 {
  $query = News::find()->count();

  $pages = new Pagination([
   'totalCount' => $query,
   'defaultPageSize' =>10,
  ]);

  $models = News::find()->offset($pages->offset)->limit($pages->limit)->orderBy("date DESC")->all();

  return $this->render('news', [
  'models' => $models,
   'pages' => $pages,
  ]);
 }

..\views\site\news.php

<div class="row">
 <div class="col-md-7">
  <?php foreach ($models as $model): ?> 
   
    <h1 class="page-header"><?= $model->title ?> <small> <?php echo $model['date'] ?></small></h1>
    <p><?= $model->article ?></p>
   
  <?php endforeach; ?>
    </div>
 <div class="col-md-5">
 <?PHP
 // display pagination
 echo LinkPager::widget(['pagination' => $pages,]);  
 var_dump($pages);
 ?>
  </div>
</div>
 

пятница, 27 июня 2014 г.

Notepad++ Plugin - Emmet адаптируем для Bootstrap, jQuery

Мне очень нравится плагин Emmet для Notepad++ но в нем не хватает snippets для часто мною используемых библиотек jQuery & Bootstrap. Для их подключения использовал Bootstrap CDN
  1. Создадим сами snippets
    • "jQuery": "script[src=https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js]",
    • "bs:js": "script[src=https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js]",
    • "bs:css": "link[href=https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css]",
    • "html:bs": "!!!+html>(head>meta[charset=UTF-8]+title{${1:Document}}+bs:css)+(body>jQuery+bs:js)",
  2. Отредактируем файл snippets.json который у меня находится по пути "c:\Program Files (x86)\Notepad++\plugins\EmmetNPP\emmet\snippets.json"
    Замечание: если у вас как и у меня Notepad++ установлен в папку по умолчанию - "Program Files", windows вам не даст его редактировать, лучше скопируйте его в другую папку и после редактирования замените оригинал.


понедельник, 20 января 2014 г.

Как достать видео или любой другой фаил из кеша(cache) google chrome

Предыстория: Было видео на Youtube и его удалили, решил достать из кеша.
C:\Users\\AppData\Local\Google\Chrome\User Data\Default\Cache у нас 1000 фалов без расширения найти практически не возможно но меня это не остановило, следующий шаг команда about:cache в браузере, видим url'ы, делаем поиск по нашей ссылке, идем по ссылке и УРА )