public function getFieldinput($custom_field_id) { $campoextra = CustomField::find($custom_field_id); $customfield = $campoextra->getCustomFieldInstance(); $data['customfield'] = $customfield; return View::make('backend/customfields/inputs/' . $campoextra->type, $data); }
/** * Guarda el modelo actual y la metadata asociada * * @param array $options * @return $this */ public function save(array $options = array()) { parent::save($options); if ($this->exclude_metadata) { return $this; } //Se elimina la metadata actual foreach ($this->metadata as $metadata) { DB::table('custom_field_' . $metadata->type)->where('id', '=', $metadata->custom_field_value_id)->delete(); } DB::table('custom_field_pivot')->where('content_id', '=', $this->id)->delete(); if (isset($options['metadata'])) { foreach ($options['metadata'] as $key => $metadata) { $customFieldType = CustomField::find(intval(str_replace('customfield-', '', $key))); $modelName = 'CustomField' . $this->to_camel_case($customFieldType->type); $metadataModel = new $modelName(); $metadataModel->value = $metadata; $metadataModel->save(); DB::table('custom_field_pivot')->insert(array('custom_field_type_id' => $customFieldType->id, 'custom_field_value_id' => $metadataModel->id, 'content_id' => $this->id)); } } return $this; }