function model_autohook($value, $model_name) { static $data; if (isset($data[$model_name][$value])) { return $data[$model_name][$value]; } $v = model_hook($value, $model_name); if ($v instanceof Illuminate\Database\Eloquent\Model) { if (isset($v['name'])) { $data[$model_name][$value] = $v['name']; } else { if (isset($v['title'])) { $data[$model_name][$value] = $v['title']; } else { if (isset($v['text'])) { $data[$model_name][$value] = $v['text']; } else { if (isset($v['username'])) { $data[$model_name][$value] = $v['username']; } else { $data[$model_name][$value] = $v->getKey(); } } } } } else { $data[$model_name][$value] = $v; } return $data[$model_name][$value]; }
/** * Smarty hook modifier plugin * * Type: modifier<br> * Name: hook<br> * Purpose: hook the string according * @link http://smarty.php.net/manual/en/language.modifier.hook.php * hook (Smarty online manual) * @author Monte Ohrt <monte at ohrt dot com> * @param string * @param * @return string */ function smarty_modifier_hook($value, $model_name, $where_key = NULL) { return model_hook($value, $model_name, $where_key); }