示例#1
0
 function __construct()
 {
     if (!$this->checkPermission()) {
         $this->data['nopermission'] = true;
     } else {
         $this->data['nopermission'] = false;
     }
     $this->loadView();
     //build data_port value
     $this->data['data_port'] = Qdmvc_Helper::getDataPortPath(static::getDataPort(), $this->getPageView());
     //pre value for page List
     $this->data['role'] = isset($_GET['qdrole']) ? $_GET['qdrole'] : '';
     //lookup, navigate
     $this->data['lookupid'] = isset($_GET['qdlookupid']) ? $_GET['qdlookupid'] : null;
     $this->data['returnid'] = isset($_GET['qdreturnid']) ? $_GET['qdreturnid'] : null;
     $this->data['getfield'] = isset($_GET['qdgetfield']) ? $_GET['qdgetfield'] : null;
     $this->data['view_style'] = 'normal';
     $this->data['language'] = Qdmvc_Config::getLanguage();
     $this->data['init_obj'] = $this->getInitObjJSON();
     if ($this->data['role'] == 'lookup' || $this->data['role'] == 'navigate') {
         $this->data['view_style'] = 'compact';
         //compact, full
     }
     static::initFields();
 }
    private function generateFields()
    {
        $tmp_page = $this->page;
        ?>
        <style>
            .qd-card-grid .col-md-6 {
                /*height: 30px;*/
                margin-bottom: 7px;
            }

            .qd-card-grid .qd-option-field {
                height: 24px;
            }

            .qd-card-grid .qd-field-caption {
                height: 100%;
                width: 40%;
            }

            .qd-card-grid input[type=text] {
                display: block;
                width: 250px;
                height: 24px;
                -moz-box-sizing: border-box;
                -webkit-box-sizing: border-box;
                box-sizing: border-box;
            }

            .qd-card-grid .qd-image-preview {
                width: 250px;
                height: 100px;
                text-align: center;
                vertical-align: middle;
            }

            .qd-card-grid .qd-image-preview img {
                display: block;
                max-height: 100px;
                max-width: 250px;
                margin: 0 auto;
                border: solid black 1px;
            }

            .qd-lookup-input {
                position: relative;
            }

            .qd-lookup-input input {
                padding-right: 35px !important;
            }

            .qd-lookup-input button {
                position: absolute;
                top: 0;
                right: 0;
            }
        </style>
        <div class="container qd-card-grid" style="width: 100%">
            <div class="row clearfix" style="overflow-x: hidden">
                <script type="text/javascript">
                    (function ($) {
                        $(document).ready(function () {
                            $('#jqxTabs').jqxTabs({width: '100%', position: 'top'});
                        });
                    })(jQuery);

                </script>
                <div id='jqxTabs'>
                    <ul>
                        <?php 
        foreach ($tmp_page::getLayout() as $group => $config) {
            ?>
                            <li>
                                <?php 
            echo $tmp_page::getTabConfig($group, 'Name', $this->data['language']);
            ?>
                            </li>
                        <?php 
        }
        ?>
                    </ul>
                    <?php 
        foreach ($tmp_page::getLayout() as $group => $config) {
            if (isset($config['Type']) && $config['Type'] == 'Group') {
                echo '<div>';
                if (isset($config['Fields'])) {
                    foreach ($config['Fields'] as $key => $f_config) {
                        $type = $tmp_page::getDataType($key);
                        $readonly = $tmp_page::isReadOnly($key);
                        $readonly = Qdmvc_Helper::isNullOrEmpty($readonly) ? false : true;
                        $f_name = $tmp_page::getSourceExpr($key);
                        if ($type == 'Option') {
                            $options = $tmp_page::getFieldOptions($f_name, $this->data['language']);
                        }
                        if ($type == 'ImagePreview') {
                            $imagepreviewfield = $tmp_page::getImagePreview($key);
                        }
                        $f_val = '';
                        $f_lku = $tmp_page::getLookupURL($f_name);
                        $f_dataport = $tmp_page::getFieldDataPort($f_name);
                        if ($f_dataport != '') {
                            $f_dataport = Qdmvc_Helper::getDataPortPath($f_dataport);
                        }
                        $f_multivalue = $tmp_page::isMultiValue($key);
                        if ($f_multivalue) {
                            $f_multivaluefield = $tmp_page::getMultiValueField($f_name);
                            $f_multivaluedataport = $tmp_page::getMultiValueDataPort($f_name);
                        }
                        if ($f_config['Hidden']) {
                            $this->generateFieldHidden($f_name, $f_val);
                            continue;
                        }
                        ?>
                                    <div class="col-md-6" id="combo_<?php 
                        echo $f_name;
                        ?>
">
                                        <!-- Caption -->
                                        <div
                                            data-qddesc="<?php 
                        echo $this->page->getFieldDescription($f_name, $this->data['language']);
                        ?>
"
                                            class="qd-field-caption pull-left" id="lb_<?php 
                        echo $f_name;
                        ?>
"><?php 
                        echo $this->page->getFieldCaption($f_name, $this->data['language']);
                        ?>
                                            :
                                        </div>
                                        <!-- END Caption -->
                                        <div class="pull-right">
                                            <?php 
                        if ($type == 'Color') {
                            $this->generateFieldColor($f_name, $f_val, $readonly);
                        } else {
                            if ($type == 'Boolean') {
                                $this->generateFieldBoolean($f_name, $f_val, $readonly);
                            } else {
                                if ($type == 'Image') {
                                    $this->generateFieldImage($f_name, $f_val, $readonly);
                                } else {
                                    if ($type == 'File') {
                                        $this->generateFieldFile($f_name, $f_val, $readonly);
                                    } else {
                                        if ($type == 'ImagePreview') {
                                            $this->generateFieldImagePreview($f_name, $f_val, $imagepreviewfield, $readonly);
                                        } else {
                                            if ($type == 'Integer') {
                                                $this->generateFieldInteger($f_name, $f_val, $readonly);
                                            } else {
                                                if ($type == 'Date') {
                                                    $this->generateFieldDate($f_name, $f_val, $readonly);
                                                } else {
                                                    if ($type == 'WYSIWYG') {
                                                        $this->generateFieldWYSIWYG($f_name, $f_val, $readonly);
                                                    } else {
                                                        if ($type == 'Option') {
                                                            $this->generateFieldCombobox($f_name, $f_val, $options, $readonly);
                                                        } else {
                                                            if ($f_multivalue) {
                                                                $this->generateFieldTextMultiValue($f_name, $f_val, $f_multivaluedataport, $f_multivaluefield, $readonly);
                                                            } else {
                                                                if (!Qdmvc_Helper::isNullOrEmpty($f_lku)) {
                                                                    $this->generateFieldLookup($f_name, $f_val, $f_lku, $f_dataport, $f_multivalue, $readonly);
                                                                } else {
                                                                    $this->generateFieldText($f_name, $f_val, $readonly);
                                                                }
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        ?>
                                        </div>

                                        <div style="clear: both"></div>

                                    </div>
                                <?php 
                    }
                }
                echo '</div>';
            }
        }
        ?>
                </div>

            </div>
        </div>
        <script>
            (function ($) {
                $(document).ready(function () {
                    $('.qd-field-caption').dblclick(function () {
                        var content = $(this).data('qddesc');
                        var title = $(this).text();
                        MYAPP.showModalDialog(title, content);
                    });
                    $('.qd-image-preview img').click(function () {
                        if(this.src != undefined) {
                            MYAPP.showModalDialog('Image Preview', '<img style="max-height: 100%; max-width: 100%" src="' + this.src + '" />', true, true);
                        }
                    });
                    $('#ctl_id').keyup(function () {
                        MYAPP.manual_no = true;
                    });
                });
            })(jQuery);
        </script>
    <?php 
    }