Esempio n. 1
0
 public function process()
 {
     $current = $this->getCurrentValue();
     $related = $this->related();
     if ($current && $related) {
         $model = $related->where($related->getKeyName(), $current)->first([$this->relationColumn()]);
         if ($model) {
             $this->value()->setShow($model->{$this->relationColumn()});
         }
     }
     if (!$this->value()->show()) {
         $this->value()->setShow(function () {
             return Request::input($this->elementName() . '-text');
         });
     }
     // 以下文件仅在 editable 时加载
     if ($this->isEditable()) {
         LegoAsset::css('default/select2/select2.min.css');
         LegoAsset::css('default/select2/select2-bootstrap.min.css');
         LegoAsset::js('default/select2/select2.full.min.js');
         if (!$this->isLocale('en')) {
             LegoAsset::js("default/select2/i18n/" . $this->getLocale() . ".js");
         }
     }
 }
Esempio n. 2
0
 /**
  * 数据处理逻辑
  */
 public function process()
 {
     $this->value()->setShow(function () {
         $value = $this->getCurrentValue();
         if (is_array($value)) {
             foreach ($value as &$item) {
                 $item = $item ? $item->format($this->getFormat()) : null;
             }
         } else {
             $value = $value ? $value->format($this->getFormat()) : null;
         }
         return $value;
     });
     /**
      * 仅在 editable && 非移动端启用日期控件,移动端使用原生的输入控件
      */
     if ($this->isEditable() && !$this->isMobile()) {
         LegoAsset::css('default/datetimepicker/bootstrap-datetimepicker.min.css');
         LegoAsset::js('default/datetimepicker/bootstrap-datetimepicker.min.js');
         if (!$this->isLocale('en')) {
             LegoAsset::js('default/datetimepicker/i18n/bootstrap-datetimepicker.zh-CN.js');
         }
     }
 }