Code Search for Developers
 
 
  

xhtml_form.php from ECP (EliteCore Project) at Krugle


Show xhtml_form.php syntax highlighted

<?php

class XHTMLFormRawOutput extends FormRawOutput {
	protected $label = '&nbsp;';

	public function setLabel($label) {
		$this->label = $label;
	}
	public function generate() {
		$output = '<div>';
		$output .= '<label for="' . $this->getID() . '">' . $this->label . '</label>';
		$output .= $this->rawOutput;
		$output .= '</div>';
		return $output;
	}
}

class XHTMLWYSIWYG implements FormObject {
	protected $id = false;
	protected $name = false;
	protected $label = false;
	protected $value = "";
	public function __construct($id) {
		$this->id = $id . '_' . FormManager :: getID();
		$this->name = $id;
	}
	public function getID() {
		return $this->id;
	}
	public function setValue($value) {
		$this->value = $value;
	}
	public function setLabel($label) {
		$this->label = $label;
	}
	public function generate() {
		$output = '<div>';
		$output .= '<label for="' . $this->id . '">' . $this->label . '</label>';
		$output .= WYSIWYG :: Show($this->name, $this->value);
		$output .= '</div>';
		return $output;
	}
}

class XHTMLFormInput extends FormInput {
	protected $checked = false;
	protected $buttonAction = false;
	protected $datePickerModule = false;

	public function setDatePickerModule($module) {
		$this->datePickerModule=$module;
	}

	public function generate() {
		if ($this->type == FormInput :: TEXT) {
			$type = "text";
		} else
			if ($this->type == FormInput :: SUBMIT) {
				$type = "submit";
			} else
				if ($this->type == FormInput :: CHECKBOX) {
					$type = "checkbox";
				} else
					if ($this->type == FormInput :: HIDDEN) {
						$type = "hidden";
					} else
						if ($this->type == FormInput :: BUTTON) {
							$type = "button";
						} else if ($this->type == FormInput::DATEPICKER) {
							$type="text";
						}

		if ($this->value === false)
			$value = '';
		else {
			$value = 'value="' . $this->value . '"';
		}
		if ($this->checked && $this->type == FormInput::CHECKBOX) {
			$checked = 'checked="checked"';
		} else {
			$checked = '';
		}
		if ($this->buttonAction && $this->type == FormInput::BUTTON) {
			$buttonAction='onclick="'.$this->buttonAction.'"';
		} else {
			$buttonAction='';
		}
		$output = '';
		if ($this->type != FormInput::HIDDEN) {
			$output .= '<div>';
			$output .= '<label for="' . $this->getID() . '">' . $this->label . '</label>';
		}
		if ($this->type == FormInput::TEXT) {
			$length='maxlength="255"';
		} else {
			$length='';
		}
		$output .= '<input type="' . $type . '" id="' . $this->id . '" name="' . $this->name . '" ' . $value . ' ' . $checked . ' '.$buttonAction.' '.$length.' />';
		if ($this->type == FormInput::DATEPICKER) {
			global $XCS;
			$calendar = $XCS->loadModule('calendar');
			$output .= $calendar->object->createButton($this->id,Date::NOW(Date::WITHOUT_TIME),$this->datePickerModule);
		}
		if ($this->type != FormInput::HIDDEN) {
			$output .= '</div>';
		}
		return $output;
	}

	public function checked($checked = true) {
		$this->checked = $checked;
	}
	public function setButtonAction($action) {
		$this->buttonAction=$action;
	}
}

class XHTMLFormSelect extends FormSelect {
	public function generateOptions() {
		$output = '';
		foreach ($this->options as $option) {
			if ($this->isSelected($option->getValue()))
				$selected = ' selected="selected"';
			else
				$selected = '';

			$output .= '<option value="' . $option->getValue() . '"' . $selected . '>' . $option->getName() . '</option>';
		}
		return $output;
	}
	public function generate() {
		$output = '<div>';
		$output .= '<label for="' . $this->id . '">' . $this->label . '</label>';
		$output .= '<select id="' . $this->id . '" name="' . $this->name . '">';
		$output .= $this->generateOptions();
		$output .= '</select>';
		$output .= '</div>';
		return $output;
	}
}

class XHTMLForm extends Form {
	protected function setAction($action) {
		if ($action === false)
			$action = '#';
		$this->action = $action;
	}

	protected function generateHeader() {
		if ($this->method == self :: POST)
			$method = "post";
		else
			$method = "get";

		$output = '<form class="xcs_form" method="' . $method . '" action="' . $this->action . '">';
		$output .= '<fieldset>';
		$output .= '<legend>' . $this->label . '</legend>';
		return $output;
	}

	protected function generateFooter() {
		global $XCS;
		$output = '</fieldset>';
		$output .= '<fieldset>';
		$output .= '<div>';
		$output .= '<input type="hidden" name="redirect" value="' . Location :: getURL('&amp;') . '" />';
		$output .= '<input type="submit" value="' . $this->getSubmitButtonValue() . '" />';
		$output .= '</div>';
		$output .= '</fieldset>';
		$output .= '</form>';

		return $output;
	}

	public function addInput($id) {
		return $this->addObject($id, new XHTMLFormInput($id));
	}

	public function addWYSIWYG($id) {
		return $this->addObject($id, new XHTMLWYSIWYG($id));
	}

	public function addSelect($id) {
		return $this->addObject($id, new XHTMLFormSelect($id));
	}
	public function addRawOutput($rawOutput) {
		return $this->addObject($rawOutput, new XHTMLFormRawOutput($rawOutput));
	}
}
?>



See more files for this project here

ECP (EliteCore Project)

EliteCore Project is a PHP5.1/Javascript/AJAX/XHTML/CSS framework for creating WEB 2.0 applications and services.The basic open-source instalation can be also used as an interactive personal page or BLOG.This project uses the latest features available.

Project homepage: http://sourceforge.net/projects/elitecore
Programming language(s): JavaScript,PHP,XML
License: cpl

  debug/
    content.php
  exceptions/
    ajaxflush.php
    nomodule.php
    undefineddata.php
  interface/
    encryption.php
    form.php
    module_class.php
    session_interface.php
  renderers/
    default.php
  sql/
    mysql.php
    mysqli.php
  themes/
    ECP/
      accept.png
      add.png
      alt_star.gif
      anchor.png
      arrow_refresh.png
      asterisk_orange.png
      asterisk_yellow.png
      attach.png
      back.png
      cog_error.png
      cog_go.png
      comment.png
      comment_add.png
      comment_delete.png
      comment_edit.png
      comments.png
      comments_add.png
      comments_delete.png
      control_play_blue.png
      drive.png
      gnome-fs-directory.png
      gnome-mime-audio.png
      layers.png
      layout.png
      layout_add.png
      layout_content.png
      layout_delete.png
      layout_edit.png
      layout_error.png
      layout_header.png
      layout_link.png
      layout_sidebar.png
      lightbulb.png
      lightbulb_add.png
      lightbulb_delete.png
      lightbulb_off.png
      lightning.png
      lightning_add.png
      lightning_delete.png
      lightning_go.png
      link.png
      link_add.png
      link_break.png
      link_delete.png
      link_edit.png
      link_error.png
      link_go.png
      lock.png
      lock_add.png
      lock_break.png
      lock_delete.png
      lock_edit.png
      lock_go.png
      lock_open.png
      newspaper.png
      newspaper_add.png
      newspaper_delete.png
      newspaper_go.png
      newspaper_link.png
      note.gif
      note.png
      note_add.png
      note_delete.gif
      note_delete.png
      note_edit.png
      note_error.png
      note_go.png
      note_new.gif
      overlays.png
      package.png
      package_add.png
      package_delete.png
      package_go.png
      package_green.png
      package_link.png
      page.gif
      page.png
      page_add.png
      page_attach.png
      page_code.png
      page_copy.png
      page_delete.png
      page_edit.png
      page_error.png
      page_excel.png
      page_find.png
      page_gear.png
      page_go.png
      page_green.png
      page_key.png
      page_lightning.png
      page_link.png
      page_paintbrush.png
      page_paste.png
      page_red.png
      page_refresh.png
      page_save.png
      page_white.png
      pencil.png
      pencil_add.png
      pencil_delete.png
      pencil_go.png
      photo.png
      photo_add.png
      photo_delete.png
      photo_link.png
      photos.png
      picture.png
      picture_add.png
      picture_delete.png
      picture_edit.png
      picture_empty.png
      picture_error.png
      picture_go.png
      picture_key.png
      picture_link.png
      picture_save.png
      pictures.png
      plugin.png
      plugin_add.png
      plugin_delete.png
      plugin_disabled.png
      plugin_edit.png
      plugin_error.png
      plugin_go.png
      plugin_link.png
      report.png
      report_add.png
      report_delete.png
      report_disk.png
      report_edit.png
      report_go.png
      report_key.png
      report_link.png
      report_magnify.png
      report_picture.png
      report_user.png
      report_word.png
      script.png
      script_add.png
      script_code.png
      script_code_red.png
      script_delete.png
      script_edit.png
      script_error.png
      script_gear.png
      script_go.png
      script_key.png
      script_lightning.png
      script_link.png
      script_palette.png
      script_save.png
      star.png
      star_rating.gif
      stop.png
      style.png
      text_align_center.png
      text_align_justify.png
      text_align_left.png
      text_align_right.png
      text_allcaps.png
      text_bold.png
      text_columns.png
      text_dropcaps.png
      text_heading_1.png
      text_heading_2.png
      text_heading_3.png
      text_heading_4.png
      text_heading_5.png
      text_heading_6.png
      text_horizontalrule.png
      text_indent.png
      text_indent_remove.png
      text_italic.png
      text_kerning.png
      text_letter_omega.png
      text_letterspacing.png
      text_linespacing.png
      text_list_bullets.png
      text_list_numbers.png
      text_lowercase.png
      text_padding_bottom.png
      text_padding_left.png
      text_padding_right.png
      text_padding_top.png
      text_replace.png
      text_signature.png
      text_smallcaps.png
      text_strikethrough.png
      text_subscript.png
      text_superscript.png
      text_underline.png
      text_uppercase.png
      textfield.png
      textfield_add.png
      textfield_delete.png
      textfield_key.png
      textfield_rename.png
      tux.png
      vert_star.gif
    ECP.xml
  Icon.php
  Location.php
  Module.php
  ModulesManager.php
  MusicTags.php
  Page.php
  XHTMLParser.php
  XMLForms.php
  ajax.php
  author.html
  cache.php
  config.php
  date.php
  db.php
  debug.php
  ecp-full.php
  ecp-mini.php
  engine.php
  events.php
  filesystem.php
  footer.html
  i18n.php
  mailer.php
  main.css
  mcrypt.php
  mime.php
  mod_rewrite.php
  perspective.php
  rc4.php
  reflection.php
  session_passport.php
  storage.php
  string.php
  template.php
  texy.php
  user.php
  user_cache.php
  wysiwyg_texy.php
  xhtml_form.php
  xtea.php