FIX: fix widget saving - cast array to object when needed

This commit is contained in:
Michal Kváček
2016-04-02 19:13:13 +02:00
parent ce030a40d4
commit f11c673173
+9 -7
View File
@@ -10,9 +10,7 @@ use Illuminate\Support\Facades\Event;
*/ */
class Widget extends Model class Widget extends Model
{ {
public $timestamps = true; public $timestamps = true;
protected $fillable = [ protected $fillable = [
'widget_type_handler', 'widget_type_handler',
'user_id', 'user_id',
@@ -20,18 +18,24 @@ class Widget extends Model
'settings', 'settings',
'description' 'description'
]; ];
protected $guarded = []; protected $guarded = [];
/** /**
* Create new widget of given type * Create new widget of given type
* *
* @param WidgetType $widgetType * @param WidgetType $widgetType
* @param $data * @param $data
* *
* @return Widget * @return Widget
*/ */
public function createNew(WidgetType $widgetType, $data) { public function createNew(WidgetType $widgetType, $data)
{
// convert array or whatever into object
if (!is_object($data)) {
$data = (object)$data;
}
// create new widget // create new widget
$widget = new Widget(); $widget = new Widget();
$widget->widget_type_handler = $widgetType->handler; $widget->widget_type_handler = $widgetType->handler;
@@ -53,6 +57,4 @@ class Widget extends Model
return $widget; return $widget;
} }
} }