Monday, March 13, 2017

Popup in yii2


yii\bootstrap\Modal::begin([
  'id' => 'myModal',
   'size' => 'modal-lg',
   'header' => '',
   'clientOptions' => ['backdrop' => 'static', 'keyboard' => true]
  ]);


 yii\bootstrap\Modal::end();

      Html::a(Yii::t('app', ' {modelClass}', [
       'modelClass' => 'Add More Skill',
       ]), ['my/newskill'], ['class' => 'btn btn-success',
       'data-toggle'=>"modal",
       'data-target'=>"#myModal",
       'data-title'=>"My Skill",]);

$this->registerJs("
    $('#myModal').on('show.bs.modal', function (event) {
        var button = $(event.relatedTarget)
        var modal = $(this)
        var title = button.data('title')
        var href = button.attr('href')
        modal.find('.modal-title').html(title)
        modal.find('.modal-body').html('')
        $.post(href)
            .done(function( data ) {
                modal.find('.modal-body').html(data)
            });
        })
");
In controller
return $this->renderAjax('newskill', [
            'model' => $model,
            'services' => $services,
            'subservices' => $subservices,
            'basicinfo' => $basicinfo,
        ]);

Sunday, March 12, 2017

Save multiple textInput Array value using Yii2


controller action:

namespace app\controllers;

use Yii;
use yii\base\Model;
use yii\web\Controller;
use app\models\Experienceskills;

    public function actionExperience()
    {
        $settings = Experienceskills::find()->indexBy('id')->all();
        if (Model::loadMultiple($settings, Yii::$app->request->post()) && Model::validateMultiple($settings)) {
            foreach ($settings as $setting) {
                $setting->save(false);
            }
            Yii::$app->session->setFlash(
                'success',
                Yii::t(
                    'user',
                    'Your experience have been updated.'
                )
            );
            return $this->redirect(['profile']);
        }

        return $this->render('updateexp', ['settings' => $settings]);
    }

view:

use yii\helpers\Html;
use yii\widgets\ActiveForm;

$form = ActiveForm::begin();

foreach ($settings as $index => $setting) {
 echo $form->field($setting, "[$index]skill_id")->label('skill');
echo $form->field($setting, "[$index]experience_year")->label('Experience');
}

ActiveForm::end();

yii2 Ajax Request Post


Html::a($service->name_en,'#', [
                         'title' => 'Ajax Title',
                         'onclick'=>"
                         $.ajax({
                        type     :'POST',
                        cache    : false,
                        data: {id: $service->id},
                        url  : '".Url::to(['site/cattt'])."',
                        success  : function(response) {
                                $('#showw').html(response);
                        },
                        error: function(){
                          console.log('failure');
                        }
                        });return false;",
                       ])

Wednesday, January 11, 2017

renderPartial In Yii


$this->renderPartial(
        'application.views.user.index',
        array(
            'data'=>'Welcome',
            'model'=>$model,
        ));


 $this->renderPartial('webroot.themes.eusiajb.views.layouts.tpl_footer');

Wednesday, January 4, 2017