create.field.php 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <?php
  2. namespace zin;
  3. global $lang, $config, $app;
  4. $users = data('users');
  5. $products = data('products');
  6. $fields = defineFieldList('charter.create');
  7. $fields->field('name')
  8. ->required(true);
  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('IPD');
  19. $fields->field('market')
  20. ->width('1/6')
  21. ->control('picker', array('required' => true))
  22. ->items($lang->charter->marketList)
  23. ->value('domestic');
  24. $fields->field('appliedBy')
  25. ->control('picker', array('required' => true))
  26. ->items($users)
  27. ->value($app->user->account);
  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. 'prefix' =>
  42. array(
  43. 'control' => 'dropdown',
  44. 'name' => 'budgetUnit',
  45. 'items' => $budgetItemList,
  46. 'widget' => true,
  47. 'text' => zget($lang->project->currencySymbol, 'CNY'),
  48. 'className' => 'ghost'
  49. ),
  50. 'prefixWidth' => 34
  51. )
  52. );
  53. $fields->field('budgetUnit')->control('hidden')->value('CNY');
  54. $fields->field('productCharterBox')
  55. ->width('full')
  56. ->control(array('control' => 'productCharterBox', 'products' => $products, 'objectType' => data('objectType')));
  57. $fields->field('type')->control('input')->className('hidden')->value(data('objectType'));
  58. foreach(data('fileList') as $key => $fileName)
  59. {
  60. $fields->field($key)
  61. ->name("files[$key]")
  62. ->label($fileName)
  63. ->width('1/3')
  64. ->multiple(false)
  65. ->control('fileSelector', array('multiple' => false, 'maxFileCount' => 1));
  66. }
  67. $fields->field('spec')
  68. ->width('full')
  69. ->control('editor');