diff --git a/backend/controllers/SpeakerController.php b/backend/controllers/SpeakerController.php
index c4009ef..6dbcd1f 100755
--- a/backend/controllers/SpeakerController.php
+++ b/backend/controllers/SpeakerController.php
@@ -75,6 +75,10 @@
'name' => 'body',
'type' => Form::WYSIWYG,
],
+ [
+ 'name' => 'text1',
+ 'type' => Form::WYSIWYG,
+ ],
],
'fields' => [
[
@@ -136,6 +140,10 @@
'name' => 'position',
'type' => Form::TEXTAREA,
],
+ [
+ 'name' => 'text1',
+ 'type' => Form::WYSIWYG,
+ ],
[
'name' => 'organization',
'type' => Form::TEXTAREA,
diff --git a/common/models/speaker/Speaker.php b/common/models/speaker/Speaker.php
index cdab32e..6402e99 100755
--- a/common/models/speaker/Speaker.php
+++ b/common/models/speaker/Speaker.php
@@ -17,6 +17,7 @@
* @property integer $sort
* @property boolean $status
* @property Image $image
+ * @property string $text1
* @method ActiveQuery hasDefaultVariationRelation();
*/
class Speaker extends ActiveRecord
@@ -31,6 +32,7 @@
],
'integer',
],
+
[
[
'status',
@@ -107,9 +109,10 @@
public function attributeLabels()
{
return [
- 'sort' => \Yii::t('core', 'Sort'),
- 'status' => \Yii::t('core', 'Status'),
- 'image_id' => \Yii::t('core', 'Image'),
+ 'sort' => \Yii::t('core', 'Sort'),
+ 'status' => \Yii::t('core', 'Status'),
+ 'image_id' => \Yii::t('core', 'Image'),
+
];
}
}
\ No newline at end of file
diff --git a/common/models/speaker/SpeakerLang.php b/common/models/speaker/SpeakerLang.php
index 6a74de3..37b084c 100755
--- a/common/models/speaker/SpeakerLang.php
+++ b/common/models/speaker/SpeakerLang.php
@@ -32,6 +32,7 @@
'name',
'organization',
'position',
+ 'text1'
],
'string',
],
@@ -56,6 +57,9 @@
'name' => \Yii::t('app', 'Speaker Name'),
'organization' => \Yii::t('app', 'Organization'),
'position' => \Yii::t('app', 'Position'),
+ 'text1' => \Yii::t('app','text1'),
+
+
];
}
}
\ No newline at end of file
diff --git a/console/migrations/m181022_120253_speaker_lang_add_column_text1.php b/console/migrations/m181022_120253_speaker_lang_add_column_text1.php
new file mode 100644
index 0000000..fe0d1fd
--- /dev/null
+++ b/console/migrations/m181022_120253_speaker_lang_add_column_text1.php
@@ -0,0 +1,28 @@
+addColumn(
+ 'speaker_lang',
+ 'text1',
+ $this->text()
+ );
+
+ }
+
+ public function down()
+ {
+
+ $this->dropColumn('speaker_lang','text1');
+
+
+ }
+
+}
diff --git a/frontend/components/UrlManager.php b/frontend/components/UrlManager.php
index 443f0a9..6c614e0 100755
--- a/frontend/components/UrlManager.php
+++ b/frontend/components/UrlManager.php
@@ -79,7 +79,9 @@
]
)
->one();
+
$links[ $this->languages->getCurrent()->id ] = $request->url;
+
if ($alias !== NULL) {
$other = Alias::find()
@@ -97,10 +99,12 @@
/**
* @var Alias $item
*/
+
if ($item->language->default) {
if ($this->hideDefaultLanguagePrefix) {
$links[ $item->language->id ] = '/' . $item->value;
} else {
+
$links[ $item->language->id ] = '/' . $item->language->url . '/' . $item->value;
}
}
@@ -126,15 +130,21 @@
$params,
];
}
+ $langs = ['/ru/','/ua/','/fr/','/en/'];
foreach ($this->languages->getActive() as $key => $lang) {
- if ($this->hideDefaultLanguagePrefix and $lang->default) {
- $links[ $lang->id ] = '/' . $request->pathInfo;
+ $url12 = str_replace($langs,'',$request->url);
+ if ($this->hideDefaultLanguagePrefix and $lang->default) {
+
+ $links[ $lang->id ] = '/' . $url12;
} else {
- $links[ $lang->id ] = '/' . $key . '/' . $request->pathInfo;
+ $links[ $lang->id ] = '/' . $key . '/' . $url12;
}
}
$langLink = \Yii::$app->get('langLinks');
+ $links = array_map(function ($links){
+ return str_replace('//','/',$links);
+ },$links);
$langLink->setLinks($links);
return parent::parseRequest($request);
}
diff --git a/frontend/controllers/SiteController.php b/frontend/controllers/SiteController.php
index 9dc465b..4af531d 100755
--- a/frontend/controllers/SiteController.php
+++ b/frontend/controllers/SiteController.php
@@ -12,6 +12,7 @@
use yii\swiftmailer\Mailer;
use yii\web\BadRequestHttpException;
use yii\web\Controller;
+ use yii\web\NotFoundHttpException;
use yii\web\Response;
use yii\web\UploadedFile;
@@ -101,8 +102,33 @@
- public function actionSpeakers(){
- return $this->render('speakers');
+ public function actionSpeakers($id){
+
+
+ $currentSpeaker = Speaker::findOne($id);
+ if($currentSpeaker == null){
+ throw new NotFoundHttpException();
+ }
+ $speakers = Speaker::find()
+ ->with(
+ [
+ 'language',
+ 'image',
+ ]
+ )
+ ->where([ 'status' => true ])
+ ->orderBy('sort')
+ ->all();
+ $partners = Logo::find()
+ ->all();
+ return $this->render(
+ 'speakers',
+ [
+ 'speakers' => $speakers,
+ 'partners' => $partners,
+ 'currentSpeaker' => $currentSpeaker,
+ ]
+ );
}
diff --git a/frontend/views/site/index.php b/frontend/views/site/index.php
index c1104e9..f612ebe 100755
--- a/frontend/views/site/index.php
+++ b/frontend/views/site/index.php
@@ -7,6 +7,23 @@
use artbox\core\helpers\ImageHelper;
use artbox\core\helpers\Url;
use frontend\assets\SliderAsset;
+ use frontend\widgets\SpeakersWidget;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
$currentLang=\artbox\core\models\Language::getCurrent()->url;
SliderAsset::register($this);
?>
@@ -53,45 +70,11 @@
-
-