v1.php 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <?php
  2. namespace zin;
  3. requireWg('thinkQuestion');
  4. /**
  5. * 思引师填空部件类。
  6. * thinmory Input widget class.
  7. */
  8. class thinkInput extends thinkQuestion
  9. {
  10. public static function getPageCSS()
  11. {
  12. $baseCss = file_get_contents(dirname(__FILE__, 2) . DS . 'thinkstepbase' . DS . 'css' . DS . 'v1.css');
  13. return file_get_contents(__DIR__ . DS . 'css' . DS . 'v1.css') . $baseCss;
  14. }
  15. protected function buildDetail()
  16. {
  17. global $lang, $app, $config;
  18. $app->loadLang('thinkstep');
  19. $detailWg = parent::buildDetail();
  20. list($step, $required, $value, $wizard) = $this->prop(array('step', 'required', 'value', 'wizard'));
  21. $preViewModel = $wizard->model == 'appeals';
  22. $disabled = false;
  23. if($step)
  24. {
  25. $required = $step->options->required;
  26. $value = !empty($step->answer->result) ? $step->answer->result[0] : '';
  27. $disabled = !empty($value) && $preViewModel;
  28. }
  29. $detailWg[] = div(set::title($value), textarea
  30. (
  31. set::rows('3'),
  32. set::name('result'),
  33. set::required($required),
  34. set::value($value),
  35. set::readonly($disabled),
  36. set::placeholder($lang->thinkstep->placeholder->pleaseInput)
  37. ));
  38. return $detailWg;
  39. }
  40. protected function buildFormItem()
  41. {
  42. global $lang, $app;
  43. $app->loadLang('thinkstep');
  44. $formItems = parent::buildFormItem();
  45. list($step, $required) = $this->prop(array('step', 'required'));
  46. if($step) $required = $step->options->required;
  47. $formItems[] = array(
  48. formHidden('options[questionType]', 'input'),
  49. formGroup
  50. (
  51. setClass('w-1/2 step-required'),
  52. setStyle(array('display' => 'flex')),
  53. set::label($lang->thinkstep->label->required),
  54. radioList(set::name('options[required]'), set::inline(true), set::items($lang->thinkstep->requiredList), set::value($required))
  55. )
  56. );
  57. return $formItems;
  58. }
  59. }