Example #1
0
 function requiresJsAndCss()
 {
     $elements = $this->field->headElements(new Parameter('notUsed', new StringType()));
     $this->assert(array_slice($elements, 0, 4), [HeadElements::jquery(), HeadElements::bootstrap(), HeadElements::bootstrapJs(), HeadElements::fontAwesome()]);
     $this->assert->contains((string) $elements[4], 'summernote.min.css');
     $this->assert->contains((string) $elements[5], 'summernote.min.js');
     $this->assert->contains((string) $elements[6], "\$(this).val(\$(this).code());");
 }
Example #2
0
 /**
  * @param Parameter $parameter
  * @return array|Element[]
  */
 public function headElements(Parameter $parameter)
 {
     $elements = [HeadElements::jquery(), HeadElements::jqueryUi(), HeadElements::jqueryUiCss()];
     if ($this->mobile->isMobile()) {
         $elements[] = HeadElements::script('//cdnjs.cloudflare.com/ajax/libs/jqueryui-touch-punch/0.2.3/jquery.ui.touch-punch.min.js');
     }
     return $elements;
 }
Example #3
0
 function requireHeadElementsOfInnerField()
 {
     M::stub($this->inside->headElements(Arg::any()))->will()->return_([new Element('link', ['src' => 'foo.bar']), new Element('link', ['src' => 'bar.bas'])]);
     $headElements = implode('', $this->field->headElements($this->param('foo')));
     $this->assert->contains($headElements, (string) HeadElements::jquery());
     $this->assert->contains($headElements, 'src="foo.bar"');
     $this->assert->contains($headElements, 'src="bar.bas"');
 }
Example #4
0
 function noHeadElements()
 {
     $elements = $this->field->headElements($this->param);
     $this->assert($elements[0], HeadElements::bootstrap());
     $this->assert($elements[1], HeadElements::jquery());
     $this->assert->contains((string) $elements[2], 'bootstrap-switch.min.css');
     $this->assert->contains((string) $elements[3], 'bootstrap-switch.min.js');
     $this->assert->contains((string) $elements[4], "\$('.boolean-switch').bootstrapSwitch(");
 }
Example #5
0
 /**
  * @param RendererRegistry $renderers
  * @return \rtens\domin\delivery\web\Element[]
  */
 public function headElements(RendererRegistry $renderers)
 {
     $elements = [HeadElements::jquery()];
     $renderer = $renderers->getRenderer($this->content);
     if ($renderer instanceof WebRenderer) {
         $elements = array_merge($elements, $renderer->headElements($this->content));
     }
     return $elements;
 }
Example #6
0
 /**
  * @param Parameter $parameter
  * @return array|Element[]
  */
 public function headElements(Parameter $parameter)
 {
     $ownElements = [HeadElements::jquery(), new Element('script', [], ["\$(function () {\n                    \$('.multi-control.not-selected').hide().appendTo('body');\n                });"])];
     foreach ($this->getTypes($parameter) as $i => $type) {
         $optionParameter = new Parameter($parameter->getName(), $type);
         $optionElements = $this->getField($optionParameter)->headElements($optionParameter);
         $ownElements = array_merge($ownElements, $optionElements);
     }
     return $ownElements;
 }
Example #7
0
 function requiresLibraries()
 {
     $headElements = implode('', $this->field->headElements(new Parameter('foo', new UnknownType())));
     $this->assert->contains($headElements, (string) HeadElements::jquery());
     $this->assert->contains($headElements, (string) HeadElements::bootstrap());
     $this->assert->contains($headElements, (string) HeadElements::bootstrapJs());
     $this->assert->contains($headElements, 'moment.js');
     $this->assert->contains($headElements, 'bootstrap-datetimepicker.min.js');
     $this->assert->contains($headElements, 'bootstrap-datetimepicker.min.css');
 }
Example #8
0
 function collectHeadElements()
 {
     $this->action->givenTheAction('foo');
     $this->givenAWebFieldRequiringTheHeadElements(function (Parameter $parameter) {
         return [new Element('one'), new Element($parameter->getName())];
     });
     $this->whenIExecute('foo');
     $this->thenThereShouldBeAHeadElement(HeadElements::jquery());
     $this->thenThereShouldBeAHeadElement(HeadElements::jqueryUi());
     $this->thenThereShouldBeAHeadElement(HeadElements::bootstrap());
     $this->thenThereShouldBeAHeadElement(HeadElements::bootstrapJs());
     $this->thenThereShouldBeAHeadElement('<one></one>');
     $this->thenThereShouldBeAHeadElement('<foo></foo>');
 }
Example #9
0
 /**
  * @param Parameter $parameter
  * @return array|\rtens\domin\delivery\web\Element[]
  */
 public function headElements(Parameter $parameter)
 {
     $script = file_get_contents(__DIR__ . '/js/ImageField.js');
     $script = str_replace('$cropperOptions$', json_encode($this->getCropperOptions()), $script);
     $script = str_replace('$webcamjsOptions$', json_encode($this->getWebcamOptions()), $script);
     return [HeadElements::jquery(), HeadElements::bootstrapJs(), HeadElements::bootstrap(), HeadElements::script('//cdnjs.cloudflare.com/ajax/libs/cropper/0.9.3/cropper.min.js'), HeadElements::style('//cdnjs.cloudflare.com/ajax/libs/cropper/0.9.3/cropper.min.css'), HeadElements::script('http://pixlcore.com/demos/webcamjs/webcam.js'), new Element('script', [], [$script])];
 }
Example #10
0
 private static function baseHeadElements()
 {
     return [HeadElements::jquery(), HeadElements::jqueryUi(), HeadElements::bootstrap(), HeadElements::bootstrapJs()];
 }
Example #11
0
 /**
  * @param Parameter $parameter
  * @return array|Element[]
  */
 public function headElements(Parameter $parameter)
 {
     $innerParameter = $this->getInnerParameter($parameter);
     return array_merge($this->getInnerField($innerParameter)->headElements($innerParameter), [HeadElements::jquery(), new Element('script', [], ["\$(function () {\n                    \$('.null-nullable').hide().appendTo('body');\n                });"])]);
 }
Example #12
0
 /**
  * @param Parameter $parameter
  * @return array|Element[]
  */
 public function headElements(Parameter $parameter)
 {
     return array_merge([HeadElements::jquery(), HeadElements::jqueryUi(), new Element('script', [], ["\$(function () {\n                    \$('.array-new-items').appendTo('body');\n                    \$('.array-items').sortable({handle:'.sortable-handle'});\n                    \$('.array-items .sortable-handle').disableSelection();\n                });"])], $this->mobile->isMobile() ? [HeadElements::script('//cdnjs.cloudflare.com/ajax/libs/jqueryui-touch-punch/0.2.3/jquery.ui.touch-punch.min.js')] : [], $this->itemHeadElements($this->makeInnerParameter($parameter)));
 }
Example #13
0
 function requiredScripts()
 {
     $this->assert($this->field->headElements(new Parameter('foo', new ArrayType(new UnknownType()))), [HeadElements::jquery(), HeadElements::jqueryUi(), new Element('script', [], ["\$(function () {\n                    \$('.array-new-items').appendTo('body');\n                    \$('.array-items').sortable({handle:'.sortable-handle'});\n                    \$('.array-items .sortable-handle').disableSelection();\n                });"])]);
 }
Example #14
0
 /**
  * @param Parameter $parameter
  * @return array|Element[]
  */
 public function headElements(Parameter $parameter)
 {
     return [HeadElements::jquery(), HeadElements::bootstrap(), HeadElements::bootstrapJs(), HeadElements::fontAwesome(), HeadElements::style('//cdnjs.cloudflare.com/ajax/libs/summernote/0.6.10/summernote.min.css'), HeadElements::script('//cdnjs.cloudflare.com/ajax/libs/summernote/0.6.10/summernote.min.js'), new Element('script', [], ["\n                \$(function() {\n                    \$('.summernote').summernote({\n                        onKeyup: function(e) {\n                            \$(this).val(\$(this).code());\n                        }\n                    });\n                    \$('.summernote').on('invalid', function (e) {\n                        var editor = \$(e.target).siblings('.note-editor');\n                        editor.popover({\n                            content: 'Please fill out this field.',\n                            placement: 'bottom',\n                            trigger: 'manual'\n                        });\n                        editor.popover('show');\n\n                        editor.click(function () {\n                            editor.popover('hide');\n                        });\n                    });\n                });\n            "])];
 }
Example #15
0
 /**
  * @param Parameter $parameter
  * @return array|Element[]
  */
 public function headElements(Parameter $parameter)
 {
     return [HeadElements::jquery(), HeadElements::bootstrap(), HeadElements::bootstrapJs(), HeadElements::script('//cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.3/moment.min.js'), HeadElements::script('//cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.14.30/js/bootstrap-datetimepicker.min.js'), HeadElements::style('//cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.14.30/css/bootstrap-datetimepicker.min.css'), new Element('script', [], ['var dateTimePickerSettings = ' . json_encode($this->getOptions()) . ';'])];
 }
Example #16
0
 /**
  * @param ActionList $value
  * @return array|Element[]
  */
 public function headElements($value)
 {
     return [HeadElements::jquery(), HeadElements::bootstrap(), HeadElements::bootstrapJs()];
 }
Example #17
0
 /**
  * @param Parameter $parameter
  * @return array|\rtens\domin\delivery\web\Element[]
  */
 public function headElements(Parameter $parameter)
 {
     return [HeadElements::jquery(), HeadElements::style('//cdn.rawgit.com/rtens/bootstrap-combobox/cffe84e7/css/bootstrap-combobox.css'), HeadElements::script('//cdn.rawgit.com/rtens/bootstrap-combobox/cffe84e7/js/bootstrap-combobox.js'), new Element('style', [], ['.typeahead-long { width:100% }'])];
 }
Example #18
0
 /**
  * @param WebRequest $request <-
  * @return array
  */
 public function doGet(WebRequest $request)
 {
     $this->resetBreadCrumbs();
     return ['name' => $this->app->name, 'menu' => $this->app->menu->render($request), 'action' => $this->assembleActions($request->getContext()), 'headElements' => [(string) HeadElements::jquery(), (string) HeadElements::bootstrap(), (string) HeadElements::bootstrapJs()]];
 }
Example #19
0
 /**
  * @param Parameter $parameter
  * @return array|Element[]
  */
 public function headElements(Parameter $parameter)
 {
     return [HeadElements::bootstrap(), HeadElements::jquery(), HeadElements::style('//cdnjs.cloudflare.com/ajax/libs/bootstrap-switch/3.3.2/css/bootstrap3/bootstrap-switch.min.css'), HeadElements::script('//cdnjs.cloudflare.com/ajax/libs/bootstrap-switch/3.3.2/js/bootstrap-switch.min.js'), new Element('script', [], ["\n                \$(function () {\n                    \$('.boolean-switch').bootstrapSwitch({\n                        size: 'small',\n                        onColor: 'success',\n                        onText: 'Yes',\n                        offText: 'No'\n                    });\n                });"])];
 }