9 public $params = array(
'path'=>
'assets');
19 'fieldType'=>array(
'VARCHAR'),
20 'params'=>$this->params,
21 'paramsLabels' => array(
24 'other_validator'=>array(
26 'allowEmpty'=>array(
'',
'false',
'true'),
47 $value = CUploadedFile::getInstance($model,$field_varname);
50 $old_file = $model->getAttribute($field_varname);
51 $file_name = $this->params[
'path'].
'/'.$value->name;
52 if (file_exists($file_name)) {
53 $file_name = str_replace(
'.'.$value->extensionName,
'-'.time().
'.'.$value->extensionName,$file_name);
55 if ($model->validate()) {
56 if ($old_file&&file_exists($old_file))
58 $value->saveAs($file_name);
62 if (isset($_POST[get_class($model)][
'uwfdel'][$field_varname])&&$_POST[get_class($model)][
'uwfdel'][$field_varname]) {
63 $old_file = $model->getAttribute($field_varname);
64 if ($old_file&&file_exists($old_file))
68 $value = $model->getAttribute($field_varname);
79 $file = $model->getAttribute($field->varname);
81 $file = Yii::app()->baseUrl.
'/'.$file;
82 return CHtml::link($file,$file);
92 if (!isset($params[
'options'])) $params[
'options'] = array();
93 $options = $params[
'options'];
94 unset($params[
'options']);
96 return CHtml::activeFileField($model,$field->varname,$params)
97 .(($model->getAttribute($field->varname))?
'<br/>'.CHtml::activeCheckBox($model,
'[uwfdel]'.$field->varname,$params)
98 .
' '.CHtml::activeLabelEx($model,
'[uwfdel]'.$field->varname,array(
'label'=>
UserModule::t(
'Delete file'),
'style'=>
'display:inline;')):
'')