PluginProbe
Contact Forms by Cimatti / 1.9.2
Contact Forms by Cimatti v1.9.2
2.3.6 2.3.5 2.3.0 2.2.32 2.2.4 2.2.0 2.1.2 2.1.1 trunk 1.0 1.1 1.2 1.2.1 1.3 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 1.4.1 All 62 releases
contact-forms / PFBC / View.php

View.php in Contact Forms by Cimatti 1.9.2, at PFBC/View.php

58 lines 1.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 abstract class View extends Base {
3 protected $form;
4
5 public function __construct(array $properties = null) {
6 $this->configure($properties);
7 }
8
9 /*This method encapsulates the various pieces that are included in an element's label.*/
10 protected function renderLabel($element) {
11 $label = $element->getLabel();
12 $id = $element->getID();
13 $description = $element->getDescription();
14 if(!empty($label) || !empty($description)) {
15 echo '<div class="pfbc-label">';
16 if(!empty($label)) {
17 echo '<label for="', $id, '">';
18 if($element->isRequired())
19 echo '<strong>*</strong> ';
20 echo $label, '</label>';
21 }
22 if(!empty($description))
23 echo '<em>', $description, '</em>';
24 echo '</div>';
25 }
26 }
27
28 public function setForm(Form $form) {
29 $this->form = $form;
30 }
31
32 /*jQuery is used to apply css entries to the last element.*/
33 public function jQueryDocumentReady() {
34 echo 'jQuery("#', $this->form->getId(), ' .pfbc-element:last").css({ "margin-bottom": "0", "padding-bottom": "0", "border-bottom": "none" });';
35 }
36
37 public function render() {}
38
39 public function renderCSS() {
40 $id = $this->form->getId();
41
42 /*For ease-of-use, default styles are applied to form elements.*/
43 if(!in_array("style", $this->form->getPrevent())) {
44 echo <<<CSS
45 #$id .pfbc-label label { font-weight: bold; }
46 #$id .pfbc-label em { font-size: .9em; color: #888; }
47 #$id .pfbc-label strong { color: #990000; }
48 #$id .pfbc-textbox, #$id .pfbc-textarea, #$id .pfbc-select { border: 1px solid #ccc; font-size: 14px; }
49 #$id .pfbc-textbox, #$id .pfbc-textarea { padding: 7px; }
50 #$id .pfbc-select { padding: 6px 7px; }
51 #$id img.pfbc-loading { position: absolute; top: 50%; right: .5em; margin-top: -8px; border: 0; }
52 CSS;
53 }
54 }
55
56 public function renderJS() {}
57 }
58