From 3d0e60939a73405b4f6f175e5aef287a8c214eef Mon Sep 17 00:00:00 2001
From: Vitaliy
Date: Mon, 15 Feb 2016 10:46:28 +0200
Subject: [PATCH] 15.02.16
---
common/models/Fields.php | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
frontend/assets/FancyboxAsset.php | 39 +++++++++++++++++++++++++++++++++++++++
frontend/controllers/AccountsController.php | 2 +-
frontend/controllers/PerformerController.php | 5 ++++-
frontend/views/accounts/gallery.php | 1 +
frontend/views/performer/gallery.php | 28 ++++++----------------------
6 files changed, 99 insertions(+), 24 deletions(-)
create mode 100644 frontend/assets/FancyboxAsset.php
diff --git a/common/models/Fields.php b/common/models/Fields.php
index d39e75c..dcd60fc 100755
--- a/common/models/Fields.php
+++ b/common/models/Fields.php
@@ -104,4 +104,52 @@ class Fields extends \yii\db\ActiveRecord
}
}
}
+
+
+ /**
+ * @param $post - array with field data
+ * @param $table_id - row id in model table
+ * @param $table_name - madel table name
+ * @param $language - language id
+ */
+
+ public static function saveFieldVideoData($post,$table_id,$table_name, $language){
+
+ self::deleteAll(['table_id'=>$table_id, 'table_name'=>$table_name, 'language' => $language, 'field_type' => array_keys($post)]);
+
+ if($post){
+
+
+ foreach($post as $k => $field){
+
+
+
+ foreach($field as $parent_key => $row){
+
+ foreach($row as $key => $value){
+
+ preg_match('/src=\"(.[^"]*)\"/', $value[array_keys($value)[0]], $video_url);
+
+ if(isset($video_url[1]) && !empty($video_url[1])){
+
+ $field_model = new Fields();
+ $field_model->field_name = array_keys($value)[0];
+ $field_model->value = $video_url[1].'?showinfo=0&autoplay=0';
+ $field_model->table_name = $table_name;
+ $field_model->table_id = $table_id;
+ $field_model->field_type = $k;
+ $field_model->language = 'ru';
+ $field_model->parent_key = $parent_key;
+ $field_model->key = $key;
+ $field_model->save();
+
+ }
+
+
+ }
+
+ }
+ }
+ }
+ }
}
diff --git a/frontend/assets/FancyboxAsset.php b/frontend/assets/FancyboxAsset.php
new file mode 100644
index 0000000..f96071b
--- /dev/null
+++ b/frontend/assets/FancyboxAsset.php
@@ -0,0 +1,39 @@
+
+ * @since 2.0
+ */
+class FancyboxAsset extends AssetBundle
+{
+ public $sourcePath = '@bower/fancybox/';
+
+ public $css = [
+ 'source/jquery.fancybox.css',
+ 'source/helpers/jquery.fancybox-buttons.css',
+ 'source/helpers/jquery.fancybox-thumbs.css'
+
+ ];
+
+ public $js = [
+ 'lib/jquery.mousewheel-3.0.6.pack.js',
+ 'source/jquery.fancybox.pack.js',
+ 'source/helpers/jquery.fancybox-buttons.js',
+ 'source/helpers/jquery.fancybox-media.js',
+ 'source/helpers/jquery.fancybox-thumbs.js'
+
+
+ ];
+}
diff --git a/frontend/controllers/AccountsController.php b/frontend/controllers/AccountsController.php
index 3896a88..918c0db 100755
--- a/frontend/controllers/AccountsController.php
+++ b/frontend/controllers/AccountsController.php
@@ -258,7 +258,7 @@
if(!empty(Yii::$app->request->post('Fields'))) {
- Fields::saveFieldData(Yii::$app->request->post('Fields'), $user->id, Gallery::className(), 'ru');
+ Fields::saveFieldVideoData(Yii::$app->request->post('Fields'), $user->id, Gallery::className(), 'ru');
}
return $this->render('gallery-video', [
diff --git a/frontend/controllers/PerformerController.php b/frontend/controllers/PerformerController.php
index 8f57b80..99c67ff 100755
--- a/frontend/controllers/PerformerController.php
+++ b/frontend/controllers/PerformerController.php
@@ -193,12 +193,15 @@ class PerformerController extends Controller
'allModels' => $gallery,
]);
+ $videos = Fields::getData($user->id,Gallery::className(),'youtube');
+
$this->layout = 'gallery';
return $this->render('gallery',[
'user' => $user,
'gallery' =>$gallery,
- 'pagination' => $pagination
+ 'pagination' => $pagination,
+ 'videos' => $videos
]);
}
}
diff --git a/frontend/views/accounts/gallery.php b/frontend/views/accounts/gallery.php
index 76b8d9b..949494a 100755
--- a/frontend/views/accounts/gallery.php
+++ b/frontend/views/accounts/gallery.php
@@ -16,6 +16,7 @@
= Html::a(Yii::t('app', 'Добавить'), [ 'gallery-create' ], [ 'class' => 'btn btn-success' ]) ?>
= GridView::widget([
+ 'options'=>['class'=>'test'],
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
diff --git a/frontend/views/performer/gallery.php b/frontend/views/performer/gallery.php
index a65d015..15af196 100755
--- a/frontend/views/performer/gallery.php
+++ b/frontend/views/performer/gallery.php
@@ -13,29 +13,14 @@ $this->title = 'My Yii Application';
@@ -47,7 +32,6 @@ $this->title = 'My Yii Application';