<div class="col-md-6 col-xs-6"> หมายเลขหนังสือเดินทาง<?php echo $form->field($model2, 'drivers_licence')->textInput(['maxlength' => true])->label(false); ?> </div> </div> <div class="panel panel-danger"> <div class="panel-heading">แนบหลักฐานให้ครบถ้วน และถูกต้องตามรายการ</div> <div class="penel-body well"> <p><i class="glyphicon glyphicon-send"></i> ภาพถ่ายหนังสือเดินทางของผู้ขับรถ <i class="glyphicon glyphicon-send"></i>ภาพถ่ายใบอนุญาตขับรถตามลักษณะที่ขออนุญาต</p> <div class="row"> </div><span class="label label-danger">กรุณาตั้งชื่อไฟล์ ตามชนิดเอกสาร</span> <?php echo PopoverX::widget(['header' => 'การตั้งชื่อเอกสาร', 'type' => PopoverX::TYPE_INFO, 'placement' => PopoverX::ALIGN_TOP, 'size' => PopoverX::SIZE_LARGE, 'content' => Html::img('images/sampledoc.gif'), 'toggleButton' => ['label' => 'คลิก เพื่อดูตัวอย่าง', 'class' => 'label label-primary']]); ?> <?php echo $form->field($model2, 'docs[]')->widget(FileInput::classname(), ['options' => ['multiple' => true], 'pluginOptions' => ['initialPreview' => $model2->initialPreview($model2->docs, 'docs', 'file'), 'initialPreviewConfig' => $model2->initialPreview($model2->docs, 'docs', 'config'), 'allowedFileExtensions' => ['pdf', 'jpg', 'png', 'docx', 'xls', 'xlsx'], 'showPreview' => true, 'showCaption' => true, 'showRemove' => true, 'showUpload' => true, 'overwriteInitial' => false]])->label(false); ?> </div> </div> <div class="form-group"> <?php echo Html::submitButton($model2->isNewRecord ? '<i class="fa fa-plus"></i> เพิ่มข้อมูลคนขับ' : 'Update', ['class' => $model2->isNewRecord ? 'btn btn-success' : 'btn btn-primary']); ?> </div> <?php ActiveForm::end(); ?>
use kartik\widgets\FileInput; use kartik\icons\Icon; use kartik\popover\PopoverX; use kartik\password\PasswordInput; /** * @var yii\web\View $this * @var common\models\Osusuarios $model */ $this->title = $model->usu_nombre; $this->params['breadcrumbs'][] = ['label' => Yii::t('admin', 'Osusuarios'), 'url' => ['index']]; $this->params['breadcrumbs'][] = $model->usu_nomusu; ?> <div class="osusuarios-view"> <!--<div class="page-header"> <h1><?php echo Html::encode($this->title); ?> </h1> </div>--> <?php echo DetailView::widget(['model' => $model, 'condensed' => false, 'hover' => true, 'mode' => Yii::$app->request->get('edit') == 't' ? DetailView::MODE_EDIT : DetailView::MODE_VIEW, 'panel' => ['heading' => $this->title, 'type' => DetailView::TYPE_INFO], 'formOptions' => ['options' => ['enctype' => 'multipart/form-data']], 'attributes' => [['attribute' => 'uploadedFile', 'format' => 'raw', 'value' => $model->usu_type ? '<a href="#" class="thumbnail"> <img src="data:' . $model->usu_type . ';base64,' . base64_encode($model->usu_foto) . '" alt="" class=""> </a>' : '<a href="#" class="thumbnail"> <img src="' . Yii::$app->params['assetUrl'] . 'images/noavatar_man.png" alt="" class=""> </a>', 'type' => DetailView::INPUT_WIDGET, 'widgetOptions' => ['class' => FileInput::classname(), 'pluginOptions' => ['showCaption' => false, 'showRemove' => false, 'showUpload' => false, 'browseClass' => 'btn btn-primary btn-block', 'browseIcon' => '<i class="glyphicon glyphicon-camera"></i> ', 'browseLabel' => Yii::t('admin', 'Select Photo')], 'options' => ['accept' => 'image/*']]], 'usu_nomusu', 'usu_nombre', ['attribute' => 'usu_feccre', 'format' => ['datetime', isset(Yii::$app->modules['datecontrol']['displaySettings']['datetime']) ? Yii::$app->modules['datecontrol']['displaySettings']['datetime'] : 'd-m-Y H:i:s A'], 'type' => DetailView::INPUT_WIDGET, 'displayOnly' => true, 'widgetOptions' => ['class' => DateControl::classname(), 'type' => DateControl::FORMAT_DATETIME]], ['attribute' => 'usu_ulting', 'format' => ['datetime', isset(Yii::$app->modules['datecontrol']['displaySettings']['datetime']) ? Yii::$app->modules['datecontrol']['displaySettings']['datetime'] : 'd-m-Y H:i:s A'], 'type' => DetailView::INPUT_WIDGET, 'displayOnly' => true, 'widgetOptions' => ['class' => DateControl::classname(), 'type' => DateControl::FORMAT_DATETIME]], ['attribute' => 'usu_activo', 'format' => 'raw', 'value' => $model->usu_activo ? '<span class="label label-success">Activo</span>' : '<span class="label label-danger">Inactivo</span>', 'type' => DetailView::INPUT_SWITCH], ['attribute' => 'usu_ultemp', 'displayOnly' => true]], 'deleteOptions' => ['url' => ['delete', 'id' => $model->usu_id], 'data' => ['confirm' => Yii::t('app', 'Are you sure you want to delete this item?'), 'method' => 'post']], 'enableEditMode' => true, 'buttons' => [['label' => Icon::show('key'), 'title' => Yii::t('admin', 'Change Password'), 'html' => PopoverX::widget(['header' => '<i class="glyphicon glyphicon-lock"></i> ' . Yii::t('admin', 'Change Password'), 'placement' => PopoverX::ALIGN_BOTTOM_RIGHT, 'size' => PopoverX::SIZE_LARGE, 'footer' => Html::submitButton(Yii::t('admin', 'Enviar'), ['class' => 'btn btn-sm btn-primary']), 'content' => '<label class="control-label">' . Yii::t('admin', 'Password') . '</label>' . PasswordInput::widget(['model' => $model, 'attribute' => 'passwd']), 'toggleButton' => ['label' => Icon::show('key'), 'class' => 'btn btn-xs btn-info', 'data-toggle' => 'tooltip', 'data-original-title' => Yii::t('admin', 'Change Password')]])]]]); ?> </div>
<?php use kartik\popover\PopoverX; use yii\helpers\Html; use yii\widgets\ActiveForm; $content = '<p class="text-justify">' . 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor.' . '</p>'; // primary echo PopoverX::widget(['header' => 'Hello world', 'type' => PopoverX::TYPE_PRIMARY, 'placement' => PopoverX::ALIGN_BOTTOM, 'content' => $content, 'toggleButton' => ['label' => 'Primary', 'class' => 'btn btn-primary']]); // info echo PopoverX::widget(['header' => 'Hello world', 'type' => PopoverX::TYPE_INFO, 'placement' => PopoverX::ALIGN_BOTTOM, 'content' => $content, 'toggleButton' => ['label' => 'Info', 'class' => 'btn btn-info']]); // success echo PopoverX::widget(['header' => 'Hello world', 'type' => PopoverX::TYPE_SUCCESS, 'placement' => PopoverX::ALIGN_BOTTOM, 'content' => $content, 'toggleButton' => ['label' => 'Success', 'class' => 'btn btn-success']]); // danger echo PopoverX::widget(['header' => 'Hello world', 'type' => PopoverX::TYPE_DANGER, 'placement' => PopoverX::ALIGN_BOTTOM, 'content' => $content, 'toggleButton' => ['label' => 'Danger', 'class' => 'btn btn-danger']]); // warning echo PopoverX::widget(['header' => 'Hello world', 'type' => PopoverX::TYPE_WARNING, 'placement' => PopoverX::ALIGN_BOTTOM, 'content' => $content, 'toggleButton' => ['label' => 'Warning', 'class' => 'btn btn-warning']]);
/** * Renders the widget */ protected function renderWidget() { if (!empty($this->ip)) { $this->api .= $this->ip; } if (empty($this->flagWrapperOptions['id'])) { $this->flagWrapperOptions['id'] = $this->options['id'] . '-flag'; } $loadData = ArrayHelper::remove($this->loadingOptions, 'message', Yii::t('kvip', 'Fetching location info...')); $this->defaultFieldValues += ['flag' => '<i class="glyphicon glyphicon-question-sign text-warning"></i>', 'table' => '', 'country_code' => Yii::t('kvip', 'N.A.'), 'country_name' => Yii::t('kvip', 'Unknown'), 'ip' => '', 'region_code' => '', 'region_name' => '', 'city' => '', 'zip_code' => '', 'time_zone' => '', 'latitude' => '', 'longitude' => '', 'metro_code' => '']; $popoverButton = $popoverContent = $inlineContent = $flag = ''; extract($this->template); if ($this->showFlag) { Icon::map($this->getView(), Icon::FI); if (empty($this->flagOptions['class'])) { $this->flagOptions['class'] = 'flag-icon'; } $flag = Html::tag('span', $this->defaultFieldValues['flag'], $this->flagWrapperOptions); } foreach ($this->defaultFieldValues as $tag => $value) { if ($this->showPopover) { $popoverButton = $this->parseTag($popoverButton, $tag, $value, $flag, 'p'); $popoverContent = $this->parseTag($popoverContent, $tag, $value, $flag, 'i'); } else { $inlineContent = $this->parseTag($inlineContent, $tag, $value, $flag, 'i'); } } $content = self::renderTag($loadData, $this->loadingOptions, 'div'); if ($this->showPopover) { $header = isset($this->contentHeader) ? $this->contentHeader : Yii::t('kvip', 'IP Position Details'); $this->popoverOptions['header'] = $this->contentHeaderIcon . $header; $popOpts = $this->popoverOptions; if (!isset($popOpts['toggleButton']) && !isset($popOpts['toggleButton']['class'])) { $this->popoverOptions['toggleButton']['class'] = 'kv-ipinfo-button'; } $this->popoverOptions['toggleButton']['label'] = $popoverButton; $this->popoverOptions['content'] = self::renderTag($content . '<div class="kv-hide">' . $popoverContent . '</div>', $this->options); $content = PopoverX::widget($this->popoverOptions); } else { $content = self::renderTag($content . '<div class="kv-hide">' . $inlineContent . '</div>', $this->options); } $this->registerAssets(); echo $content; }
/** * Renders the widget * * @return string */ protected function renderWidget() { $ip = $ipParam = $params = ''; if (!empty($this->ip)) { $ip = Html::encode($this->ip); $ipParam = "?ip={$ip}"; } if ($this->showPosition) { $params = $ipParam . (!empty($this->ip) ? '&position=true' : '?position=true'); } try { $json = file_get_contents(self::API_INFO . $params); } catch (\Exception $e) { return empty($this->errorData) ? '' : static::renderTag($this->errorData, $this->errorDataOptions); } if ($this->showJson) { return $json; } $out = Json::decode($json); $noData = empty($this->noData) ? Yii::t('kvip', 'No data found for IP address {ip}.', ['ip' => '<pre style="margin:5px 0 0 0">' . $this->ip . '</pre>']) : $this->noData; $noData = static::renderTag($noData, $this->noDataOptions, 'div'); $credits = ''; if ($this->showCredits) { $label = ArrayHelper::remove($this->creditsOptions, 'label', Yii::t('kvip', 'Revalidate IP info')); $credits = Html::a($label, self::API_HOME, $this->creditsOptions); } $content = ''; if (is_array($out)) { $code = ArrayHelper::getValue($out, 'country_code', ''); if (empty($code) || $code == 'XX') { $content = $noData . $credits; } else { $content = Html::beginTag('table', $this->contentOptions) . "\n"; $fields = empty($this->fields) ? array_keys($this->_defaultFields) : $this->fields; foreach ($fields as $field) { if (isset($out[$field])) { $label = $this->_defaultFields[$field]; $value = $out[$field]; $content .= "<tr><th>{$label}</th><td>{$value}</td>\n"; } } $content .= "</table>\n{$credits}"; } } $content = static::renderTag($content, $this->options); if ($this->showFlag) { if (!isset($this->flagOptions['alt']) && !empty($ip)) { $this->flagOptions['alt'] = $ip; } $flag = Html::img(self::API_FLAG . $ipParam, $this->flagOptions); if ($this->showPopover) { $header = isset($this->contentHeader) ? $this->contentHeader : Yii::t('kvip', 'IP Position Details'); $this->popoverOptions['header'] = $this->contentHeaderIcon . $header; if (!isset($this->popoverOptions['toggleButton']) && !isset($this->popoverOptions['toggleButton']['class'])) { $this->popoverOptions['toggleButton']['class'] = 'btn btn-xs btn-link'; } if (!isset($this->popoverOptions['toggleButton']['style'])) { $this->popoverOptions['toggleButton']['style'] = 'margin:0'; } $this->popoverOptions['toggleButton']['label'] = $flag; $this->popoverOptions['content'] = $content; $content = PopoverX::widget($this->popoverOptions); } else { $content = $flag . $content; } } return $content; }
/** * Renders the widget * * @return string */ protected function renderWidget() { $ip = $ipParam = ''; $params = []; if (!empty($this->ip)) { $ip = Html::encode($this->ip); $ipParam = "?ip={$ip}"; $params['ip'] = $ip; } if ($this->showPosition) { $params['position'] = true; } $loadData = ArrayHelper::remove($this->loadingOptions, 'message', Yii::t('kvip', 'Fetching location info...')); $content = self::renderTag(self::renderTag($loadData, $this->loadingOptions, 'div'), $this->options); if ($this->showFlag) { if (!isset($this->flagOptions['alt'])) { $this->flagOptions['alt'] = empty($ip) ? Yii::t('kvip', 'No Flag') : $ip; } $flag = Html::img(self::API_FLAG . $ipParam, $this->flagOptions); if ($this->showPopover) { $header = isset($this->contentHeader) ? $this->contentHeader : Yii::t('kvip', 'IP Position Details'); $this->popoverOptions['header'] = $this->contentHeaderIcon . $header; if (!isset($this->popoverOptions['toggleButton']) && !isset($this->popoverOptions['toggleButton']['class'])) { $this->popoverOptions['toggleButton']['class'] = 'btn btn-xs btn-link'; } if (!isset($this->popoverOptions['toggleButton']['style'])) { $this->popoverOptions['toggleButton']['style'] = 'margin:0'; } $this->popoverOptions['toggleButton']['label'] = $flag; $this->popoverOptions['content'] = $content; $content = PopoverX::widget($this->popoverOptions); } else { $content = $flag . $content; } } $this->registerAssets($params); return $content; }
$menuItems[] = [ 'label' => 'Salir (' . Yii::$app->user->identity->username . ')', 'url' => ['/site/logout'], 'linkOptions' => ['data-method' => 'post'] ]; */ $u = User::findOne(Yii::$app->user->getId()); $sinImg = Yii::$app->urlManager->createUrl('images/sinfoto.png'); if (!empty($u->foto)) { $imgFile = Yii::$app->urlManager->createUrl('images/usuarios/' . $u->foto); $contenido = Html::img($imgFile, ['class' => 'img-thumbnail', 'onerror' => "this.src='{$sinImg}'"]); } else { $contenido = Html::img($sinImg, ['class' => 'img-thumbnail']); } $headerPopover = '<p><i>Usuario: ' . Yii::$app->user->identity->username . '</i></p>' . '<p><i>' . User::getRol(Yii::$app->user->getId())->description . '</i></p>' . '<p><i>IP: ' . Yii::$app->request->userIp . '</i></p>'; $userPopover = '<li class="dropdown"><div class="navbar-form">' . PopoverX::widget(['header' => $headerPopover, 'placement' => PopoverX::ALIGN_BOTTOM, 'type' => Popoverx::TYPE_WARNING, 'content' => $contenido, 'footer' => Html::a('Cerrar sesión »', ['/site/logout'], ['data-method' => 'post', 'class' => 'btn btn-sm btn-warning']), 'toggleButton' => ['label' => Html::tag('span', '', ['class' => 'glyphicon glyphicon-lock']), 'class' => 'btn btn-sm btn-default']]) . '</div></li>'; $menuItems[] = $userPopover; } echo Nav::widget(['options' => ['class' => 'navbar-nav navbar-right'], 'items' => $menuItems, 'encodeLabels' => false]); NavBar::end(); ?> <div class="container" > <?php echo Breadcrumbs::widget(['links' => isset($this->params['breadcrumbs']) ? $this->params['breadcrumbs'] : []]); ?> <?php // el alert se deberia aplicar en todas las paginas, excepto las que definen el parametro noAlerts, // en principio son las paginas de ingresos y egresos
// si es un array busca la clave "attribute" if (is_array($c)) { foreach ($c as $key => $value) { if ($key == 'attribute') { $poSel[] = $i; $poItems[$i] = $searchModel->getAttributeLabel($value); break; } } } else { $poSel[] = $i; $poItems[$i] = $searchModel->getAttributeLabel($c); } } // tiene que estar fuera del Pjax echo PopoverX::widget(['options' => ['id' => 'popControl'], 'placement' => PopoverX::ALIGN_RIGHT, 'toggleButton' => ['label' => '<i class="glyphicon glyphicon-list"></i> Cols.a exportar', 'class' => 'btn btn-default pull-left'], 'header' => 'Elija las columnas a exportar', 'size' => 'lg', 'content' => Html::checkboxList('exportColumns', $poSel, $poItems, ['class' => 'form-control', 'tag' => false])]); //} // Definición de la cantidad de items a paginar $contentToolbar = \nterms\pagesize\PageSize::widget(['defaultPageSize' => \Yii::$app->params['tiposdoc.defaultPageSize'], 'sizes' => \Yii::$app->params['tiposdoc.sizes'], 'label' => '', 'options' => ['class' => 'btn btn-default', 'title' => 'Cantidad de elementos por página']]); // Definición del toolbar //if (\Yii::$app->user->can('PERMISOPARAEXPORTAR')) { $toolbar = ['{export} ', ['content' => $contentToolbar]]; //} else { // $toolbar=[['content'=>$contentToolbar]]; //} ?> <?php echo GridView::widget(['options' => ['id' => 'gridID'], 'dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => $columns, 'pjax' => true, 'pjaxSettings' => ['neverTimeout' => true], 'condensed' => true, 'layout' => ' {toolbar}{summary}{items}{pager}', 'filterSelector' => 'select[name="per-page"]', 'export' => ['label' => 'Exportar', 'fontAwesome' => true, 'showConfirmAlert' => true, 'target' => GridView::TARGET_BLANK], 'toolbar' => $toolbar, 'pager' => ['firstPageLabel' => true, 'lastPageLabel' => true], 'exportConfig' => [GridView::PDF => ['filename' => $this->title, 'config' => ['destination' => 'D', 'methods' => ['SetHeader' => [['odd' => $pdfHeader, 'even' => $pdfHeader]], 'SetFooter' => [['odd' => $pdfFooter, 'even' => $pdfFooter]]], 'options' => ['title' => $this->title, 'subject' => '', 'keywords' => ''], 'contentBefore' => '', 'contentAfter' => '']], GridView::EXCEL => ['filename' => $this->title, 'config' => ['worksheet' => $this->title, 'cssFile' => '']], GridView::CSV => ['filename' => $this->title, 'config' => ['colDelimiter' => ";", 'rowDelimiter' => "\r\n"]]]]); ?>