edit.field.php 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. namespace zin;
  3. global $lang, $config, $app;
  4. $users = data('users');
  5. $products = data('products');
  6. $charter = data('charter');
  7. $fields = defineFieldList('charter.edit');
  8. $fields->field('name')->required(true)->value(data('charter.name'));
  9. $fields->field('level')
  10. ->width('1/6')
  11. ->control('priPicker', array('required' => true))
  12. ->items(data('levelList'))
  13. ->value(data('level'));
  14. $fields->field('category')
  15. ->width('1/6')
  16. ->control('picker', array('required' => true))
  17. ->items($lang->charter->categoryList)
  18. ->value(data('charter.category'));
  19. $fields->field('market')
  20. ->width('1/6')
  21. ->control('picker', array('required' => true))
  22. ->items($lang->charter->marketList)
  23. ->value(data('charter.market'));
  24. $fields->field('appliedBy')
  25. ->control('picker', array('required' => true))
  26. ->items($users)
  27. ->value(data('charter.appliedBy'));
  28. $budgetItemList = array();
  29. $budgetUnitList = data('budgetUnitList') ? data('budgetUnitList') : array();
  30. foreach($budgetUnitList as $key => $value)
  31. {
  32. $budgetItemList[] = array('text' => $value, 'value' => $key, 'url' => "javascript:toggleBudgetUnit('{$key}')");
  33. }
  34. $fields->field('budget')
  35. ->label($lang->charter->budget)
  36. ->control(
  37. 'inputControl',
  38. array(
  39. 'control' => 'input',
  40. 'name' => 'budget',
  41. 'value' => data('charter.budget'),
  42. 'prefix' =>
  43. array(
  44. 'control' => 'dropdown',
  45. 'name' => 'budgetUnit',
  46. 'items' => $budgetItemList,
  47. 'widget' => true,
  48. 'text' => zget($lang->project->currencySymbol, data('charter.budgetUnit')),
  49. 'className' => 'ghost'
  50. ),
  51. 'prefixWidth' => 34
  52. )
  53. );
  54. $fields->field('budgetUnit')->control('hidden')->value(data('charter.budgetUnit'));
  55. $fields->field('productCharterBox')
  56. ->width('full')
  57. ->control(array('control' => 'productCharterBox', 'products' => $products, 'charter' => $charter, 'objectType' => data('objectType')));
  58. $fields->field('type')->control('input')->className('hidden')->value(data('objectType'));
  59. foreach(data('fileList') as $key => $fileName)
  60. {
  61. $fields->field($key)
  62. ->name("files[$key]")
  63. ->label($fileName)
  64. ->width('1/3')
  65. ->multiple(false)
  66. ->control('fileSelector', array('multiple' => false, 'maxFileCount' => 1, 'defaultFiles' => $charter->files, 'extra' => "projectApproval-$key", 'renameBtn' => false, 'deleteName' => 'deleteFiles'));
  67. }
  68. $fields->field('spec')
  69. ->width('full')
  70. ->control('editor')
  71. ->value(htmlspecialchars_decode(data('charter.spec')));