function wo_submit_button($val='Submit', $wrap=true, $ex='') {
submit_button(__($val), 'primary', 'submit', $wrap, $ex);
}
function wo_button($name='submit', $val='Submit', $ex='', $class='primary') {
echo '';
}
function wo_back_button($name='back', $val='Back', $class='primary') {
// echo "ORIG REFERER: " . wp_get_original_referer() . "
";
// echo "REFERER: " . wp_get_referer() . "
";
// Add referer field
wp_original_referer_field(true, 'previous');
// Get referer field for back button
$referer = wp_get_original_referer();
if ($referer === false) {
$referer = wp_get_referer();
}
// echo "MY_REFERER: " . $referer . "
";
// TODO - change to anchor?
$onClick = 'onclick="window.location=\'' . $referer . '\'"';
wo_button($name, $val, $onClick, $class);
}
function wo_referer($view) {
}
class WoElement {
protected $name;
// protected $required = false;
function __construct($name) {
$this->name = $name;
}
// function required() {
// $this->required = $true;
// }
function display() {
// Override mofo
}
function stuff($desc, $help='') {
$name = $this->name;
$desc = __($desc);
# $val = esc_attr($val); // Need this?
if ($help!='') {
$help = "
".__($help)."
";
}
$field = $this->display();
echo <<
$field
$help
EOF;
}
function column($label='', $suffix=':') {
$name = $this->name;
if ($label!='') {
$label = '';
}
# $val = esc_attr($val); // Need this?
$field = $this->display();
echo <<
$label
$field
EOF;
}
static function hidden($name, $value) {
echo "\n";
}
}
class WoCheckBox extends WoElement {
private $checked;
private $ex;
function __construct($name,$checked=0, $ex='') {
parent::__construct($name);
$this->checked = $checked;
$this->ex = $ex;
}
function display() {
if ($this->checked) $this->ex .= " CHECKED";
return "ex . "/>\n";
}
// Assume no colon for checkbox
function column($desc) {
parent::column($desc,'');
}
}
class WoText extends WoElement {
private $text;
function __construct($name, $text) {
parent::__construct($name);
$this->text = $text;
}
function display() {
return $this->text;
}
}
// class WoMapSelect extends WoElement {
// function __construct($name, $arr, $sel='', $ex='') {
// parent::__construct($name, $arr, $sel, $ex);
// }
//
// }
class WoSelect extends WoElement {
private $arr;
private $sel;
private $ex;
function __construct($name, $arr, $sel='', $ex='') {
parent::__construct($name);
$this->arr = $arr;
$this->sel = $sel;
$this->ex = $ex;
}
function display() {
$name = $this->name;
$field = "";
}
function option($n,$p) {
$field = "\n";
return $field;
}
}
class WoMulti extends WoElement {
private $arr;
private $sel;
private $ex;
function __construct($name, $arr, $sel='', $ex='') {
parent::__construct($name);
$this->arr = $arr;
$this->sel = $sel;
$this->ex = $ex;
}
function display() {
$name = $this->name;
$field = "";
}
function option($n,$p) {
$field = "\n";
return $field;
}
}
class WoFile extends WoElement {
private $val;
function __construct($name, $val = '') {
parent::__construct($name);
$this->val = $val;
}
function display() {
$name = $this->name;
// TODO - how do i set filename?
return "";
}
}
class WoNumber extends WoInput {
function __construct($name, $val='', $max=10, $ex='') {
parent::__construct($name, $val, 4, "max=$max min=0 $ex", 'number');
}
}
class WoInput extends WoElement {
private $val;
private $size;
private $ex;
private $type;
function __construct($name, $val='', $size=20, $ex='', $type='text') {
parent::__construct($name);
$this->val = $val;
$this->size = $size > 0 ? $size : 20;
$this->ex = $ex;
$this->type = $type;
}
function display() {
$name = $this->name;
return "ex />";
}
}
class WoDate extends WoInput {
function __construct($name, $val='') {
parent::__construct($name, $val, 10, "class='date' required");
}
}
class WoOptionalDate extends WoInput {
function __construct($name, $val='', $ex='') {
parent::__construct($name, $val, 10, "class='date' $ex");
}
function display() {
return parent::display() . " ";
}
}
class WoDateTime extends WoInput {
function __construct($name, $val='') {
if ($val!='') $val = substr($val, 0, -3); // Remove seconds
parent::__construct($name, $val, 10, "class='datetime' required");
}
}
class WoJS {
static function convertBoolean($boolean) {
return $boolean ? 'true' : 'false';
}
}
class WoToggle {
// pattern/element pairs
private $matches = array();
function __construct($pattern, $element) {
$this->add($pattern, $element);
}
function add($pattern, $element) {
$this->matches[$this->convert($pattern)] = $element;
}
function event() {
$event = "onchange = \"";
foreach ($this->matches as $pattern => $element) {
$event .= "toggle(this.".$this->attribute().", $pattern, '$element'); ";
}
return $event . "\"";
}
function script($value) {
$value = $this->convert($value);
echo "";
}
function convert($value) {
return $value;
}
function attribute() {
return 'value';
}
}
class WoToggleText extends WoToggle {
function convert($value) {
return "'$value'";
}
}
class WoToggleCheckbox extends WoToggle {
function attribute() {
return 'checked';
}
function convert($value) {
return WoJS::convertBoolean($value);
}
}
function doRadioH($name,$arr,$checked) {
# echo " | ";
foreach ($arr as $k=>$v) {
echo "  $v";
}
# echo " |
";
echo "
";
}
function doRadioV($name,$arr) {
foreach ($arr as $k=>$v) {
# echo "";
echo "$v";
# echo " |
";
echo "
";
}
}
function doClear() {
echo "\n";
}
function doButton($name,$onClick) {
echo "\n";
}
function doSubmitNoTR($name,$value) {
doButton($name,"document.f.op.value='$value'; submit();");
}
function doSubmit($name,$value) {
# echo "";
doSubmitNoTR($name,$value);
# echo " |
";
echo "
";
}
function doHeader($note) {
doNote("$note");
}
function doNote($note) {
# echo "";
echo "  $note";
# |
\n";
echo "
";
}
function show($out) {
foreach($out as $o) {
echo $o."\n";
}
}
function showBR($out) {
foreach($out as $o => $l) {
echo $o," : ",$l,"
";
}
}
function showArray($line) {
foreach ($line as $n => $v) {
//if ($v!="") {
echo "$n: ";
if (is_array($v) || is_object($v)) {
echo "array[
";
showArray($v);
echo "]
";
} else {
echo ($v==null) ? 'null' : $v;
}
echo "
";
//}
}
}
function format($str) {
$str = preg_replace("/\[contact\|([^]]*)]/","contact",$str);
$str = preg_replace("/\[(....*)\|([^]]*)]/","$2",$str);
$str = preg_replace("/\[(.*)\|(.*)\]/","$2",$str);
$str = str_replace("||","",$str);
$str = str_replace("|","
",$str);
$str = preg_replace("/\*([^*]*)\*/","$1",$str);
return $str;
}
function wo_images() {
global $WO_IMAGES;
return array(
"G" => "",
"Y" => "",
"R" => "");
}
function wo_set_title($title) {
echo <<
jQuery("h1").last().html("$title");
EOF;
}
function wo_add_header($extra) {
echo <<
jQuery(".post-header").prepend("$extra");
EOF;
}
?>