create.field.php 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. <?php
  2. namespace zin;
  3. global $lang, $app;
  4. $fromFeedback = data('from') == 'feedback';
  5. $fields = defineFieldList('demand.create');
  6. $fields->field('pool')
  7. ->control('inputGroup')
  8. ->hidden(!$fromFeedback && !data('demand.id'))
  9. ->required($fromFeedback)
  10. ->itemBegin('pool')->control('picker')->items(data('demandpools'))->value(data('poolID'))->itemEnd();
  11. $fields->field('product')
  12. ->control('inputGroup')
  13. ->checkbox(array('text' => $lang->demand->undetermined, 'name' => 'undetermined', 'checked' => false))
  14. ->itemBegin('undeterminedProduct')->control('input')->className('hidden')->readonly(true)->itemEnd()
  15. ->itemBegin('product[]')->control('picker')->multiple()->menu(array('checkbox' => true))->items(data('products'))->itemEnd();
  16. $fields->field('assignedTo')
  17. ->control('inputGroup')
  18. ->itemBegin('assignedTo')->control('picker')->items(data('users'))->itemEnd();
  19. $fields->field('source')
  20. ->foldable()
  21. ->control('picker')
  22. ->items($lang->demand->sourceList);
  23. $fields->field('sourceNote')
  24. ->foldable();
  25. $fields->field('duration')
  26. ->control('picker')
  27. ->items($lang->demand->durationList);
  28. $fields->field('BSA')
  29. ->control('picker')
  30. ->labelHint($lang->demand->bsaTip)
  31. ->items($lang->demand->bsaList);
  32. $fields->field('feedbackedBy')
  33. ->control('input')
  34. ->foldable();
  35. $fields->field('email')
  36. ->control('input')
  37. ->foldable();
  38. $fields->field('parent')
  39. ->control('picker')
  40. ->items(data('parents'))
  41. ->value(0);
  42. $fields->field('reviewer')
  43. ->control('inputGroup')
  44. ->required(true)
  45. ->id('reviewerBox')
  46. ->wrapAfter()
  47. ->itemBegin('reviewer[]')->control('picker')->multiple()->menu(array('checkbox' => true))->items(data('reviewers'))->itemEnd();
  48. $fields->field('needNotReview')->control('hidden')->value(0);
  49. $fields->field('title')
  50. ->control('colorInput', array('colorValue' => data('demand.color')));
  51. $fields->field('category')
  52. ->width('1/4')
  53. ->control('picker', array('required' => true))
  54. ->items($lang->demand->categoryList);
  55. $fields->field('pri')
  56. ->width('1/4')
  57. ->control('priPicker', array('required' => true))
  58. ->items($lang->demand->priList)
  59. ->value(3);
  60. $fields->field('spec')
  61. ->width('full')
  62. ->control('editor');
  63. $fields->field('verify')
  64. ->width('full')
  65. ->control('editor');
  66. $fields->field('files')
  67. ->width('full')
  68. ->control('fileSelector');
  69. $fields->field('mailto')
  70. ->control('mailto');
  71. $fields->field('keywords')
  72. ->control('input');
  73. if($fromFeedback)
  74. {
  75. $fields->field('feedback')
  76. ->control('hidden')
  77. ->value(data('fromID'));
  78. }
  79. $fields->field('status')->control('hidden')->value('active');