view.php 9.19 KB
<?php
    /**
     * @var \yii\web\View $this;
     * @var \common\models\Book $model;
     */
    use artbox\core\helpers\ImageHelper;
    use artbox\core\models\Alias;
    use yii\helpers\Url;
    use yii\web\View;
    
    $this->params[ 'breadrumbs'][] = [
      'label' => 'Книги',
      'url' => Url::to(['book/index'])
    ];
    
    $this->params['breadcrumbs'][] = $model->title;
    
    /**
     * @var \artbox\core\forms\Module $module
     * @var \artbox\core\forms\Module $moduleAnswer
     */
    $module = \Yii::$app->getModule('comments');
    $module->inputOptions += ['entity_id' => [
        'type'    => 'hiddenInput',
        'options' => ['value' => $model->id],
    ]];
    $module->inputOptions += ['entity' => [
        'type'    => 'hiddenInput',
        'options' => ['value' => \common\models\Book::class],
    ]];
    $module->inputOptions += ['parent_id' => [
        'type'    => 'hiddenInput',
        'options' => ['value' => ''],
    ]];
    
    $moduleAnswer = \Yii::$app->getModule('commentsChild');
    $moduleAnswer->inputOptions += ['book_id' => [
        'type'    => 'hiddenInput',
        'options' => ['value' => $model->id],
    ]];
    $moduleAnswer->inputOptions += ['parent_id' => [
        'type'    => 'hiddenInput',
        'options' => ['value' => ''],
    ]];
    $link = \Yii::$app->request->absoluteUrl;
    $js = <<<JS
    var link = "{$link}";
    var title = "{$model->title}";
    $(document).on('click','.facebook_link', function(e) {
      e.preventDefault();
      window.open('http://www.facebook.com/sharer/sharer.php?u='+link);
    });
    
    $(document).on('click','.twitter_link', function(e) {
      e.preventDefault();
      window.open('https://twitter.com/intent/tweet?text='+title+'&url='+link);
    });
    
     $(document).on('click','.google_link', function(e) {
      e.preventDefault();
      window.open('https://plus.google.com/share?url='+link);
    });

JS;

$this->registerJs($js, View::POS_READY);
    /**
     * @var \artbox\core\components\SeoComponent $seo;
     */
    $seo = \Yii::$app->get('seo');
    $seo->forseLoaded(false);
    $seo->setAlias(new Alias([
      'title' => 'Книга \''.$model->title.'\' - Автор: '.$model->author->name.' '.$model->author->secondname.' | Бібліотека Юрія Бутусова',
      'description' => $model->preview
                             ]))
    ?>

<section class="section-card">
    <div class="container">
        <div class="row">
          
            <div class="col-xs-12 col-sm-3 col-md-3 col-lg-3 card-img-col">
              <?php if ($model->image !== null){?>
                <div class="card-img">
                  <?=ImageHelper::set('@storage/books/'.$model->id.'/'.$model->image)->cropResize(262, 390)->renderImage([ 'alt'=>'Книга \''.$model->title.'\' - Автор: '.$model->author->name.' '.$model->author->secondname,  'title' => $model->title.' - '.$model->author->name.' '.$model->author->secondname])?>
                </div>
              <?php }else{ ?>
                <img src="<?='/storage/books/nobook_01.png'?>" alt="Книга <?="'".$model->title.'\' - Автор: '.$model->author->name.' '.$model->author->secondname?>"  title="Книга <?="'".$model->title.'\' - Автор: '.$model->author->name.' '.$model->author->secondname?>">
              <?php } ?>
            </div>
            <div class="col-xs-12 col-sm-4 col-md-4 col-lg-4">
                <h1 class="style card-title"><?=$model->title?></h1>
              
                <div class="style card-autor-wrapp">
                    <?php if (!empty($model->author->avatar)){?>
                    <div class="autor-img">
                        <div><?=ImageHelper::set('@storage/author/'.$model->author->id.'/'.$model->author->avatar)->cropResize(84, 84)->renderImage()?></div>
                    </div>
                    <?php } ?>
                    <div class="autor-name"><?=$model->author->name?> <?=$model->author->secondname?></div>
                </div>
              
                <div class="style card-btns-price-wr">
                  <?php if ($model->price == null){ ?>
                    <div>
                      
                        <div class="price-block">
                            <!--"необхідно" выводится без класса '.have'-->
                            <!--<p><b>110000</b> грн. <span>необхідно</span></p>-->
                          <?php if (!empty($support)){
                            $sum = 0;
                            foreach ($support as $item){
                              $sum += $item->sum;
                            }
                            ?>
                            <p><b><?=$sum?></b> грн. <span class="have">зібрано</span></p>
                            <p><b><?=count($support)?></b> <span class="supporters">підтримувачів</span></p>
                          <?php } ?>
                        </div>
                        <div class="style books-btn books-btn-new">
                            <a href="<?=Url::to(['support/index', 'book_id' => $model->id])?>" class="btn_">Підтримати</a>
                        </div>
                    </div>
                  <?php } else {?>
                    <div>
                        <div class="style price-books-catalog"><div>вартість <b>150</b> грн.</div></div>
                        <div class="style books-btn books-btn-buy">
                            <a href="#" class="btn_">придбати</a>
                        </div>
                    </div>
                  <?php } ?>
                </div>
                <div class="style card-seti-wr">
                    <p>поділитися в соціальних мережах</p>
                    <!--вставлять ссылку на эту страницу сюда {link-this-page}-->
                    <ul>
                        <li class="card-s1"><a class="facebook_link" target="_blank" rel="nofollow" href="#"></a></li>
                        <li class="card-s2"><a class="twitter_link" target="_blank" rel="nofollow" href="#"></a></li>
                        <li class="card-s3"><a class="google_link" target="_blank" rel="nofollow" href="#"></a></li>
                    </ul>
                </div>
            </div>
            <div class="col-xs-12 col-sm-5 col-md-5 col-lg-5">
                <div class="card-text style">
                  <p><?=$model->preview?></p>
                </div>
            </div>
        </div>
    </div>
</section>
<?php if ($model->description != null){?>
<section class="section-card-description">
    <div class="container">
        <div class="row">
            <div class="col-xs-12 col-sm-12">
                <div class="card-desk-title">Опис</div>
            </div>
            <div class="col-xs-12 col-sm-12 card-desk-text blog-view">
              <?=$model->description; ?>
            </div>
            
            <div style="display: none;" class="style mob-card-desk-btn" data-hide="згорнути" data-show="розгорнути">
                <span>розгорнути</span>
            </div>
        </div>
    </div>
</section>
<?php } ?>
<section class="section-card-title">
    <div class="container">
        <div class="row">
            <div class="col-xs-12 col-sm-12">
                <div class="card-desk-title">коментарі</div>
            </div>
        </div>
        <div class="row">
          
            <div class="col-xs-12 col-sm-6 col-md-6 comments-card-col">
                <?php if (!empty($model->activeComments)){?>
                <div class="hidden-comments-form-card style" style="display: none;">
                    <div class="style card-form-add-wrapp">
                        <?php $moduleAnswer->renderForm($this)?>
                    </div>
                </div>
                <div class="style">
                   <?php foreach ($model->activeComments as $comment){?>
                    <div class="comments-card-wr style">
                        <div class="style comments-card-autor"><?=$comment->name?></div>
                        <div class="style comments-card-text"><?=$comment->comment?></div>
                        <div class="style answers-wr">
                            <span data-id="<?=$comment->id?>">відповісти</span>
                        </div>
                      <?php foreach ($comment->activeComments as $child){?>
                        <div class="comments-card-ansvers-text-wr style">
                            <div class="style comments-card-autor-ansvers comments-card-autor"><?=$child->name?></div>
                            <div class="comments-card-text style">
                            <?=$child->comment?>
                            </div>
                        </div>
                      <?php } ?>
                    </div>
                    <?php } ?>
                </div>
                <?php } ?>
            </div>
       
            <div class="col-xs-12 hidden-sm col-md-1"></div>
            <div class="col-xs-12 col-sm-6 col-md-5">
                <div class="style card-form-add-wrapp">
                    <?php $module->renderForm($this)?>
                </div>
            </div>
        </div>
    </div>
</section>