作者:kibercode
项目:bilious-octo-fibul
/**
* Runs the widget.
*/
public function run()
{
// Print elfinder widget in modal
Modal::begin(['toggleButton' => false, 'id' => $this->options['id'] . '-dialog', 'size' => Modal::SIZE_LARGE]);
echo ElFinder::widget(['language' => $this->language, 'controller' => $this->controller, 'path' => $this->path, 'filter' => 'image', 'callbackFunction' => new JsExpression('function(file, id){
console.log( file.url, "' . $this->buttonOptions['id'] . '" );
$("#' . $this->options['id'] . '").val( file.url );
$("#' . $this->options['id'] . '-thumb").attr("src", file.url ).show();
$("#' . $this->options['id'] . '-dialog").modal("hide");
}'), 'path' => $this->path, 'frameOptions' => ['style' => 'width: 100%; height: 500px; border: 0px;']]);
Modal::end();
// Render input and upload button
if ($this->hasModel()) {
$attr = $this->attribute;
$hidden = $this->model->{$attr} ? '' : 'display:none;';
$replace['{image}'] = '<img id="' . $this->options['id'] . '-thumb" class="thumbnail" src="' . $this->model->{$attr} . '" style="max-width: 150px; max-height: 150px; ' . $hidden . '" />';
$replace['{input}'] = Html::activeTextInput($this->model, $this->attribute, $this->options);
} else {
$hidden = $this->value ? '' : 'display:none;';
$replace['{image}'] = '<img id="' . $this->options['id'] . '-thumb" src="' . $this->value . '" style="max-width: 150px; max-height: 150px; ' . $hidden . '" />';
$replace['{input}'] = Html::textInput($this->name, $this->value, $this->options);
}
$replace['{button}'] = Html::tag($this->buttonTag, $this->buttonName, $this->buttonOptions);
echo strtr($this->template, $replace);
// Publish assets
AssetsCallBack::register($this->getView());
if (!empty($this->multiple)) {
$this->getView()->registerJs("\n\n mihaildev.elFinder.register(" . Json::encode($this->options['id']) . ",\n function(files, id){\n var _f = [];\n for (var i in files) { _f.push(files[i].url); }\n \$('#' + id).val(_f.join(', ')).trigger('change');\n return true;\n });\n\n \$(document).on('click','#" . $this->buttonOptions['id'] . "',\n function(){\n mihaildev.elFinder.openManager(" . Json::encode($this->_managerOptions) . ");\n }\n );");
} else {
$this->getView()->registerJs("\n\n mihaildev.elFinder.register(" . Json::encode($this->options['id']) . ", function(file, id){\n \$('#' + id).val(file.url).trigger('change');\n return true;\n });\n\n \$(document).on('click',\n '#" . $this->buttonOptions['id'] . "',\n function(){\n //mihaildev.elFinder.openManager(" . Json::encode($this->_managerOptions) . ");\n \$('#" . $this->options['id'] . "-dialog').modal('show');\n }\n );");
}
}
作者:claudejan
项目:yii2-toolbo
public function run()
{
Icon::map($this->view, Icon::FA);
echo "<div id='cjModalContent'>" . Icon::show('refresh fa-spin', [], Icon::FA) . "</div>";
// echo "".Icon::show('refresh fa-spin', [], Icon::FA)."";
parent::run();
}
作者:RandomAmbersk
项目:yii2-kcfinde
/**
* Renders the widget.
*/
public function run()
{
$this->registerClientScript();
$button = Html::button(FontAwesome::icon('picture-o') . ' ' . $this->buttonLabel, $this->buttonOptions);
if ($this->iframe) {
$button .= Modal::widget(['id' => $this->getIFrameModalId(), 'header' => Html::tag('h4', $this->modalTitle, ['class' => 'modal-title']), 'size' => Modal::SIZE_LARGE, 'options' => ['class' => 'kcfinder-modal']]);
}
$thumbs = '';
if ($this->hasModel() && is_array($this->model->{$this->attribute})) {
$images = $this->model->{$this->attribute};
foreach ($images as $path) {
$thumbs .= strtr($this->thumbTemplate, ['{thumbSrc}' => $this->getThumbSrc($path), '{inputName}' => $this->getInputName(), '{inputValue}' => $path]);
}
}
$thumbs = Html::tag('ul', $thumbs, ['id' => $this->getThumbsId(), 'class' => 'kcf-thumbs']);
echo Html::tag('div', strtr($this->template, ['{button}' => $button, '{thumbs}' => $thumbs]), ['class' => 'kcf-input-group']);
}
作者:radiata-cm
项目:radiat
echo $form->field($model, 'description')->widget(LangInputWidget::classname(), ['options' => ['type' => 'activeTextarea']]);
?>
<?php
echo $form->field($model, 'content')->widget(LangInputWidget::classname(), ['options' => ['type' => 'activeTextarea', 'redactor' => true, 'urlPreffix' => 'news/', 'form' => $form]]);
?>
</div>
<div class="tab-pane" id="tags-tab">
<?
$modalNewTag = Modal::widget([
'id' => 'new-tag-modal',
'toggleButton' => [
'label' => Yii::t('b/news/tag', 'Add new tag'),
'tag' => 'a',
'data-target' => '#new-tag-modal',
'href' => Url::toRoute(['tag/add-new-tag']),
],
'closeButton' => [
'tag' => 'button',
'label' => '<span aria-hidden="true">×</span>'
],
'clientOptions' => false,
]);
?>
<?php
echo $form->field($model, 'tagIds')->widget(SelectizeTextInput::className(), ['loadUrl' => ['tag/tags-list'], 'options' => ['class' => 'form-control'], 'clientOptions' => ['plugins' => ['remove_button', 'restore_on_backspace', 'drag_drop'], 'valueField' => 'id', 'labelField' => 'name', 'searchField' => ['name'], 'options' => new JsExpression($model->getTagItems()), 'items' => $model->getTagIds(true), 'hideSelected' => true, 'closeAfterSelect' => true]])->hint($modalNewTag);
?>
</div>
<div class="tab-pane" id="image-tab">
<?php
echo $form->field($model, 'image')->widget(FileInputWidget::classname(), ['options' => ['accept' => 'image/*'], 'pluginOptions' => ['initialPreview' => $model->getThumbFileUrl('image', 'small') ? [Html::img($model->getThumbFileUrl('image', 'small'), ['class' => 'file-preview-image'])] : []]]);
?>
作者:lav4
项目:yii2-ajax-creat
public function getModal()
{
if (self::$_modal === null) {
ob_start();
ob_implicit_flush(false);
$this->optionsModal['class'] = Modal::className();
self::$_modal = Yii::createObject($this->optionsModal);
$out = self::$_modal->run();
$out = ob_get_clean() . $out;
$view = $this->getView();
$view->on($view::EVENT_END_BODY, function () use($out) {
echo $out;
});
}
return self::$_modal;
}
作者:harish-reglobb
项目:Auctio
private function initializeModal(){
Modal::begin([
'id' => 'activity-modal',
'size' => $this->size,
'header' => '<h2>'. $this->modelTitle .'</h2>',
'footer' => Html::button('Close', ['class' => 'btn btn-info', 'data-dismiss' => 'modal']),
]);
Modal::end();
// Modal::begin([
// 'id' => 'activity-delete-modal',
// 'header' => '<h2>'. $this->deleteModelTitle .'</h2>',
// 'footer' => Html::button('Close', ['class' => 'btn btn-default', 'data-dismiss' => 'modal'])
// . PHP_EOL . Html::button('Delete', [
// 'class' => 'btn btn-primary btn-modal-save',
// 'id' => 'delete-role-model',
// 'data-id' => '',
// 'onClick' => new JsExpression('var id=$("#delete-role-model").attr("data-id");$.ajax({type:"'. $this->deleteVerb .'",url:"'.$this->deleteUrl.'",data:{id:id},success:function(){$.pjax.reload({container:"#'. $this->pjaxContainerId .'",timeout:2e3}),$("#activity-delete-modal").modal("hide")}});')
// ]),
// ]);
// echo 'Are You Sure To Delete This Item';
// Modal::end();
}
作者:yii2asset
项目:yii2-fullscreen-moda
/**
* Initializes the widget.
*/
public function init()
{
$this->options = array_merge(['class' => 'modal-fs fade'], $this->options);
$padding = $this->modalBodyPadding === false ? '0' : $this->modalBodyPadding;
$this->getView()->registerCss("\n .modal-fs .modal-body{\n padding:{$padding};\n }\n ");
parent::init();
FullscreenModalAsset::register($this->getView());
}
作者:xiaohongyan
项目:yii_sho
/**
* iframe modal 框架模态弹出窗
*/
private function run_iframe()
{
\Yii::$app->view->on(View::EVENT_END_BODY, function () {
Modal::begin(['id' => 'iframeModal', 'header' => '<h4 class="modal-title"> Header </h4>', 'footer' => '<a href="#" class="btn btn-primary" data-dismiss="modal">Close</a>', 'size' => Modal::SIZE_LARGE]);
echo '<iframe ></iframe>';
Modal::end();
});
$this->ifram_jscode();
}
作者:skor
项目:yii2-admin-templat
/**
* @inheritdoc
*/
public function run()
{
parent::run();
if ($this->remote) {
$id = $this->options['id'];
$url = Url::to($this->remote);
$this->getView()->registerJs("Admin.Modal.remote('#{$id}', '{$url}');");
}
}
作者:miragesof
项目:yii2-basicfilemanage
private function genModal()
{
$forceOptions = ['size' => Modal::SIZE_LARGE];
$modal = Modal::begin(array_merge($this->modalOptions, $forceOptions));
if ($this->fieldID !== null && $this->returnType === null) {
$this->returnType = self::RETURN_TYPE_URL;
}
$url = Url::to([$this->browserUrl, 'fieldID' => $this->fieldID, 'returnType' => $this->returnType, 'modalID' => $modal->id, 'subDir' => $this->options['subDir'], 'createDir' => $this->options['createDir'], 'changeDir' => $this->options['changeDir'], 'upload' => $this->options['upload']]);
echo '<iframe src="' . $url . '" frameborder="0" style="height:80vh;width:100%"></iframe>';
Modal::end();
}
作者:shubnikoff
项目:mobile
public function run()
{
parent::run();
Modal::end();
echo Html::endTag('div');
$view = $this->getView();
ModalViewAsset::register($view);
$settings = ['containerSelector' => $this->containerSelector];
$context = $this->containerSelector === null ? 'teleport.$commonContainer' : "\$('{$this->containerSelector}')";
$view->registerJs("jQuery('#{$this->id}',{$context}).modalView(" . Json::encode($settings) . ");");
}
作者:Zuzzanc
项目:yii2-image-cutte
public function run()
{
if (is_null($this->imageOptions)) {
$this->imageOptions = ['class' => 'img-responsive'];
}
$this->imageOptions['id'] = Yii::$app->getSecurity()->generateRandomString(10);
$inputField = Html::getInputId($this->model, $this->attribute);
echo Html::beginTag('div', ['id' => $inputField . '-cutter']);
echo Html::activeFileInput($this->model, $this->attribute);
echo Html::beginTag('div', ['class' => 'preview-pane', 'style' => $this->model->{$this->attribute} ? 'display:block' : 'display:none']);
echo Html::beginTag('div', ['class' => 'preview-container']);
echo Html::img($this->model->{$this->attribute} ? $this->model->{$this->attribute} : null, ['class' => 'preview-image img-responsive']);
echo Html::endTag('div');
echo Html::endTag('div');
echo Html::checkbox($this->attribute . '-remove', false, ['label' => Yii::t('sadovojav/cutter/default', 'REMOVE')]);
Modal::begin(['header' => Html::tag('h4', Yii::t('sadovojav/cutter/default', 'CUTTER')), 'closeButton' => [], 'footer' => $this->getModalFooter($inputField), 'size' => Modal::SIZE_LARGE]);
echo Html::beginTag('div', ['class' => 'image-container']);
echo Html::img(null, $this->imageOptions);
echo Html::endTag('div');
echo Html::tag('br');
echo Html::beginTag('div', ['class' => 'row']);
echo Html::beginTag('div', ['class' => 'col-md-2']);
echo Html::label(Yii::t('sadovojav/cutter/default', 'ASPECT_RATIO'), $inputField . '-aspectRatio');
echo Html::textInput($this->attribute . '-aspectRatio', isset($this->jcropOptions['aspectRatio']) ? $this->jcropOptions['aspectRatio'] : 0, ['id' => $inputField . '-aspectRatio', 'class' => 'form-control']);
echo Html::endTag('div');
echo Html::beginTag('div', ['class' => 'col-md-2']);
echo Html::label(Yii::t('sadovojav/cutter/default', 'ANGLE'), $inputField . '-dataRotate');
echo Html::textInput($this->attribute . '-cropping[dataRotate]', '', ['id' => $inputField . '-dataRotate', 'class' => 'form-control']);
echo Html::endTag('div');
echo Html::beginTag('div', ['class' => 'col-md-2']);
echo Html::label(Yii::t('sadovojav/cutter/default', 'POSITION') . ' (X)', $inputField . '-dataX');
echo Html::textInput($this->attribute . '-cropping[dataX]', '', ['id' => $inputField . '-dataX', 'class' => 'form-control']);
echo Html::endTag('div');
echo Html::beginTag('div', ['class' => 'col-md-2']);
echo Html::label(Yii::t('sadovojav/cutter/default', 'POSITION') . ' (Y)', $inputField . '-dataY');
echo Html::textInput($this->attribute . '-cropping[dataY]', '', ['id' => $inputField . '-dataY', 'class' => 'form-control']);
echo Html::endTag('div');
echo Html::beginTag('div', ['class' => 'col-md-2']);
echo Html::label(Yii::t('sadovojav/cutter/default', 'WIDTH'), $inputField . '-dataWidth');
echo Html::textInput($this->attribute . '-cropping[dataWidth]', '', ['id' => $inputField . '-dataWidth', 'class' => 'form-control']);
echo Html::endTag('div');
echo Html::beginTag('div', ['class' => 'col-md-2']);
echo Html::label(Yii::t('sadovojav/cutter/default', 'HEIGHT'), $inputField . '-dataHeight');
echo Html::textInput($this->attribute . '-cropping[dataHeight]', '', ['id' => $inputField . '-dataHeight', 'class' => 'form-control']);
echo Html::endTag('div');
echo Html::endTag('div');
Modal::end();
echo Html::endTag('div');
$view = $this->getView();
CutterAsset::register($view);
$options = ['inputField' => $inputField, 'useWindowHeight' => $this->useWindowHeight, 'jcropOptions' => $this->jcropOptions];
$options = Json::encode($options);
$view->registerJs('jQuery("#' . $inputField . '").cutter(' . $options . ');');
}
作者:loveorigam
项目:yii2-modal-aja
/**
* @inheritdocs
*/
public function run()
{
$view = $this->getView();
parent::run();
ModalAsset::register($view);
$id = $this->options['id'];
$ajaxSubmit = $this->ajaxSubmit ? 'true' : 'false';
$js = <<<JS
jQuery('#{$id}').kbModalAjax({
url: '{$this->url}',
ajaxSubmit: {$ajaxSubmit},
});
JS;
$view->registerJs($js);
}
作者:just-le
项目:cardgame-seria
/**
* Initializes the widget.
* This method will register the bootstrap asset bundle. If you override this method,
* make sure you call the parent implementation first.
*/
public function init()
{
parent::init();
if (!isset($this->options['id'])) {
$this->options['id'] = $this->getId();
}
if (!isset($this->element) || $this->element === false) {
$this->element = 'document.body';
}
//Prepare modal dialog
ob_start();
ob_implicit_flush(false);
$this->_modal = \Yii::createObject(['class' => Modal::className(), 'header' => '<h4 class="modal-title">Карта</h4>', 'size' => Modal::SIZE_DEFAULT, 'toggleButton' => false, 'footer' => '<button type="button" class="btn btn-default" data-dismiss="modal">Закрыть</button>']);
$this->_modal->run();
$this->_modalHtml = ob_get_clean();
}
作者:uworkr
项目:yii2-bas
public function run()
{
$params = [];
$footer = $this->getButtons();
if ($footer) {
$params['footer'] = $footer;
}
if ($this->title) {
$params['header'] = '<h4>' . Html::encode($this->title) . '</h4>';
}
//~ if($this->updateModal) {
//~ $params['options']['data-update-modal'] = Url::to($this->updateModal);
//~ }
BaseModal::begin($params);
echo $this->content;
BaseModal::end();
}
作者:Ilia
项目:dotplant
public function run()
{
$object = Object::getForClass(\app\models\Form::className());
$groups = PropertyGroup::getForModel($object->id, $this->formId);
$view = !empty($this->model->form_view) ? $this->model->form_view : 'form';
$successView = !empty($this->model->form_success_view) ? $this->model->form_success_view : 'success';
if (!$this->isModal) {
echo Html::beginTag('div', ['id' => 'form-info-' . $this->id, 'style' => 'display: none;']);
echo $this->render($successView);
echo '</div>';
}
echo $this->render($view, ['id' => $this->id, 'model' => $this->model, 'groups' => $groups, 'options' => $this->options]);
if ($this->isModal) {
Modal::end();
Modal::begin(['id' => 'modal-form-info-' . $this->id, 'size' => Modal::SIZE_SMALL, 'header' => $this->statusHeaderName ? $this->statusHeaderName : $this->model->name . ' ' . \Yii::t('app', 'status')]);
echo $this->render($successView);
Modal::end();
}
}
作者:mark3
项目:yii2-to
public function run()
{
echo Html::activeHiddenInput($this->model, $this->attribute, $this->options);
$input_id = $this->attribute;
if ($this->model[$this->attribute]) {
$label = (new Category())->getAnchorPath($this->model[$this->attribute]);
} else {
$label = 'Выберете категорию';
}
Modal::begin(['header' => null, 'toggleButton' => ['label' => $label, 'class' => 'btn-link category-link-select', 'id' => 'btn-categories-modal'], 'options' => ['id' => 'categories-modal', 'data-input-id' => strtolower($this->model->formName()) . '-' . $input_id, 'data-categories-id' => $this->pluginOptions['categories_id']]]);
echo Html::beginTag('div', ['class' => 'category-list', 'id' => 'category-list']);
// echo Html::beginTag('ul', ['class' => 'list-inline', 'id' => 'categories-lists']);
// echo '<li id="category-list-1"></li>';
// echo Html::endTag('ul');
echo Html::endTag('div');
Modal::end();
//echo Html::a('Выберете категорию', null, ['id' => 'category-link-select']);
$view = $this->view;
CategoryAsset::register($view);
}
作者:highestgoodlikewate
项目:yii2-toolbo
/**
* @inheritdoc
*/
public function init()
{
parent::init();
//assert view file is set
if ($this->view === null) {
$msg = Yii::t('app', 'Please set a view file');
throw new InvalidConfigException($msg);
}
//default config
if (empty($this->sections)) {
$this->sections = ['Server' => 'server', 'Yii' => 'yii', 'Database' => 'db', 'Localization' => 'localization', 'Caching' => 'caching', 'RBAC' => 'rbac', 'Current User' => 'currentuser'];
}
//get php info
$this->loadPhpInfo();
//get modal code
ob_start();
Modal::begin(['id' => '{id}', 'header' => '<h4>{title}</h4>', 'size' => Modal::SIZE_LARGE]);
echo '{content}';
Modal::end();
$this->modalCode = ob_get_clean();
}
作者:Zuzzanc
项目:yii2-widget-upload-cro
/**
* Renders the field.
*/
public function run()
{
if (is_null($this->imageOptions)) {
$this->imageOptions = ['alt' => 'Crop this image'];
}
$this->imageOptions['id'] = Yii::$app->getSecurity()->generateRandomString(10);
$inputField = Html::getInputId($this->model, $this->attribute, ['data-image_id' => $this->imageOptions['id']]);
$default_jcropOptions = ['dashed' => FALSE, 'zoomable' => FALSE, 'rotatable' => FALSE];
$this->jcropOptions = array_merge($default_jcropOptions, $this->jcropOptions);
if (is_null($this->form)) {
$this->form = new ActiveForm();
if (!is_null($this->enableClientValidation)) {
$this->form->enableClientValidation = $this->enableClientValidation;
}
}
echo Html::beginTag('div', ['class' => 'uploadcrop']);
echo $this->form->field($this->model, $this->attribute)->fileInput();
echo Html::beginTag('div', ['id' => 'preview-pane']);
echo Html::beginTag('div', ['class' => 'preview-container']);
echo Html::img('', ['class' => 'preview_image']);
echo Html::endTag('div');
echo Html::endTag('div');
Modal::begin(['header' => '<h2>Crop image</h2>', 'closeButton' => [], 'footer' => Html::button('Cancel', ['id' => $this->imageOptions['id'] . '_button_cancel', 'class' => 'btn btn-default']) . Html::button('Accept', ['id' => $this->imageOptions['id'] . '_button_accept', 'class' => 'btn btn-success']), 'size' => Modal::SIZE_LARGE]);
echo Html::beginTag('div', ['id' => 'image-source', 'class' => 'col-centered']);
echo Html::img('', $this->imageOptions);
echo Html::endTag('div');
echo html::hiddenInput($this->attribute . '-cropping[x]', '', ['id' => $inputField . '-x']);
echo html::hiddenInput($this->attribute . '-cropping[width]', '', ['id' => $inputField . '-width']);
echo html::hiddenInput($this->attribute . '-cropping[y]', '', ['id' => $inputField . '-y']);
echo html::hiddenInput($this->attribute . '-cropping[height]', '', ['id' => $inputField . '-height']);
Modal::end();
echo Html::endTag('div');
$view = $this->getView();
UploadCropAsset::register($view);
$jcropOptions = ['inputField' => $inputField, 'jcropOptions' => $this->jcropOptions];
$jcropOptions['maxSize'] = $this->maxSize;
$jcropOptions = Json::encode($jcropOptions);
$view->registerJs('jQuery("#' . $inputField . '").uploadCrop(' . $jcropOptions . ');');
}
作者:abutou
项目:vide
/**
* @param $view View
* @return string
* @throws \Exception
*/
public static function widgetSendMessageModal(&$view)
{
$view->registerJs("messageurl = '" . Url::to(['/users/send-message'], true) . "';");
ob_start();
Modal::begin(['header' => '<h3>' . Yii::t('app', 'Send Message') . '</h3>', 'id' => 'messagemodal', 'size' => 'modal-md', 'closeButton' => ['label' => '', 'class' => 'close glyphicon glyphicon-remove'], 'options' => ['tabindex' => false], 'footer' => '<button type="button" class="btn btn-default pull-right" data-dismiss="modal">' . Yii::t('app', 'Cancel') . '</button>' . '<button type="button" class="btn btn-primary pull-left" id="sendBtn">' . Yii::t('app', 'Send') . '</button>']);
$url = \yii\helpers\Url::to(['/users/search']);
echo Select2::widget(['options' => ['placeholder' => 'To:'], 'model' => new \app\models\User(), 'theme' => Select2::THEME_KRAJEE, 'name' => 'receiver_id', 'pluginOptions' => ['allowClear' => true, 'minimumInputLength' => 3, 'ajax' => ['url' => $url, 'dataType' => 'json', 'data' => new JsExpression('function(params) { return {q:params.term}; }')], 'escapeMarkup' => new JsExpression('function (markup) { return markup; }'), 'templateResult' => new JsExpression('function(city) { return city.text; }'), 'templateSelection' => new JsExpression('function (city) { return city.text; }')]]);
$Message = Yii::t('app', 'Message');
$placeholder = Yii::t('app', 'Enter you message..');
echo <<<HTML
<div style="margin:20px 0 25px 0;">
<div class="form-group">
<label for="comment">{$Message} :</label>
<textarea placeholder="{$placeholder}" class="form-control" rows="5" id="message" style="max-width:100%;"></textarea>
</div>
</div>
HTML;
Modal::end();
return ob_get_clean();
}