Ejemplo n.º 1
0
<?php

$this->adminTitle = tc('The forms designer');
if (issetModule('formeditor')) {
    $this->menu = array(array('label' => tt('Add field', 'formeditor'), 'url' => array('/formeditor/backend/main/create')), array('label' => tt('Edit search form', 'formeditor'), 'url' => array('/formeditor/backend/search/editSearchForm')));
}
Yii::app()->clientScript->registerScript('search', "\n\$('#form-designer-filter').submit(function(){\n    \$('#form-designer-grid').yiiGridView('update', {\n        data: \$(this).serialize()\n    });\n    return false;\n});\n\nfunction ajaxSetVisible(elem){\n\t\$.ajax({\n\t\turl: \$(elem).attr('href'),\n\t\tsuccess: function(){\n\t\t\t\$('#form-designer-grid').yiiGridView.update('form-designer-grid');\n\t\t}\n\t});\n}\n");
$this->widget('CustomGridView', array('id' => 'form-designer-grid', 'dataProvider' => $model->search(), 'afterAjaxUpdate' => 'function(id, data){$("a[rel=\'tooltip\']").tooltip(); $("div.tooltip-arrow").remove(); $("div.tooltip-inner").remove(); reInstallSortable(id, data);}', 'rowCssClassExpression' => '"items[]_{$data->id}"', 'filter' => $model, 'columns' => array(array('name' => 'field', 'value' => '$data->getLabel()', 'filter' => false), array('name' => 'view_in', 'value' => '$data->getViewInName()', 'filter' => FormDesigner::getViewInList()), array('header' => tt('Show for property types', 'formdesigner'), 'value' => '$data->getTypesHtml()', 'type' => 'raw', 'sortable' => false), array('name' => 'tip', 'filter' => false), array('name' => 'visible', 'value' => '$data->getVisibleHtml()', 'type' => 'raw', 'sortable' => false, 'filter' => false), array('class' => 'bootstrap.widgets.TbButtonColumn', 'template' => '{up}{down}{fast_up}{fast_down}&nbsp;{update}{delete}', 'htmlOptions' => array('class' => 'infopages_buttons_column', 'style' => 'width:160px;'), 'buttons' => array('up' => array('label' => tc('Move an item up'), 'imageUrl' => $url = Yii::app()->assetManager->publish(Yii::getPathOfAlias('zii.widgets.assets.gridview') . '/up.gif'), 'url' => 'Yii::app()->createUrl("/formeditor/backend/main/move", array("id"=>$data->id, "direction" => "up", "view_in"=>$data->view_in))', 'options' => array('class' => 'infopages_arrow_image_up'), 'visible' => '($data->sorter > "' . $model->minSorter . '") && ' . intval($model->view_in), 'click' => "js: function() { ajaxMoveRequest(\$(this).attr('href'), 'form-designer-grid'); return false;}"), 'down' => array('label' => tc('Move an item down'), 'imageUrl' => $url = Yii::app()->assetManager->publish(Yii::getPathOfAlias('zii.widgets.assets.gridview') . '/down.gif'), 'url' => 'Yii::app()->createUrl("/formeditor/backend/main/move", array("id"=>$data->id, "direction" => "down", "view_in"=>$data->view_in))', 'options' => array('class' => 'infopages_arrow_image_down'), 'visible' => '($data->sorter < "' . $model->maxSorter . '") && ' . intval($model->view_in), 'click' => "js: function() { ajaxMoveRequest(\$(this).attr('href'), 'form-designer-grid'); return false;}"), 'fast_up' => array('label' => tc('Move to the beginning of the list'), 'imageUrl' => Yii::app()->theme->baseUrl . '/images/default/fast_top_arrow.gif', 'url' => 'Yii::app()->createUrl("/formeditor/backend/main/move", array("id"=>$data->id, "direction" => "fast_up", "view_in"=>$data->view_in))', 'options' => array('class' => 'infopages_arrow_image_fast_up'), 'visible' => '($data->sorter > "' . $model->minSorter . '") && ' . intval($model->view_in), 'click' => "js: function() { ajaxMoveRequest(\$(this).attr('href'), 'form-designer-grid'); return false;}"), 'fast_down' => array('label' => tc('Move to end of list'), 'imageUrl' => Yii::app()->theme->baseUrl . '/images/default/fast_bottom_arrow.gif', 'url' => 'Yii::app()->createUrl("/formeditor/backend/main/move", array("id"=>$data->id, "direction" => "fast_down", "view_in"=>$data->view_in))', 'options' => array('class' => 'infopages_arrow_image_fast_down'), 'visible' => '($data->sorter < "' . $model->maxSorter . '") && ' . intval($model->view_in), 'click' => "js: function() { ajaxMoveRequest(\$(this).attr('href'), 'form-designer-grid'); return false;}"), 'update' => array('url' => '$data->getUpdateUrl()'), 'delete' => array('visible' => '$data->standard_type == 0', 'url' => 'Yii::app()->createUrl("/formeditor/backend/main/delete", array("id" => $data->id))'))))));
?>

<?php 
$csrf_token_name = Yii::app()->request->csrfTokenName;
$csrf_token = Yii::app()->request->csrfToken;
$cs = Yii::app()->getClientScript();
$cs->registerCoreScript('jquery.ui');
$str_js = "\n\t\tvar fixHelper = function(e, ui) {\n\t\t\tui.children().each(function() {\n\t\t\t\t\$(this).width(\$(this).width());\n\t\t\t});\n\t\t\treturn ui;\n\t\t};\n\n\t\tfunction reInstallSortable(id, data) {\n\t\t\tinstallSortable(\$(data).find('select[name=\"FormDesigner[view_in]\"] option:selected').val());\n\t\t}\n\n\t\tfunction updateGrid() {\n\t\t\t\$.fn.yiiGridView.update('form-designer-grid');\n\t\t}\n\n\t\tfunction installSortable(areaIdSel) {\n\t\t\tif (areaIdSel > 0) {\n\t\t\t\t\$('#form-designer-grid table.items tbody').sortable({\n\t\t\t\t\tforcePlaceholderSize: true,\n\t\t\t\t\tforceHelperSize: true,\n\t\t\t\t\titems: 'tr',\n\t\t\t\t\tupdate : function () {\n\t\t\t\t\t\tserial = \$('#form-designer-grid table.items tbody').sortable('serialize', {key: 'items[]', attribute: 'class'}) + '&{$csrf_token_name}={$csrf_token}&area_id=' + areaIdSel;\n\t\t\t\t\t\t\$.ajax({\n\t\t\t\t\t\t\t'url': '" . $this->createUrl('/formeditor/backend/main/sortitems') . "',\n\t\t\t\t\t\t\t'type': 'post',\n\t\t\t\t\t\t\t'data': serial,\n\t\t\t\t\t\t\t'success': function(data){\n\t\t\t\t\t\t\t\tupdateGrid();\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t'error': function(request, status, error){\n\t\t\t\t\t\t\t\talert('We are unable to set the sort order at this time.  Please try again in a few minutes.');\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t},\n\t\t\t\t\thelper: fixHelper\n\t\t\t\t}).disableSelection();\n\t\t\t}\n\t\t}\n\n\t\tinstallSortable('" . intval($model->view_in) . "');\n";
$cs->registerScript('sortable-project', $str_js);
Ejemplo n.º 2
0
        } else {
            echo CHtml::link(tt('Please add the new category to the form editor', 'formeditor'), Yii::app()->createUrl('/referencecategories/backend/main/admin'));
        }
        ?>
            </div>
        <?php 
    } else {
        echo '<br/>';
        echo '<b>' . tt('The name of a field in a table', 'formeditor') . '</b>: ' . $model->field . '';
        echo '<br/>';
        echo '<b>' . $model->getAttributeLabel('type') . '</b>: ' . $model->getTypeName() . '';
        echo '<br/>';
    }
    $this->widget('application.modules.lang.components.langFieldWidget', array('model' => $model, 'field' => 'label', 'type' => 'string'));
}
echo $form->dropDownListRow($model, 'view_in', FormDesigner::getViewInList());
echo $form->dropDownListRow($model, 'rules', FormDesigner::getRulesList());
//echo $form->dropDownListRow($model, 'view_in', FormDesigner::getViewInList());
echo $form->checkBoxRow($model, 'visible');
echo $form->checkBoxListRow($model, 'objTypesArray', ApartmentObjType::getList());
$this->widget('application.modules.lang.components.langFieldWidget', array('model' => $model, 'field' => 'tip', 'type' => 'string'));
echo '<div class="fields_for_search">';
echo '<h5>' . tt('For search') . '</h5>';
$this->widget('application.modules.lang.components.langFieldWidget', array('model' => $translate, 'field' => 'translation', 'type' => 'string'));
echo $form->dropDownListRow($model, 'compare_type', FormDesigner::getCompareList());
echo '</div>';
?>

    <div id="selMeasureUnitBox" style="display: none;">
        <?php 
echo $form->textFieldRow($model, 'measure_unit');