git-svn-id: https://192.168.0.254/svn/Proyectos.Incam_FormulariosCalidad/trunk@12 e2c41b2c-0c6f-0149-8b81-50b1a9191bb3
2597 lines
83 KiB
PHP
2597 lines
83 KiB
PHP
<?php
|
||
/******************************************************************************
|
||
MachForm
|
||
|
||
Copyright 2007 Appnitro Software. This code cannot be redistributed without
|
||
permission from http://www.appnitro.com/
|
||
|
||
More info at: http://www.appnitro.com/
|
||
******************************************************************************/
|
||
|
||
namespace mobile_view_funcions;
|
||
|
||
//Single Line Text
|
||
function display_text($element){
|
||
|
||
//check for error
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_message = "<br/><p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\">{$element->guidelines}</p>";
|
||
}
|
||
|
||
//check for populated value, if exist, use it instead default_value
|
||
if(isset($element->populated_value['element_'.$element->id]['default_value'])){
|
||
$element->default_value = $element->populated_value['element_'.$element->id]['default_value'];
|
||
}
|
||
|
||
|
||
$element_markup = <<<EOT
|
||
<span class="graytitle">{$element->title} {$span_required}</span>
|
||
{$error_message}
|
||
{$guidelines}
|
||
<ul class="pageitem">
|
||
<li class="bigfield">
|
||
<input type="text" id="element_{$element->id}" name="element_{$element->id}" class="element text {$element->size}" value="{$element->default_value}"/>
|
||
</li>
|
||
</ul>
|
||
EOT;
|
||
|
||
/*<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description" for="element_{$element->id}">{$element->title} {$span_required}</label>
|
||
<div>
|
||
<input id="element_{$element->id}" name="element_{$element->id}" class="element text {$element->size}" type="text" value="{$element->default_value}" />
|
||
</div>{$guidelines} {$error_message}
|
||
</li>*/
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
|
||
|
||
//Paragraph Text
|
||
function display_textarea($element){
|
||
//check for error
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_message = "<br/><p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\">{$element->guidelines}</p>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
//check for populated value, if exist, use it instead default_value
|
||
if(isset($element->populated_value['element_'.$element->id]['default_value'])){
|
||
$element->default_value = $element->populated_value['element_'.$element->id]['default_value'];
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<span class="graytitle">{$element->title} {$span_required}</span>
|
||
{$error_message}
|
||
{$guidelines}
|
||
<ul class="pageitem">
|
||
<li class="textbox">
|
||
<textarea id="element_{$element->id}" name="element_{$element->id}" class="element textarea {$element->size}">{$element->default_value}</textarea>
|
||
</li>
|
||
</ul>
|
||
EOT;
|
||
|
||
/*<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description" for="element_{$element->id}">{$element->title} {$span_required}</label>
|
||
<div>
|
||
<textarea id="element_{$element->id}" name="element_{$element->id}" class="element textarea {$element->size}" rows="8" cols="90">{$element->default_value}</textarea>
|
||
</div>{$guidelines} {$error_message}
|
||
</li>*/
|
||
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
|
||
//File Upload
|
||
function display_file($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
//check for populated value (this is being used for edit_entry.php only)
|
||
if(!empty($element->populated_value)){
|
||
$file_option = $element->populated_value['element_'.$element->id]['default_value']; //this should be contain html markup to download or delete current file
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description" for="element_{$element->id}">{$element->title} {$span_required}</label>
|
||
<div>
|
||
<input id="element_{$element->id}" name="element_{$element->id}" class="element file" type="file" />
|
||
</div>{$file_option} {$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
//Website
|
||
function display_url($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
//check for default value
|
||
if(empty($element->default_value)){
|
||
$element->default_value = 'http://';
|
||
}
|
||
|
||
//check for populated value, if exist, use it instead default_value
|
||
if(!empty($element->populated_value['element_'.$element->id]['default_value'])){
|
||
$element->default_value = $element->populated_value['element_'.$element->id]['default_value'];
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description" for="element_{$element->id}">{$element->title} {$span_required}</label>
|
||
<div>
|
||
<input id="element_{$element->id}" name="element_{$element->id}" class="element text {$element->size}" type="text" value="{$element->default_value}" />
|
||
</div>{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
//Email
|
||
function display_email($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
//check for populated value, if exist, use it instead default_value
|
||
if(!empty($element->populated_value['element_'.$element->id]['default_value'])){
|
||
$element->default_value = $element->populated_value['element_'.$element->id]['default_value'];
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description" for="element_{$element->id}">{$element->title} {$span_required}</label>
|
||
<div>
|
||
<input id="element_{$element->id}" name="element_{$element->id}" class="element text {$element->size}" type="text" maxlength="255" value="{$element->default_value}" />
|
||
</div>{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
|
||
//Phone - Extended
|
||
function display_phone($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
//check default value
|
||
if(!empty($element->default_value)){
|
||
//split into (xxx) xxx - xxxx
|
||
$default_value_1 = substr($element->default_value,0,3);
|
||
$default_value_2 = substr($element->default_value,3,3);
|
||
$default_value_3 = substr($element->default_value,6,4);
|
||
}
|
||
|
||
if(!empty($element->populated_value['element_'.$element->id.'_1']['default_value']) ||
|
||
!empty($element->populated_value['element_'.$element->id.'_2']['default_value']) ||
|
||
!empty($element->populated_value['element_'.$element->id.'_3']['default_value'])
|
||
){
|
||
$default_value_1 = '';
|
||
$default_value_2 = '';
|
||
$default_value_3 = '';
|
||
$default_value_1 = $element->populated_value['element_'.$element->id.'_1']['default_value'];
|
||
$default_value_2 = $element->populated_value['element_'.$element->id.'_2']['default_value'];
|
||
$default_value_3 = $element->populated_value['element_'.$element->id.'_3']['default_value'];
|
||
}
|
||
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description">{$element->title} {$span_required}</label>
|
||
<span>
|
||
<input id="element_{$element->id}_1" name="element_{$element->id}_1" class="element text" size="3" maxlength="3" value="{$default_value_1}" type="text" /> -
|
||
<label for="element_{$element->id}_1">(###)</label>
|
||
</span>
|
||
<span>
|
||
<input id="element_{$element->id}_2" name="element_{$element->id}_2" class="element text" size="3" maxlength="3" value="{$default_value_2}" type="text" /> -
|
||
<label for="element_{$element->id}_2">###</label>
|
||
</span>
|
||
<span>
|
||
<input id="element_{$element->id}_3" name="element_{$element->id}_3" class="element text" size="4" maxlength="4" value="{$default_value_3}" type="text" />
|
||
<label for="element_{$element->id}_3">####</label>
|
||
</span>
|
||
{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
//Phone - Simple
|
||
function display_simple_phone($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
//check for populated value
|
||
if(!empty($element->populated_value['element_'.$element->id]['default_value'])){
|
||
$element->default_value = $element->populated_value['element_'.$element->id]['default_value'];
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description">{$element->title} {$span_required}</label>
|
||
<div>
|
||
<input id="element_{$element->id}" name="element_{$element->id}" class="element text medium" type="text" maxlength="255" value="{$element->default_value}"/>
|
||
</div>{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
|
||
|
||
//Date - Normal
|
||
function display_date($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
global $lang;
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
$machform_path = '';
|
||
if(!empty($element->machform_path)){
|
||
$machform_path = $element->machform_path;
|
||
}
|
||
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description">{$element->title} {$span_required}</label>
|
||
<span>
|
||
<input id="element_{$element->id}_1" name="element_{$element->id}_1" class="element text" size="2" maxlength="2" value="{$element->populated_value['element_'.$element->id.'_1']['default_value']}" type="text" /> /
|
||
<label for="element_{$element->id}_1">{$lang['date_mm']}</label>
|
||
</span>
|
||
<span>
|
||
<input id="element_{$element->id}_2" name="element_{$element->id}_2" class="element text" size="2" maxlength="2" value="{$element->populated_value['element_'.$element->id.'_2']['default_value']}" type="text" /> /
|
||
<label for="element_{$element->id}_2">{$lang['date_dd']}</label>
|
||
</span>
|
||
<span>
|
||
<input id="element_{$element->id}_3" name="element_{$element->id}_3" class="element text" size="4" maxlength="4" value="{$element->populated_value['element_'.$element->id.'_3']['default_value']}" type="text" />
|
||
<label for="element_{$element->id}_3">{$lang['date_yyyy']}</label>
|
||
</span>
|
||
|
||
<span id="calendar_{$element->id}">
|
||
<img id="cal_img_{$element->id}" class="datepicker" src="{$machform_path}images/calendar.gif" alt="Pick a date." />
|
||
</span>
|
||
<script type="text/javascript">
|
||
Calendar.setup({
|
||
inputField : "element_{$element->id}_3",
|
||
baseField : "element_{$element->id}",
|
||
displayArea : "calendar_{$element->id}",
|
||
button : "cal_img_{$element->id}",
|
||
ifFormat : "%B %e, %Y",
|
||
onSelect : selectDate
|
||
});
|
||
</script>
|
||
{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
//Date - Normal
|
||
function display_europe_date($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
global $lang;
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
$machform_path = '';
|
||
if(!empty($element->machform_path)){
|
||
$machform_path = $element->machform_path;
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description">{$element->title} {$span_required}</label>
|
||
<span>
|
||
<input id="element_{$element->id}_1" name="element_{$element->id}_1" class="element text" size="2" maxlength="2" value="{$element->populated_value['element_'.$element->id.'_1']['default_value']}" type="text" /> /
|
||
<label for="element_{$element->id}_1">{$lang['date_dd']}</label>
|
||
</span>
|
||
<span>
|
||
<input id="element_{$element->id}_2" name="element_{$element->id}_2" class="element text" size="2" maxlength="2" value="{$element->populated_value['element_'.$element->id.'_2']['default_value']}" type="text" /> /
|
||
<label for="element_{$element->id}_2">{$lang['date_mm']}</label>
|
||
</span>
|
||
<span>
|
||
<input id="element_{$element->id}_3" name="element_{$element->id}_3" class="element text" size="4" maxlength="4" value="{$element->populated_value['element_'.$element->id.'_3']['default_value']}" type="text" />
|
||
<label for="element_{$element->id}_3">{$lang['date_yyyy']}</label>
|
||
</span>
|
||
|
||
<span id="calendar_{$element->id}">
|
||
<img id="cal_img_{$element->id}" class="datepicker" src="{$machform_path}images/calendar.gif" alt="Pick a date." />
|
||
</span>
|
||
<script type="text/javascript">
|
||
Calendar.setup({
|
||
inputField : "element_{$element->id}_3",
|
||
baseField : "element_{$element->id}",
|
||
displayArea : "calendar_{$element->id}",
|
||
button : "cal_img_{$element->id}",
|
||
ifFormat : "%B %e, %Y",
|
||
onSelect : selectEuropeDate
|
||
});
|
||
</script>
|
||
{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
|
||
//Multiple Choice
|
||
function display_radio($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
$option_markup = '';
|
||
|
||
if($element->constraint == 'random'){
|
||
$temp = $element->options;
|
||
shuffle($temp);
|
||
$element->options = $temp;
|
||
}
|
||
|
||
foreach ($element->options as $option){
|
||
|
||
if($option->is_default){
|
||
$checked = 'checked="checked"';
|
||
}else{
|
||
$checked = '';
|
||
}
|
||
|
||
//check for populated values
|
||
if(!empty($element->populated_value['element_'.$element->id]['default_value'])){
|
||
$checked = '';
|
||
if($element->populated_value['element_'.$element->id]['default_value'] == $option->id){
|
||
$checked = 'checked="checked"';
|
||
}
|
||
}
|
||
|
||
$option_markup .= "<input id=\"element_{$element->id}_{$option->id}\" name=\"element_{$element->id}\" class=\"element radio\" type=\"radio\" value=\"{$option->id}\" {$checked} />\n";
|
||
$option_markup .= "<label class=\"choice\" for=\"element_{$element->id}_{$option->id}\">{$option->option}</label>\n";
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description">{$element->title} {$span_required}</label>
|
||
<span>
|
||
{$option_markup}
|
||
</span>{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
//Checkboxes
|
||
function display_checkbox($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
//check for populated value first, if any exist, unselect all default value
|
||
$is_populated = false;
|
||
foreach ($element->options as $option){
|
||
|
||
if(!empty($element->populated_value['element_'.$element->id.'_'.$option->id]['default_value'])){
|
||
$is_populated = true;
|
||
break;
|
||
}
|
||
}
|
||
|
||
$option_markup = '';
|
||
|
||
foreach ($element->options as $option){
|
||
if(!$is_populated){
|
||
if($option->is_default){
|
||
$checked = 'checked="checked"';
|
||
}else{
|
||
$checked = '';
|
||
}
|
||
}else{
|
||
|
||
if(!empty($element->populated_value['element_'.$element->id.'_'.$option->id]['default_value'])){
|
||
$checked = 'checked="checked"';
|
||
}else{
|
||
$checked = '';
|
||
}
|
||
}
|
||
|
||
|
||
//$option_markup .= "<input id=\"element_{$element->id}_{$option->id}\" name=\"element_{$element->id}_{$option->id}\" class=\"element checkbox\" type=\"checkbox\" value=\"1\" {$checked} />\n";
|
||
//$option_markup .= "<label class=\"choice\" for=\"element_{$element->id}_{$option->id}\">{$option->option}</label>\n";
|
||
$option_markup .= "<li class=\"checkbox\">\n";
|
||
$option_markup .= "<span class=\"name\">{$option->option}</span>\n";
|
||
$option_markup .= "<input name=\"steak\" type=\"checkbox\" value=\"1\" {$checked} id=\"element_{$element->id}_{$option->id}\" name=\"element_{$element->id}_{$option->id}\" class=\"element checkbox\" />\n";
|
||
$option_markup .= "</li>\n";
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<span class="graytitle">{$element->title} {$span_required}</span>
|
||
<span class="header">{$guidelines} {$error_message}</span>
|
||
<ul class="pageitem">
|
||
{$option_markup}
|
||
</ul>
|
||
EOT;
|
||
|
||
/* <li id="li_{$element->id}" {$error_class}>
|
||
<label class="description">{$element->title} {$span_required}</label>
|
||
<span>
|
||
{$option_markup}
|
||
</span>{$guidelines} {$error_message}
|
||
</li>
|
||
*/
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
|
||
//Dropdown
|
||
function display_select($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
$option_markup = '';
|
||
|
||
$has_default = false;
|
||
foreach ($element->options as $option){
|
||
|
||
if($option->is_default){
|
||
$selected = 'selected="selected"';
|
||
$has_default = true;
|
||
}else{
|
||
$selected = '';
|
||
}
|
||
|
||
if(!empty($element->populated_value['element_'.$element->id]['default_value'])){
|
||
$selected = '';
|
||
if($element->populated_value['element_'.$element->id]['default_value'] == $option->id){
|
||
$selected = 'selected="selected"';
|
||
}
|
||
}
|
||
|
||
$option_markup .= "<option value=\"{$option->id}\" {$selected}>{$option->option}</option>\n";
|
||
}
|
||
|
||
if(!$has_default){
|
||
if(!empty($element->populated_value['element_'.$element->id]['default_value'])){
|
||
$option_markup = '<option value=""></option>'."\n".$option_markup;
|
||
}else{
|
||
$option_markup = '<option value="" selected="selected"></option>'."\n".$option_markup;
|
||
}
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description" for="element_{$element->id}">{$element->title} {$span_required}</label>
|
||
<div>
|
||
<select class="element select {$element->size}" id="element_{$element->id}" name="element_{$element->id}">
|
||
{$option_markup}
|
||
</select>
|
||
</div>{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
|
||
//Name - Simple
|
||
function display_simple_name($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
global $lang;
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description">{$element->title} {$span_required}</label>
|
||
<span>
|
||
<input id="element_{$element->id}_1" name= "element_{$element->id}_1" class="element text" maxlength="255" size="8" value="{$element->populated_value['element_'.$element->id.'_1']['default_value']}" />
|
||
<label>{$lang['name_first']}</label>
|
||
</span>
|
||
<span>
|
||
<input id="element_{$element->id}_2" name= "element_{$element->id}_2" class="element text" maxlength="255" size="14" value="{$element->populated_value['element_'.$element->id.'_2']['default_value']}" />
|
||
<label>{$lang['name_last']}</label>
|
||
</span>{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
//Name
|
||
function display_name($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
global $lang;
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description">{$element->title} {$span_required}</label>
|
||
<span>
|
||
<input id="element_{$element->id}_1" name="element_{$element->id}_1" class="element text" maxlength="255" size="2" value="{$element->populated_value['element_'.$element->id.'_1']['default_value']}" />
|
||
<label>{$lang['name_title']}</label>
|
||
</span>
|
||
<span>
|
||
<input id="element_{$element->id}_2" name="element_{$element->id}_2" class="element text" maxlength="255" size="8" value="{$element->populated_value['element_'.$element->id.'_2']['default_value']}" />
|
||
<label class="tam">{$lang['name_first']}</label>
|
||
</span>
|
||
<span>
|
||
<input id="element_{$element->id}_3" name="element_{$element->id}_3" class="element text" maxlength="255" size="14" value="{$element->populated_value['element_'.$element->id.'_3']['default_value']}" />
|
||
<label class="tam">{$lang['name_last']}</label>
|
||
</span>
|
||
<span>
|
||
<input id="element_{$element->id}_4" name="element_{$element->id}_4" class="element text" maxlength="255" size="3" value="{$element->populated_value['element_'.$element->id.'_4']['default_value']}" />
|
||
<label>{$lang['name_suffix']}</label>
|
||
</span>{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
//Time
|
||
function display_time($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
global $lang;
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
if(!empty($element->populated_value['element_'.$element->id.'_4']['default_value'])){
|
||
if($element->populated_value['element_'.$element->id.'_4']['default_value'] == 'AM'){
|
||
$selected_am = 'selected';
|
||
}else{
|
||
$selected_pm = 'selected';
|
||
}
|
||
}
|
||
|
||
if($element->constraint == 'show_seconds'){
|
||
$seconds_markup =<<<EOT
|
||
<span>
|
||
<input id="element_{$element->id}_3" name="element_{$element->id}_3" class="element text " size="2" type="text" maxlength="2" value="{$element->populated_value['element_'.$element->id.'_3']['default_value']}" />
|
||
<label>{$lang['time_ss']}</label>
|
||
</span>
|
||
EOT;
|
||
$seconds_separator = ':';
|
||
}else{
|
||
$seconds_markup = '';
|
||
$seconds_separator = '';
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description">{$element->title} {$span_required}</label>
|
||
<span>
|
||
<input id="element_{$element->id}_1" name="element_{$element->id}_1" class="element text " size="2" type="text" maxlength="2" value="{$element->populated_value['element_'.$element->id.'_1']['default_value']}" /> :
|
||
<label>{$lang['time_hh']}</label>
|
||
</span>
|
||
<span>
|
||
<input id="element_{$element->id}_2" name="element_{$element->id}_2" class="element text " size="2" type="text" maxlength="2" value="{$element->populated_value['element_'.$element->id.'_2']['default_value']}" /> {$seconds_separator}
|
||
<label>{$lang['time_mm']}</label>
|
||
</span>
|
||
{$seconds_markup}
|
||
<span>
|
||
<select class="element select" style="width:4em" id="element_{$element->id}_4" name="element_{$element->id}_4">
|
||
<option value="AM" {$selected_am}>AM</option>
|
||
<option value="PM" {$selected_pm}>PM</option>
|
||
</select>
|
||
<label>AM/PM</label>
|
||
</span>{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
|
||
//Price
|
||
function display_money($element){
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
global $lang;
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
if($element->constraint != 'yen'){ //for dollar, pound and euro
|
||
if($element->constraint == 'pound'){
|
||
$main_cur = $lang['price_pound_main'];
|
||
$child_cur = $lang['price_pound_sub'];
|
||
$cur_symbol = '£';
|
||
}elseif ($element->constraint == 'euro'){
|
||
$main_cur = $lang['price_euro_main'];
|
||
$child_cur = $lang['price_euro_sub'];
|
||
$cur_symbol = '€';
|
||
}else{ //dollar
|
||
$main_cur = $lang['price_dollar_main'];
|
||
$child_cur = $lang['price_dollar_sub'];
|
||
$cur_symbol = '$';
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description">{$element->title} {$span_required}</label>
|
||
<span class="symbol">{$cur_symbol}</span>
|
||
<span>
|
||
<input id="element_{$element->id}_1" name="element_{$element->id}_1" class="element text currency" size="10" value="{$element->populated_value['element_'.$element->id.'_1']['default_value']}" type="text" /> .
|
||
<label for="element_{$element->id}_1">{$main_cur}</label>
|
||
</span>
|
||
<span>
|
||
<input id="element_{$element->id}_2" name="element_{$element->id}_2" class="element text" size="2" maxlength="2" value="{$element->populated_value['element_'.$element->id.'_2']['default_value']}" type="text" />
|
||
<label for="element_{$element->id}_2">{$child_cur}</label>
|
||
</span>
|
||
{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
}else{ //for yen, only display one textfield
|
||
$main_cur = $lang['price_yen'];
|
||
$cur_symbol = '¥';
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description" for="element_{$element->id}">{$element->title} {$span_required}</label>
|
||
<span class="symbol">{$cur_symbol}</span>
|
||
<span>
|
||
<input id="element_{$element->id}" name="element_{$element->id}" class="element text currency" size="10" value="{$element->populated_value['element_'.$element->id]['default_value']}" type="text" />
|
||
<label for="element_{$element->id}">{$main_cur}</label>
|
||
</span>
|
||
{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
}
|
||
|
||
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
//Section Break
|
||
function display_section($element){
|
||
$element->guidelines = nl2br($element->guidelines);
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" class="section_break">
|
||
<h3>{$element->title}</h3>
|
||
<p>{$element->guidelines}</p>
|
||
</li>
|
||
EOT;
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
|
||
|
||
//Number
|
||
function display_number($element){
|
||
//check for error
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_message = "<br/><p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\">{$element->guidelines}</p>";
|
||
}
|
||
|
||
//check for populated value, if exist, use it instead default_value
|
||
if(isset($element->populated_value['element_'.$element->id]['default_value'])){
|
||
$element->default_value = $element->populated_value['element_'.$element->id]['default_value'];
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<span class="graytitle">{$element->title} {$span_required}</span>
|
||
{$error_message}
|
||
{$guidelines}
|
||
<ul class="pageitem">
|
||
<li class="bigfield">
|
||
<input type="number" id="element_{$element->id}" name="element_{$element->id}" class="element text {$element->size}" value="{$element->default_value}"/>
|
||
</li>
|
||
</ul>
|
||
EOT;
|
||
/*<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description" for="element_{$element->id}">{$element->title} {$span_required}</label>
|
||
<div>
|
||
<input id="element_{$element->id}" name="element_{$element->id}" class="element text {$element->size}" type="text" maxlength="255" value="{$element->default_value}" />
|
||
</div>{$guidelines} {$error_message}
|
||
</li>*/
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
|
||
|
||
//Address
|
||
function display_address($element){
|
||
|
||
$country[0]['label'] = "Afghanistan";
|
||
$country[1]['label'] = "Albania";
|
||
$country[2]['label'] = "Algeria";
|
||
$country[3]['label'] = "Andorra";
|
||
$country[4]['label'] = "Antigua and Barbuda";
|
||
$country[5]['label'] = "Argentina";
|
||
$country[6]['label'] = "Armenia";
|
||
$country[7]['label'] = "Australia";
|
||
$country[8]['label'] = "Austria";
|
||
$country[9]['label'] = "Azerbaijan";
|
||
$country[10]['label'] = "Bahamas";
|
||
$country[11]['label'] = "Bahrain";
|
||
$country[12]['label'] = "Bangladesh";
|
||
$country[13]['label'] = "Barbados";
|
||
$country[14]['label'] = "Belarus";
|
||
$country[15]['label'] = "Belgium";
|
||
$country[16]['label'] = "Belize";
|
||
$country[17]['label'] = "Benin";
|
||
$country[18]['label'] = "Bhutan";
|
||
$country[19]['label'] = "Bolivia";
|
||
$country[20]['label'] = "Bosnia and Herzegovina";
|
||
$country[21]['label'] = "Botswana";
|
||
$country[22]['label'] = "Brazil";
|
||
$country[23]['label'] = "Brunei";
|
||
$country[24]['label'] = "Bulgaria";
|
||
$country[25]['label'] = "Burkina Faso";
|
||
$country[26]['label'] = "Burundi";
|
||
$country[27]['label'] = "Cambodia";
|
||
$country[28]['label'] = "Cameroon";
|
||
$country[29]['label'] = "Canada";
|
||
$country[30]['label'] = "Cape Verde";
|
||
$country[31]['label'] = "Central African Republic";
|
||
$country[32]['label'] = "Chad";
|
||
$country[33]['label'] = "Chile";
|
||
$country[34]['label'] = "China";
|
||
$country[35]['label'] = "Colombia";
|
||
$country[36]['label'] = "Comoros";
|
||
$country[37]['label'] = "Congo";
|
||
$country[38]['label'] = "Costa Rica";
|
||
$country[39]['label'] = "C<EFBFBD>te d'Ivoire";
|
||
$country[40]['label'] = "Croatia";
|
||
$country[41]['label'] = "Cuba";
|
||
$country[42]['label'] = "Cyprus";
|
||
$country[43]['label'] = "Czech Republic";
|
||
$country[44]['label'] = "Denmark";
|
||
$country[45]['label'] = "Djibouti";
|
||
$country[46]['label'] = "Dominica";
|
||
$country[47]['label'] = "Dominican Republic";
|
||
$country[48]['label'] = "East Timor";
|
||
$country[49]['label'] = "Ecuador";
|
||
$country[50]['label'] = "Egypt";
|
||
$country[51]['label'] = "El Salvador";
|
||
$country[52]['label'] = "Equatorial Guinea";
|
||
$country[53]['label'] = "Eritrea";
|
||
$country[54]['label'] = "Estonia";
|
||
$country[55]['label'] = "Ethiopia";
|
||
$country[56]['label'] = "Fiji";
|
||
$country[57]['label'] = "Finland";
|
||
$country[58]['label'] = "France";
|
||
$country[59]['label'] = "Gabon";
|
||
$country[60]['label'] = "Gambia";
|
||
$country[61]['label'] = "Georgia";
|
||
$country[62]['label'] = "Germany";
|
||
$country[63]['label'] = "Ghana";
|
||
$country[64]['label'] = "Greece";
|
||
$country[65]['label'] = "Grenada";
|
||
$country[66]['label'] = "Guatemala";
|
||
$country[67]['label'] = "Guinea";
|
||
$country[68]['label'] = "Guinea-Bissau";
|
||
$country[69]['label'] = "Guyana";
|
||
$country[70]['label'] = "Haiti";
|
||
$country[71]['label'] = "Honduras";
|
||
$country[72]['label'] = "Hong Kong";
|
||
$country[73]['label'] = "Hungary";
|
||
$country[74]['label'] = "Iceland";
|
||
$country[75]['label'] = "India";
|
||
$country[76]['label'] = "Indonesia";
|
||
$country[77]['label'] = "Iran";
|
||
$country[78]['label'] = "Iraq";
|
||
$country[79]['label'] = "Ireland";
|
||
$country[80]['label'] = "Israel";
|
||
$country[81]['label'] = "Italy";
|
||
$country[82]['label'] = "Jamaica";
|
||
$country[83]['label'] = "Japan";
|
||
$country[84]['label'] = "Jordan";
|
||
$country[85]['label'] = "Kazakhstan";
|
||
$country[86]['label'] = "Kenya";
|
||
$country[87]['label'] = "Kiribati";
|
||
$country[88]['label'] = "North Korea";
|
||
$country[89]['label'] = "South Korea";
|
||
$country[90]['label'] = "Kuwait";
|
||
$country[91]['label'] = "Kyrgyzstan";
|
||
$country[92]['label'] = "Laos";
|
||
$country[93]['label'] = "Latvia";
|
||
$country[94]['label'] = "Lebanon";
|
||
$country[95]['label'] = "Lesotho";
|
||
$country[96]['label'] = "Liberia";
|
||
$country[97]['label'] = "Libya";
|
||
$country[98]['label'] = "Liechtenstein";
|
||
$country[99]['label'] = "Lithuania";
|
||
$country[100]['label'] = "Luxembourg";
|
||
$country[101]['label'] = "Macedonia";
|
||
$country[102]['label'] = "Madagascar";
|
||
$country[103]['label'] = "Malawi";
|
||
$country[104]['label'] = "Malaysia";
|
||
$country[105]['label'] = "Maldives";
|
||
$country[106]['label'] = "Mali";
|
||
$country[107]['label'] = "Malta";
|
||
$country[108]['label'] = "Marshall Islands";
|
||
$country[109]['label'] = "Mauritania";
|
||
$country[110]['label'] = "Mauritius";
|
||
$country[111]['label'] = "Mexico";
|
||
$country[112]['label'] = "Micronesia";
|
||
$country[113]['label'] = "Moldova";
|
||
$country[114]['label'] = "Monaco";
|
||
$country[115]['label'] = "Mongolia";
|
||
$country[116]['label'] = "Montenegro";
|
||
$country[117]['label'] = "Morocco";
|
||
$country[118]['label'] = "Mozambique";
|
||
$country[119]['label'] = "Myanmar";
|
||
$country[120]['label'] = "Namibia";
|
||
$country[121]['label'] = "Nauru";
|
||
$country[122]['label'] = "Nepal";
|
||
$country[123]['label'] = "Netherlands";
|
||
$country[124]['label'] = "New Zealand";
|
||
$country[125]['label'] = "Nicaragua";
|
||
$country[126]['label'] = "Niger";
|
||
$country[127]['label'] = "Nigeria";
|
||
$country[128]['label'] = "Norway";
|
||
$country[129]['label'] = "Oman";
|
||
$country[130]['label'] = "Pakistan";
|
||
$country[131]['label'] = "Palau";
|
||
$country[132]['label'] = "Panama";
|
||
$country[133]['label'] = "Papua New Guinea";
|
||
$country[134]['label'] = "Paraguay";
|
||
$country[135]['label'] = "Peru";
|
||
$country[136]['label'] = "Philippines";
|
||
$country[137]['label'] = "Poland";
|
||
$country[138]['label'] = "Portugal";
|
||
$country[139]['label'] = "Puerto Rico";
|
||
$country[140]['label'] = "Qatar";
|
||
$country[141]['label'] = "Romania";
|
||
$country[142]['label'] = "Russia";
|
||
$country[143]['label'] = "Rwanda";
|
||
$country[144]['label'] = "Saint Kitts and Nevis";
|
||
$country[145]['label'] = "Saint Lucia";
|
||
$country[146]['label'] = "Saint Vincent and the Grenadines";
|
||
$country[147]['label'] = "Samoa";
|
||
$country[148]['label'] = "San Marino";
|
||
$country[149]['label'] = "Sao Tome and Principe";
|
||
$country[150]['label'] = "Saudi Arabia";
|
||
$country[151]['label'] = "Senegal";
|
||
$country[152]['label'] = "Serbia and Montenegro";
|
||
$country[153]['label'] = "Seychelles";
|
||
$country[154]['label'] = "Sierra Leone";
|
||
$country[155]['label'] = "Singapore";
|
||
$country[156]['label'] = "Slovakia";
|
||
$country[157]['label'] = "Slovenia";
|
||
$country[158]['label'] = "Solomon Islands";
|
||
$country[159]['label'] = "Somalia";
|
||
$country[160]['label'] = "South Africa";
|
||
$country[161]['label'] = "Spain";
|
||
$country[162]['label'] = "Sri Lanka";
|
||
$country[163]['label'] = "Sudan";
|
||
$country[164]['label'] = "Suriname";
|
||
$country[165]['label'] = "Swaziland";
|
||
$country[166]['label'] = "Sweden";
|
||
$country[167]['label'] = "Switzerland";
|
||
$country[168]['label'] = "Syria";
|
||
$country[169]['label'] = "Taiwan";
|
||
$country[170]['label'] = "Tajikistan";
|
||
$country[171]['label'] = "Tanzania";
|
||
$country[172]['label'] = "Thailand";
|
||
$country[173]['label'] = "Togo";
|
||
$country[174]['label'] = "Tonga";
|
||
$country[175]['label'] = "Trinidad and Tobago";
|
||
$country[176]['label'] = "Tunisia";
|
||
$country[177]['label'] = "Turkey";
|
||
$country[178]['label'] = "Turkmenistan";
|
||
$country[179]['label'] = "Tuvalu";
|
||
$country[180]['label'] = "Uganda";
|
||
$country[181]['label'] = "Ukraine";
|
||
$country[182]['label'] = "United Arab Emirates";
|
||
$country[183]['label'] = "United Kingdom";
|
||
$country[184]['label'] = "United States";
|
||
$country[185]['label'] = "Uruguay";
|
||
$country[186]['label'] = "Uzbekistan";
|
||
$country[187]['label'] = "Vanuatu";
|
||
$country[188]['label'] = "Vatican City";
|
||
$country[189]['label'] = "Venezuela";
|
||
$country[190]['label'] = "Vietnam";
|
||
$country[191]['label'] = "Yemen";
|
||
$country[192]['label'] = "Zambia";
|
||
$country[193]['label'] = "Zimbabwe";
|
||
|
||
|
||
$country[0]['value'] = "Afghanistan";
|
||
$country[1]['value'] = "Albania";
|
||
$country[2]['value'] = "Algeria";
|
||
$country[3]['value'] = "Andorra";
|
||
$country[4]['value'] = "Antigua and Barbuda";
|
||
$country[5]['value'] = "Argentina";
|
||
$country[6]['value'] = "Armenia";
|
||
$country[7]['value'] = "Australia";
|
||
$country[8]['value'] = "Austria";
|
||
$country[9]['value'] = "Azerbaijan";
|
||
$country[10]['value'] = "Bahamas";
|
||
$country[11]['value'] = "Bahrain";
|
||
$country[12]['value'] = "Bangladesh";
|
||
$country[13]['value'] = "Barbados";
|
||
$country[14]['value'] = "Belarus";
|
||
$country[15]['value'] = "Belgium";
|
||
$country[16]['value'] = "Belize";
|
||
$country[17]['value'] = "Benin";
|
||
$country[18]['value'] = "Bhutan";
|
||
$country[19]['value'] = "Bolivia";
|
||
$country[20]['value'] = "Bosnia and Herzegovina";
|
||
$country[21]['value'] = "Botswana";
|
||
$country[22]['value'] = "Brazil";
|
||
$country[23]['value'] = "Brunei";
|
||
$country[24]['value'] = "Bulgaria";
|
||
$country[25]['value'] = "Burkina Faso";
|
||
$country[26]['value'] = "Burundi";
|
||
$country[27]['value'] = "Cambodia";
|
||
$country[28]['value'] = "Cameroon";
|
||
$country[29]['value'] = "Canada";
|
||
$country[30]['value'] = "Cape Verde";
|
||
$country[31]['value'] = "Central African Republic";
|
||
$country[32]['value'] = "Chad";
|
||
$country[33]['value'] = "Chile";
|
||
$country[34]['value'] = "China";
|
||
$country[35]['value'] = "Colombia";
|
||
$country[36]['value'] = "Comoros";
|
||
$country[37]['value'] = "Congo";
|
||
$country[38]['value'] = "Costa Rica";
|
||
$country[39]['value'] = "C<EFBFBD>te d'Ivoire";
|
||
$country[40]['value'] = "Croatia";
|
||
$country[41]['value'] = "Cuba";
|
||
$country[42]['value'] = "Cyprus";
|
||
$country[43]['value'] = "Czech Republic";
|
||
$country[44]['value'] = "Denmark";
|
||
$country[45]['value'] = "Djibouti";
|
||
$country[46]['value'] = "Dominica";
|
||
$country[47]['value'] = "Dominican Republic";
|
||
$country[48]['value'] = "East Timor";
|
||
$country[49]['value'] = "Ecuador";
|
||
$country[50]['value'] = "Egypt";
|
||
$country[51]['value'] = "El Salvador";
|
||
$country[52]['value'] = "Equatorial Guinea";
|
||
$country[53]['value'] = "Eritrea";
|
||
$country[54]['value'] = "Estonia";
|
||
$country[55]['value'] = "Ethiopia";
|
||
$country[56]['value'] = "Fiji";
|
||
$country[57]['value'] = "Finland";
|
||
$country[58]['value'] = "France";
|
||
$country[59]['value'] = "Gabon";
|
||
$country[60]['value'] = "Gambia";
|
||
$country[61]['value'] = "Georgia";
|
||
$country[62]['value'] = "Germany";
|
||
$country[63]['value'] = "Ghana";
|
||
$country[64]['value'] = "Greece";
|
||
$country[65]['value'] = "Grenada";
|
||
$country[66]['value'] = "Guatemala";
|
||
$country[67]['value'] = "Guinea";
|
||
$country[68]['value'] = "Guinea-Bissau";
|
||
$country[69]['value'] = "Guyana";
|
||
$country[70]['value'] = "Haiti";
|
||
$country[71]['value'] = "Honduras";
|
||
$country[72]['value'] = "Hong Kong";
|
||
$country[73]['value'] = "Hungary";
|
||
$country[74]['value'] = "Iceland";
|
||
$country[75]['value'] = "India";
|
||
$country[76]['value'] = "Indonesia";
|
||
$country[77]['value'] = "Iran";
|
||
$country[78]['value'] = "Iraq";
|
||
$country[79]['value'] = "Ireland";
|
||
$country[80]['value'] = "Israel";
|
||
$country[81]['value'] = "Italy";
|
||
$country[82]['value'] = "Jamaica";
|
||
$country[83]['value'] = "Japan";
|
||
$country[84]['value'] = "Jordan";
|
||
$country[85]['value'] = "Kazakhstan";
|
||
$country[86]['value'] = "Kenya";
|
||
$country[87]['value'] = "Kiribati";
|
||
$country[88]['value'] = "North Korea";
|
||
$country[89]['value'] = "South Korea";
|
||
$country[90]['value'] = "Kuwait";
|
||
$country[91]['value'] = "Kyrgyzstan";
|
||
$country[92]['value'] = "Laos";
|
||
$country[93]['value'] = "Latvia";
|
||
$country[94]['value'] = "Lebanon";
|
||
$country[95]['value'] = "Lesotho";
|
||
$country[96]['value'] = "Liberia";
|
||
$country[97]['value'] = "Libya";
|
||
$country[98]['value'] = "Liechtenstein";
|
||
$country[99]['value'] = "Lithuania";
|
||
$country[100]['value'] = "Luxembourg";
|
||
$country[101]['value'] = "Macedonia";
|
||
$country[102]['value'] = "Madagascar";
|
||
$country[103]['value'] = "Malawi";
|
||
$country[104]['value'] = "Malaysia";
|
||
$country[105]['value'] = "Maldives";
|
||
$country[106]['value'] = "Mali";
|
||
$country[107]['value'] = "Malta";
|
||
$country[108]['value'] = "Marshall Islands";
|
||
$country[109]['value'] = "Mauritania";
|
||
$country[110]['value'] = "Mauritius";
|
||
$country[111]['value'] = "Mexico";
|
||
$country[112]['value'] = "Micronesia";
|
||
$country[113]['value'] = "Moldova";
|
||
$country[114]['value'] = "Monaco";
|
||
$country[115]['value'] = "Mongolia";
|
||
$country[116]['value'] = "Montenegro";
|
||
$country[117]['value'] = "Morocco";
|
||
$country[118]['value'] = "Mozambique";
|
||
$country[119]['value'] = "Myanmar";
|
||
$country[120]['value'] = "Namibia";
|
||
$country[121]['value'] = "Nauru";
|
||
$country[122]['value'] = "Nepal";
|
||
$country[123]['value'] = "Netherlands";
|
||
$country[124]['value'] = "New Zealand";
|
||
$country[125]['value'] = "Nicaragua";
|
||
$country[126]['value'] = "Niger";
|
||
$country[127]['value'] = "Nigeria";
|
||
$country[128]['value'] = "Norway";
|
||
$country[129]['value'] = "Oman";
|
||
$country[130]['value'] = "Pakistan";
|
||
$country[131]['value'] = "Palau";
|
||
$country[132]['value'] = "Panama";
|
||
$country[133]['value'] = "Papua New Guinea";
|
||
$country[134]['value'] = "Paraguay";
|
||
$country[135]['value'] = "Peru";
|
||
$country[136]['value'] = "Philippines";
|
||
$country[137]['value'] = "Poland";
|
||
$country[138]['value'] = "Portugal";
|
||
$country[139]['value'] = "Puerto Rico";
|
||
$country[140]['value'] = "Qatar";
|
||
$country[141]['value'] = "Romania";
|
||
$country[142]['value'] = "Russia";
|
||
$country[143]['value'] = "Rwanda";
|
||
$country[144]['value'] = "Saint Kitts and Nevis";
|
||
$country[145]['value'] = "Saint Lucia";
|
||
$country[146]['value'] = "Saint Vincent and the Grenadines";
|
||
$country[147]['value'] = "Samoa";
|
||
$country[148]['value'] = "San Marino";
|
||
$country[149]['value'] = "Sao Tome and Principe";
|
||
$country[150]['value'] = "Saudi Arabia";
|
||
$country[151]['value'] = "Senegal";
|
||
$country[152]['value'] = "Serbia and Montenegro";
|
||
$country[153]['value'] = "Seychelles";
|
||
$country[154]['value'] = "Sierra Leone";
|
||
$country[155]['value'] = "Singapore";
|
||
$country[156]['value'] = "Slovakia";
|
||
$country[157]['value'] = "Slovenia";
|
||
$country[158]['value'] = "Solomon Islands";
|
||
$country[159]['value'] = "Somalia";
|
||
$country[160]['value'] = "South Africa";
|
||
$country[161]['value'] = "Spain";
|
||
$country[162]['value'] = "Sri Lanka";
|
||
$country[163]['value'] = "Sudan";
|
||
$country[164]['value'] = "Suriname";
|
||
$country[165]['value'] = "Swaziland";
|
||
$country[166]['value'] = "Sweden";
|
||
$country[167]['value'] = "Switzerland";
|
||
$country[168]['value'] = "Syria";
|
||
$country[169]['value'] = "Taiwan";
|
||
$country[170]['value'] = "Tajikistan";
|
||
$country[171]['value'] = "Tanzania";
|
||
$country[172]['value'] = "Thailand";
|
||
$country[173]['value'] = "Togo";
|
||
$country[174]['value'] = "Tonga";
|
||
$country[175]['value'] = "Trinidad and Tobago";
|
||
$country[176]['value'] = "Tunisia";
|
||
$country[177]['value'] = "Turkey";
|
||
$country[178]['value'] = "Turkmenistan";
|
||
$country[179]['value'] = "Tuvalu";
|
||
$country[180]['value'] = "Uganda";
|
||
$country[181]['value'] = "Ukraine";
|
||
$country[182]['value'] = "United Arab Emirates";
|
||
$country[183]['value'] = "United Kingdom";
|
||
$country[184]['value'] = "United States";
|
||
$country[185]['value'] = "Uruguay";
|
||
$country[186]['value'] = "Uzbekistan";
|
||
$country[187]['value'] = "Vanuatu";
|
||
$country[188]['value'] = "Vatican City";
|
||
$country[189]['value'] = "Venezuela";
|
||
$country[190]['value'] = "Vietnam";
|
||
$country[191]['value'] = "Yemen";
|
||
$country[192]['value'] = "Zambia";
|
||
$country[193]['value'] = "Zimbabwe";
|
||
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
global $lang;
|
||
|
||
if(!empty($element->is_error)){
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
//check for required
|
||
if($element->is_required){
|
||
$span_required = "<span id=\"required_{$element->id}\" class=\"required\">*</span>";
|
||
}
|
||
|
||
//check for guidelines
|
||
if(!empty($element->guidelines)){
|
||
$guidelines = "<p class=\"guidelines\" id=\"guide_{$element->id}\"><small>{$element->guidelines}</small></p>";
|
||
}
|
||
|
||
|
||
//create country markup, if no default value, provide a blank option
|
||
if(empty($element->default_value)){
|
||
$country_markup = '<option value="" selected="selected"></option>'."\n";
|
||
}else{
|
||
$country_markup = '';
|
||
}
|
||
|
||
foreach ($country as $data){
|
||
if($data['value'] == $element->default_value){
|
||
$selected = 'selected="selected"';
|
||
}else{
|
||
$selected = '';
|
||
}
|
||
|
||
//check for populated value, use it instead of default value
|
||
if(!empty($element->populated_value['element_'.$element->id.'_6']['default_value'])){
|
||
$selected = '';
|
||
if($element->populated_value['element_'.$element->id.'_6']['default_value'] == $data['value']){
|
||
$selected = 'selected="selected"';
|
||
}
|
||
}
|
||
|
||
$country_markup .= "<option value=\"{$data['value']}\" {$selected}>{$data['label']}</option>\n";
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_{$element->id}" {$error_class}>
|
||
<label class="description">{$element->title} {$span_required}</label>
|
||
|
||
<div id="li_{$element->id}_div_1">
|
||
<input id="element_{$element->id}_1" name="element_{$element->id}_1" class="element text large" value="{$element->populated_value['element_'.$element->id.'_1']['default_value']}" type="text" />
|
||
<label for="element_{$element->id}_1">{$lang['address_street']}</label>
|
||
</div>
|
||
|
||
<div id="li_{$element->id}_div_2">
|
||
<input id="element_{$element->id}_2" name="element_{$element->id}_2" class="element text large" value="{$element->populated_value['element_'.$element->id.'_2']['default_value']}" type="text" />
|
||
<label for="element_{$element->id}_2">{$lang['address_street2']}</label>
|
||
</div>
|
||
|
||
<div id="li_{$element->id}_div_3" class="left">
|
||
<input id="element_{$element->id}_3" name="element_{$element->id}_3" class="element text medium" value="{$element->populated_value['element_'.$element->id.'_3']['default_value']}" type="text" />
|
||
<label for="element_{$element->id}_3">{$lang['address_city']}</label>
|
||
</div>
|
||
|
||
<div id="li_{$element->id}_div_4" class="right">
|
||
<input id="element_{$element->id}_4" name="element_{$element->id}_4" class="element text medium" value="{$element->populated_value['element_'.$element->id.'_4']['default_value']}" type="text" />
|
||
<label for="element_{$element->id}_4">{$lang['address_state']}</label>
|
||
</div>
|
||
|
||
<div id="li_{$element->id}_div_5" class="left">
|
||
<input id="element_{$element->id}_5" name="element_{$element->id}_5" class="element text medium" maxlength="15" value="{$element->populated_value['element_'.$element->id.'_5']['default_value']}" type="text" />
|
||
<label for="element_{$element->id}_5">{$lang['address_zip']}</label>
|
||
</div>
|
||
|
||
<div id="li_{$element->id}_div_6" class="right">
|
||
<select class="element select medium" id="element_{$element->id}_6" name="element_{$element->id}_6">
|
||
{$country_markup}
|
||
</select>
|
||
<label for="element_{$element->id}_6">{$lang['address_country']}</label>
|
||
</div> {$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
|
||
//Captcha
|
||
function display_captcha($element){
|
||
|
||
if(!empty($element->error_message)){
|
||
$error_code = $element->error_message;
|
||
}else{
|
||
$error_code = '';
|
||
}
|
||
|
||
//check for error
|
||
$error_class = '';
|
||
$error_message = '';
|
||
$span_required = '';
|
||
$guidelines = '';
|
||
global $lang;
|
||
|
||
if(!empty($element->is_error)){
|
||
|
||
if($element->error_message == 'el-required'){
|
||
$element->error_message = $lang['captcha_required'];
|
||
$error_code = '';
|
||
}elseif ($element->error_message == 'incorrect-captcha-sol'){
|
||
$element->error_message = $lang['captcha_mismatch'];
|
||
}else{
|
||
$element->error_message = "{$lang['captcha_error']} ({$element->error_message})";
|
||
}
|
||
|
||
$error_class = 'class="error"';
|
||
$error_message = "<p class=\"error\">{$element->error_message}</p>";
|
||
}
|
||
|
||
if(!empty($_SERVER['HTTPS'])){
|
||
$use_ssl = true;
|
||
}else{
|
||
$use_ssl = false;
|
||
}
|
||
|
||
|
||
if(USE_INTERNAL_CAPTCHA === true){ //use the internal captcha if enabled
|
||
|
||
$machform_path = '';
|
||
if(!empty($element->machform_path)){
|
||
$machform_path = $element->machform_path;
|
||
}
|
||
|
||
$timestamp = time(); //use this as paramater for captcha.php, to prevent caching
|
||
|
||
$element->title = $lang['captcha_title'];
|
||
$captcha_html = <<<EOT
|
||
<img id="captcha_image" src="{$machform_path}captcha.php?t={$timestamp}" width="200" height="60" alt="Please refresh your browser to see this image." /><br />
|
||
<input id="captcha_response_field" name="captcha_response_field" class="element text small" type="text" /><div id="dummy_captcha_internal"></div>
|
||
EOT;
|
||
|
||
}else{ //otherwise use the reCAPTCHA
|
||
$captcha_html = recaptcha_get_html(RECAPTCHA_PUBLIC_KEY, $error_code,$use_ssl);
|
||
|
||
if($captcha_html === false){
|
||
$domain = str_replace('www.','',$_SERVER['SERVER_NAME']);
|
||
$captcha_html = "<b>Error!</b> You have enabled CAPTCHA but no API key available. <br /><br />To use CAPTCHA you must get an API key from <a href='".recaptcha_get_signup_url($domain,'MachForm')."'>http://recaptcha.net/api/getkey</a><br /><br />After getting the API key, save them into your <b>config.php</b> file.";
|
||
$error_class = 'class="error"';
|
||
}
|
||
}
|
||
|
||
|
||
if(function_exists("form{$element->form_id}_hook_pre_captcha")){
|
||
$custom_precaptcha = call_user_func("form{$element->form_id}_hook_pre_captcha");
|
||
}
|
||
|
||
$element_markup = <<<EOT
|
||
<li id="li_captcha" {$error_class}> {$custom_precaptcha}
|
||
<label class="description" for="captcha_response_field">{$element->title} {$span_required}</label>
|
||
<div>
|
||
{$captcha_html}
|
||
</div>
|
||
{$guidelines} {$error_message}
|
||
</li>
|
||
EOT;
|
||
|
||
return $element_markup;
|
||
}
|
||
|
||
|
||
//Main function to display a form
|
||
//There are few mode when displaying a form
|
||
//1. New blank form (form populated with default values)
|
||
//2. New form with error (displayed when 1 submitted and having error, form populated with user inputs)
|
||
//3. Edit form (form populated with data from db)
|
||
//4. Edit form with error (displayed when 3 submiteed and having error)
|
||
function display_form($form_id,$populated_values=array(),$error_elements=array(),$custom_error='',$edit_id=0,$embed=false){
|
||
|
||
global $lang;
|
||
|
||
//if there is custom error, don't show other errors
|
||
if(!empty($custom_error)){
|
||
$error_elements = array();
|
||
}
|
||
|
||
//get form properties data
|
||
$query = "select
|
||
form_name,
|
||
form_description,
|
||
form_redirect,
|
||
form_success_message,
|
||
form_password,
|
||
form_unique_ip,
|
||
form_frame_height,
|
||
form_has_css,
|
||
form_active,
|
||
form_captcha,
|
||
form_review
|
||
from
|
||
ap_forms
|
||
where
|
||
form_id='$form_id'";
|
||
$result = do_query($query);
|
||
$row = do_fetch_result($result);
|
||
|
||
$form = new \stdClass();
|
||
|
||
$form->id = $form_id;
|
||
$form->name = $row['form_name'];
|
||
$form->description = $row['form_description'];
|
||
$form->redirect = $row['form_redirect'];
|
||
$form->success_message = $row['form_success_message'];
|
||
$form->password = $row['form_password'];
|
||
$form->frame_height = $row['form_frame_height'];
|
||
$form->unique_ip = $row['form_unique_ip'];
|
||
$form->has_css = $row['form_has_css'];
|
||
$form->active = $row['form_active'];
|
||
$form->captcha = $row['form_captcha'];
|
||
$form->review = $row['form_review'];
|
||
|
||
if(empty($error_elements)){
|
||
$form->is_error = 0;
|
||
}else{
|
||
$form->is_error = 1;
|
||
}
|
||
|
||
//if this form has review enabled and user are having $_SESSION['review_id'], then populate the form with that values
|
||
if(!empty($form->review) && !empty($_SESSION['review_id']) && empty($populated_values)){
|
||
$populated_values = get_entry_values($form_id,$_SESSION['review_id'],true);
|
||
}
|
||
|
||
//get elements data
|
||
//get element options first and store it into array
|
||
$query = "select
|
||
element_id,
|
||
option_id,
|
||
`position`,
|
||
`option`,
|
||
option_is_default
|
||
from
|
||
ap_element_options
|
||
where
|
||
form_id='$form_id' and live=1
|
||
order by
|
||
element_id asc,`position` asc";
|
||
$result = do_query($query);
|
||
while($row = do_fetch_result($result)){
|
||
$element_id = $row['element_id'];
|
||
$option_id = $row['option_id'];
|
||
$options_lookup[$element_id][$option_id]['position'] = $row['position'];
|
||
$options_lookup[$element_id][$option_id]['option'] = $row['option'];
|
||
$options_lookup[$element_id][$option_id]['option_is_default'] = $row['option_is_default'];
|
||
}
|
||
|
||
|
||
//get elements data
|
||
$element = array();
|
||
$query = "select
|
||
element_id,
|
||
element_title,
|
||
element_guidelines,
|
||
element_size,
|
||
element_is_required,
|
||
element_is_unique,
|
||
element_is_private,
|
||
element_type,
|
||
element_position,
|
||
element_default_value,
|
||
element_constraint
|
||
from
|
||
ap_form_elements
|
||
where
|
||
form_id='$form_id'
|
||
order by
|
||
element_position asc";
|
||
$result = do_query($query);
|
||
|
||
$j=0;
|
||
$has_calendar = false; //assume the form doesn't have calendar, so it won't load calendar.js
|
||
while($row = do_fetch_result($result)){
|
||
$element_id = $row['element_id'];
|
||
|
||
//lookup element options first
|
||
if(!empty($options_lookup[$element_id])){
|
||
$element_options = array();
|
||
$i=0;
|
||
foreach ($options_lookup[$element_id] as $option_id=>$data){
|
||
$element_options[$i] = new \stdClass();
|
||
$element_options[$i]->id = $option_id;
|
||
$element_options[$i]->option = $data['option'];
|
||
$element_options[$i]->is_default = $data['option_is_default'];
|
||
$element_options[$i]->is_db_live = 1;
|
||
$i++;
|
||
}
|
||
}
|
||
|
||
|
||
//populate elements
|
||
$element[$j] = new \stdClass();
|
||
$element[$j]->title = nl2br($row['element_title']);
|
||
$element[$j]->guidelines = $row['element_guidelines'];
|
||
$element[$j]->size = $row['element_size'];
|
||
$element[$j]->is_required = $row['element_is_required'];
|
||
$element[$j]->is_unique = $row['element_is_unique'];
|
||
$element[$j]->is_private = $row['element_is_private'];
|
||
$element[$j]->type = $row['element_type'];
|
||
$element[$j]->position = $row['element_position'];
|
||
$element[$j]->id = $row['element_id'];
|
||
$element[$j]->is_db_live = 1;
|
||
|
||
//this data came from db or form submit
|
||
//being used to display edit form or redisplay form with errors and previous inputs
|
||
//this should be optimized in the future, only pass necessary data, not the whole array
|
||
$element[$j]->populated_value = $populated_values;
|
||
|
||
//if there is file upload type, set form enctype to multipart
|
||
if($row['element_type'] == 'file'){
|
||
$form_enc_type = 'enctype="multipart/form-data"';
|
||
}
|
||
|
||
if(!empty($error_elements[$element[$j]->id])){
|
||
$element[$j]->is_error = 1;
|
||
$element[$j]->error_message = $error_elements[$element[$j]->id];
|
||
}
|
||
|
||
|
||
$element[$j]->default_value = htmlspecialchars($row['element_default_value']);
|
||
|
||
|
||
$element[$j]->constraint = $row['element_constraint'];
|
||
if(!empty($element_options)){
|
||
$element[$j]->options = $element_options;
|
||
}else{
|
||
$element[$j]->options = '';
|
||
}
|
||
|
||
|
||
//check for calendar type
|
||
if($row['element_type'] == 'date' || $row['element_type'] == 'europe_date'){
|
||
$has_calendar = true;
|
||
}
|
||
|
||
$j++;
|
||
}
|
||
|
||
|
||
//add captcha if enable
|
||
if(!empty($form->captcha) && (empty($edit_id))){
|
||
$element[$j] = new \stdClass();
|
||
$element[$j]->type = 'captcha';
|
||
$element[$j]->form_id = $form_id;
|
||
$element[$j]->is_private = 0;
|
||
|
||
if(!empty($error_elements['element_captcha'])){
|
||
$element[$j]->is_error = 1;
|
||
$element[$j]->error_message = $error_elements['element_captcha'];
|
||
}
|
||
}
|
||
|
||
//generate html markup for each element
|
||
$all_element_markup = '';
|
||
foreach ($element as $element_data){
|
||
if($element_data->is_private && empty($_SESSION['logged_in'])){ //don't show private element
|
||
continue;
|
||
}
|
||
$all_element_markup .= call_user_func(__NAMESPACE__ .'\display_'.$element_data->type,$element_data);
|
||
}
|
||
|
||
if(!empty($custom_error)){
|
||
$form->error_message =<<<EOT
|
||
<ul class="pageitem error_message">
|
||
<li class="textbox">
|
||
<span class="header error">{$custom_error}</span><p>
|
||
</li>
|
||
</ul>
|
||
EOT;
|
||
/*<li id="error_message">
|
||
<h3 id="error_message_title">{$custom_error}</h3>
|
||
</li>*/
|
||
}elseif(!empty($error_elements)){
|
||
$form->error_message =<<<EOT
|
||
<ul class="pageitem error_message">
|
||
<li class="textbox">
|
||
<span class="header error">{$lang['error_title']}</span><p>
|
||
<p>{$lang['error_desc']}</p>
|
||
</li>
|
||
</ul>
|
||
EOT;
|
||
/*<li id="error_message">
|
||
<h3 id="error_message_title">{$lang['error_title']}</h3>
|
||
<p id="error_message_desc">{$lang['error_desc']}</p>
|
||
</li>*/
|
||
|
||
}
|
||
|
||
|
||
//display edit_id if there is any
|
||
if(!empty($edit_id)){
|
||
$edit_markup = "<input type=\"hidden\" name=\"edit_id\" value=\"{$edit_id}\" />\n";
|
||
}else{
|
||
$edit_markup = '';
|
||
}
|
||
|
||
if(empty($form->review)){
|
||
$button_text = $lang['submit_button'];
|
||
}else{
|
||
$button_text = $lang['continue_button'];
|
||
}
|
||
|
||
//markup for submit button
|
||
$button_markup =<<<EOT
|
||
<br/>
|
||
<ul class="pageitem">
|
||
<li class="button">
|
||
<input type="hidden" name="form_id" value="{$form->id}" />
|
||
{$edit_markup}
|
||
<input type="hidden" name="submit" value="1" />
|
||
<input id="saveForm" class="button_text" type="submit" name="submit" value="{$button_text}" />
|
||
</ul>
|
||
EOT;
|
||
|
||
/*<li id="li_buttons" class="buttons">
|
||
<input type="hidden" name="form_id" value="{$form->id}" />
|
||
{$edit_markup}
|
||
<input type="hidden" name="submit" value="1" />
|
||
<input id="saveForm" class="button_text" type="submit" name="submit" value="{$button_text}" />
|
||
</li>*/
|
||
|
||
//check for specific form css, if any, use it instead
|
||
if($form->has_css){
|
||
$css_dir = "mobile/apple/css/";
|
||
}
|
||
|
||
if(!empty($form->password) && empty($_SESSION['user_authenticated'])){ //if form require password and password hasn't set yet
|
||
$show_password_form = true;
|
||
|
||
}elseif (!empty($form->password) && !empty($_SESSION['user_authenticated']) && $_SESSION['user_authenticated'] != $form_id){ //if user authenticated but not for this form
|
||
$show_password_form = true;
|
||
|
||
}else{ //user authenticated for this form, or no password required
|
||
$show_password_form = false;
|
||
}
|
||
|
||
|
||
if(empty($form->active)){ //if form is not active, don't show the fields
|
||
$form_desc_div ='';
|
||
$all_element_markup = '';
|
||
$button_markup = '';
|
||
$ul_class = 'class="password"';
|
||
$custom_element =<<<EOT
|
||
<li>
|
||
<h2>{$lang['form_inactive']}</h2>
|
||
</li>
|
||
EOT;
|
||
}elseif($show_password_form){ //don't show form description if this page is password protected and user not authenticated
|
||
$form_desc_div ='';
|
||
$all_element_markup = '';
|
||
$custom_element =<<<EOT
|
||
<span class="graytitle">{$lang['form_pass_desc']}</span>
|
||
<ul class="pageitem">
|
||
<li class="smallfield">
|
||
<span class="name">{$lang['form_pass_word']}</span>
|
||
<input type="password" /></li>
|
||
</li>
|
||
</ul>
|
||
<p class="guidelines center">{$lang['form_pass_title']}</p>
|
||
EOT;
|
||
/*<li>
|
||
<h2>{$lang['form_pass_title']}</h2>
|
||
<div>
|
||
<input type="password" value="" class="text" name="password" id="password" />
|
||
<label for="password" class="desc">{$lang['form_pass_desc']}</label>
|
||
</div>
|
||
</li>*/
|
||
|
||
$ul_class = 'class="password"';
|
||
}else{
|
||
if(!empty($form->name) || !empty($form->description)){
|
||
$form->description = nl2br($form->description);
|
||
$form_desc_div =<<<EOT
|
||
<ul class="pageitem">
|
||
<li class="textbox">
|
||
<span class="header">{$form->name}</span>
|
||
<p>{$form->description}</p>
|
||
</li>
|
||
</ul>
|
||
EOT;
|
||
}
|
||
}
|
||
|
||
if($embed){
|
||
$embed_class = 'class="embed"';
|
||
}
|
||
|
||
if($has_calendar){
|
||
$calendar_js = '<script type="text/javascript" src="js/calendar.js"></script>';
|
||
}else{
|
||
$calendar_js = '';
|
||
}
|
||
|
||
|
||
//If you would like to remove the "Powered by MachForm" link, please contact us at customer.service@appnitro.com before doing so
|
||
$form_markup = <<<EOT
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||
<head>
|
||
<meta content="yes" name="apple-mobile-web-app-capable" />
|
||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||
<link href="pics/homescreen.gif" rel="apple-touch-icon" />
|
||
<meta content="minimum-scale=1.0, width=device-width, maximum-scale=0.6667, user-scalable=no" name="viewport" />
|
||
<link href="{$css_dir}style.css" rel="stylesheet" media="screen" type="text/css" />
|
||
<link href="{$css_dir}forms.css" rel="stylesheet" media="screen" type="text/css" />
|
||
<script src="mobile/apple/javascript/functions.js" type="text/javascript"></script>
|
||
<title>{$form->name}</title>
|
||
<link href="pics/startup.png" rel="apple-touch-startup-image" />
|
||
</head>
|
||
<body>
|
||
<div id="topbar">
|
||
<div id="title">{$form->name}</div>
|
||
</div>
|
||
<div id="content">
|
||
{$form_desc_div}
|
||
|
||
<form id="form_{$form->id}" class="appnitro" {$form_enc_type} method="post" action="#main_body">
|
||
{$form->error_message}
|
||
{$all_element_markup}
|
||
{$custom_element}
|
||
{$button_markup}
|
||
</form>
|
||
</div>
|
||
<div id="footer">
|
||
</div>
|
||
</body>
|
||
</html>
|
||
EOT;
|
||
return $form_markup;
|
||
|
||
}
|
||
|
||
//this function is similar as display_form, but designed to display form without IFRAME
|
||
function display_integrated_form($form_id,$populated_values=array(),$error_elements=array(),$custom_error='',$edit_id=0,$machform_path){
|
||
|
||
global $lang;
|
||
|
||
//if there is custom error, don't show other errors
|
||
if(!empty($custom_error)){
|
||
$error_elements = array();
|
||
}
|
||
|
||
//get form properties data
|
||
$query = "select
|
||
form_name,
|
||
form_description,
|
||
form_redirect,
|
||
form_success_message,
|
||
form_password,
|
||
form_unique_ip,
|
||
form_frame_height,
|
||
form_has_css,
|
||
form_active,
|
||
form_captcha,
|
||
form_review
|
||
from
|
||
ap_forms
|
||
where
|
||
form_id='$form_id'";
|
||
$result = do_query($query);
|
||
$row = do_fetch_result($result);
|
||
|
||
$form = new \stdClass();
|
||
|
||
$form->id = $form_id;
|
||
$form->name = $row['form_name'];
|
||
$form->description = $row['form_description'];
|
||
$form->redirect = $row['form_redirect'];
|
||
$form->success_message = $row['form_success_message'];
|
||
$form->password = $row['form_password'];
|
||
$form->frame_height = $row['form_frame_height'];
|
||
$form->unique_ip = $row['form_unique_ip'];
|
||
$form->has_css = $row['form_has_css'];
|
||
$form->active = $row['form_active'];
|
||
$form->captcha = $row['form_captcha'];
|
||
$form->review = $row['form_review'];
|
||
|
||
if(empty($error_elements)){
|
||
$form->is_error = 0;
|
||
}else{
|
||
$form->is_error = 1;
|
||
}
|
||
|
||
//if this form has review enabled and user are having $_SESSION['review_id'], then populate the form with that values
|
||
if(!empty($form->review) && !empty($_SESSION['review_id']) && empty($populated_values)){
|
||
$param['machform_path'] = $machform_path;
|
||
$populated_values = get_entry_values($form_id,$_SESSION['review_id'],true,$param);
|
||
}
|
||
|
||
//get elements data
|
||
//get element options first and store it into array
|
||
$query = "select
|
||
element_id,
|
||
option_id,
|
||
`position`,
|
||
`option`,
|
||
option_is_default
|
||
from
|
||
ap_element_options
|
||
where
|
||
form_id='$form_id' and live=1
|
||
order by
|
||
element_id asc,`position` asc";
|
||
$result = do_query($query);
|
||
while($row = do_fetch_result($result)){
|
||
$element_id = $row['element_id'];
|
||
$option_id = $row['option_id'];
|
||
$options_lookup[$element_id][$option_id]['position'] = $row['position'];
|
||
$options_lookup[$element_id][$option_id]['option'] = $row['option'];
|
||
$options_lookup[$element_id][$option_id]['option_is_default'] = $row['option_is_default'];
|
||
}
|
||
|
||
|
||
//get elements data
|
||
$element = array();
|
||
$query = "select
|
||
element_id,
|
||
element_title,
|
||
element_guidelines,
|
||
element_size,
|
||
element_is_required,
|
||
element_is_unique,
|
||
element_is_private,
|
||
element_type,
|
||
element_position,
|
||
element_default_value,
|
||
element_constraint
|
||
from
|
||
ap_form_elements
|
||
where
|
||
form_id='$form_id'
|
||
order by
|
||
element_position asc";
|
||
$result = do_query($query);
|
||
|
||
$j=0;
|
||
$has_calendar = false;
|
||
while($row = do_fetch_result($result)){
|
||
$element_id = $row['element_id'];
|
||
|
||
//lookup element options first
|
||
if(!empty($options_lookup[$element_id])){
|
||
$element_options = array();
|
||
$i=0;
|
||
foreach ($options_lookup[$element_id] as $option_id=>$data){
|
||
$element_options[$i] = new \stdClass();
|
||
$element_options[$i]->id = $option_id;
|
||
$element_options[$i]->option = $data['option'];
|
||
$element_options[$i]->is_default = $data['option_is_default'];
|
||
$element_options[$i]->is_db_live = 1;
|
||
$i++;
|
||
}
|
||
}
|
||
|
||
|
||
//populate elements
|
||
$element[$j] = new \stdClass();
|
||
$element[$j]->title = nl2br($row['element_title']);
|
||
|
||
if(empty($edit_id)){
|
||
$element[$j]->guidelines = $row['element_guidelines'];
|
||
}else{
|
||
$element[$j]->guidelines = '';
|
||
}
|
||
|
||
$element[$j]->size = $row['element_size'];
|
||
$element[$j]->is_required = $row['element_is_required'];
|
||
$element[$j]->is_unique = $row['element_is_unique'];
|
||
$element[$j]->is_private = $row['element_is_private'];
|
||
$element[$j]->type = $row['element_type'];
|
||
$element[$j]->position = $row['element_position'];
|
||
$element[$j]->id = $row['element_id'];
|
||
$element[$j]->is_db_live = 1;
|
||
$element[$j]->machform_path = $machform_path;
|
||
|
||
//this data came from db or form submit
|
||
//being used to display edit form or redisplay form with errors and previous inputs
|
||
//this should be optimized in the future, only pass necessary data, not the whole array
|
||
$element[$j]->populated_value = $populated_values;
|
||
|
||
//if there is file upload type, set form enctype to multipart
|
||
if($row['element_type'] == 'file'){
|
||
$form_enc_type = 'enctype="multipart/form-data"';
|
||
}
|
||
|
||
if(!empty($error_elements[$element[$j]->id])){
|
||
$element[$j]->is_error = 1;
|
||
$element[$j]->error_message = $error_elements[$element[$j]->id];
|
||
}
|
||
|
||
|
||
$element[$j]->default_value = htmlspecialchars($row['element_default_value']);
|
||
|
||
|
||
$element[$j]->constraint = $row['element_constraint'];
|
||
if(!empty($element_options)){
|
||
$element[$j]->options = $element_options;
|
||
}else{
|
||
$element[$j]->options = '';
|
||
}
|
||
|
||
//check for calendar type
|
||
if($row['element_type'] == 'date' || $row['element_type'] == 'europe_date'){
|
||
$has_calendar = true;
|
||
}
|
||
|
||
$j++;
|
||
}
|
||
|
||
|
||
//add captcha if enable
|
||
if(!empty($form->captcha) && (empty($edit_id))){
|
||
$element[$j] = new \stdClass();
|
||
$element[$j]->type = 'captcha';
|
||
$element[$j]->form_id = $form_id;
|
||
$element[$j]->machform_path = $machform_path;
|
||
|
||
if(!empty($error_elements['element_captcha'])){
|
||
$element[$j]->is_error = 1;
|
||
$element[$j]->error_message = $error_elements['element_captcha'];
|
||
}
|
||
}
|
||
|
||
//generate html markup for each element
|
||
$all_element_markup = '';
|
||
foreach ($element as $element_data){
|
||
if($element_data->is_private && empty($_SESSION['logged_in'])){ //don't show private element
|
||
continue;
|
||
}
|
||
$all_element_markup .= call_user_func('display_'.$element_data->type,$element_data);
|
||
}
|
||
|
||
if(!empty($custom_error)){
|
||
$form->error_message =<<<EOT
|
||
<li id="error_message">
|
||
<h3 id="error_message_title">{$custom_error}</h3>
|
||
</li>
|
||
EOT;
|
||
}elseif(!empty($error_elements)){
|
||
$form->error_message =<<<EOT
|
||
<li id="error_message">
|
||
<h3 id="error_message_title">{$lang['error_title']}</h3>
|
||
<p id="error_message_desc">{$lang['error_desc']}</p>
|
||
</li>
|
||
EOT;
|
||
}
|
||
|
||
if(!empty($form->password) && empty($_SESSION['user_authenticated'])){ //if form require password and password hasn't set yet
|
||
$show_password_form = true;
|
||
|
||
}elseif (!empty($form->password) && !empty($_SESSION['user_authenticated']) && $_SESSION['user_authenticated'] != $form_id){ //if user authenticated but not for this form
|
||
$show_password_form = true;
|
||
|
||
}else{ //user authenticated for this form, or no password required
|
||
$show_password_form = false;
|
||
}
|
||
|
||
//display edit_id if there is any
|
||
if(!empty($edit_id)){
|
||
$edit_markup = "<input type=\"hidden\" name=\"edit_id\" value=\"{$edit_id}\" />\n";
|
||
$submit_button = '<input id="saveForm" class="button_text" type="submit" name="submit" value="Save Changes" />';
|
||
}else{
|
||
$edit_markup = '';
|
||
|
||
if(!empty($form->review) && !$show_password_form){
|
||
$submit_button = '<input type="hidden" name="submit_continue" value="1" />'."\n".'<input id="saveForm" class="button_text" type="submit" name="submit_continue" value="'.$lang['continue_button'].'" />';
|
||
}else{
|
||
$submit_button = '<input type="hidden" name="submit" value="1" />'."\n".'<input id="saveForm" class="button_text" type="submit" name="submit" value="'.$lang['submit_button'].'" />';
|
||
}
|
||
}
|
||
|
||
|
||
//markup for submit button
|
||
$button_markup =<<<EOT
|
||
<li id="li_buttons" class="buttons">
|
||
<input type="hidden" name="form_id" value="{$form->id}" />
|
||
{$edit_markup}
|
||
{$submit_button}
|
||
</li>
|
||
EOT;
|
||
|
||
//check for specific form css, if any, use it instead
|
||
if($form->has_css){
|
||
$css_dir = DATA_DIR."/form_{$form_id}/css/";
|
||
}
|
||
|
||
|
||
if(empty($form->active)){ //if form is not active, don't show the fields
|
||
$form_desc_div ='';
|
||
$all_element_markup = '';
|
||
$button_markup = '';
|
||
$ul_class = 'class="password"';
|
||
$custom_element =<<<EOT
|
||
<li>
|
||
<h2>{$lang['form_inactive']}</h2>
|
||
</li>
|
||
EOT;
|
||
}elseif($show_password_form){ //don't show form description if this page is password protected and user not authenticated
|
||
$form_desc_div ='';
|
||
$all_element_markup = '';
|
||
$custom_element =<<<EOT
|
||
<li>
|
||
<h2>{$lang['form_pass_title']}</h2>
|
||
<div>
|
||
<input type="password" value="" class="text" name="password" id="password" />
|
||
<label for="password" class="desc">{$lang['form_pass_desc']}</label>
|
||
</div>
|
||
</li>
|
||
EOT;
|
||
$ul_class = 'class="password"';
|
||
}else{
|
||
if(!empty($form->name) || !empty($form->description)){
|
||
$form->description = nl2br($form->description);
|
||
$form_desc_div =<<<EOT
|
||
<div class="form_description">
|
||
<h2>{$form->name}</h2>
|
||
<p>{$form->description}</p>
|
||
</div>
|
||
EOT;
|
||
}
|
||
}
|
||
|
||
|
||
$embed_class = 'class="integrated"';
|
||
|
||
if(empty($edit_id)){
|
||
$css_markup = "<link rel=\"stylesheet\" type=\"text/css\" href=\"{$machform_path}{$css_dir}view.css\" media=\"all\" />";
|
||
}else{
|
||
$css_markup = "<link rel=\"stylesheet\" type=\"text/css\" href=\"edit_entry.css\" media=\"all\" />";
|
||
}
|
||
|
||
if($has_calendar){
|
||
$calendar_js = "<script type=\"text/javascript\" src=\"{$machform_path}js/calendar.js\"></script>";
|
||
}else{
|
||
$calendar_js = '';
|
||
}
|
||
|
||
|
||
//If you would like to remove the "Powered by MachForm" link, please contact us at customer.service@appnitro.com before doing so
|
||
$form_markup =<<<EOT
|
||
{$css_markup}
|
||
<script type="text/javascript" src="{$machform_path}js/view.js"></script>
|
||
{$calendar_js}
|
||
|
||
<div id="main_body" {$embed_class}>
|
||
|
||
<div id="form_container">
|
||
|
||
<h1><a>{$form->name}</a></h1>
|
||
<form id="form_{$form->id}" class="appnitro" {$form_enc_type} method="post" action="#main_body">
|
||
{$form_desc_div}
|
||
<ul {$ul_class}>
|
||
{$form->error_message}
|
||
{$all_element_markup}
|
||
{$custom_element}
|
||
{$button_markup}
|
||
</ul>
|
||
</form>
|
||
<div id="footer">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
EOT;
|
||
return $form_markup;
|
||
|
||
}
|
||
|
||
function display_success($form_id,$embed=false){
|
||
//get form properties data
|
||
$query = "select
|
||
form_success_message,
|
||
form_has_css,
|
||
form_name
|
||
from
|
||
ap_forms
|
||
where
|
||
form_id='$form_id'";
|
||
|
||
$result = do_query($query);
|
||
$row = do_fetch_result($result);
|
||
|
||
$form = new \stdClass();
|
||
|
||
$form->id = $form_id;
|
||
$form->success_message = nl2br($row['form_success_message']);
|
||
$form->has_css = $row['form_has_css'];
|
||
$form->name = $row['form_name'];
|
||
|
||
|
||
//check for specific form css, if any, use it instead
|
||
if($form->has_css){
|
||
$css_dir = "mobile/apple/css/";
|
||
}
|
||
|
||
if($embed){
|
||
$embed_class = 'class="embed"';
|
||
}
|
||
|
||
$form_markup = <<<EOT
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||
<head>
|
||
<meta content="yes" name="apple-mobile-web-app-capable" />
|
||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||
<link href="pics/homescreen.gif" rel="apple-touch-icon" />
|
||
<meta content="minimum-scale=1.0, width=device-width, maximum-scale=0.6667, user-scalable=no" name="viewport" />
|
||
<link href="{$css_dir}style.css" rel="stylesheet" media="screen" type="text/css" />
|
||
<link href="{$css_dir}forms.css" rel="stylesheet" media="screen" type="text/css" />
|
||
<script src="mobile/apple/javascript/functions.js" type="text/javascript"></script>
|
||
<title>{$form->name}</title>
|
||
<link href="pics/startup.png" rel="apple-touch-startup-image" />
|
||
</head>
|
||
<body>
|
||
<div id="topbar">
|
||
<div id="title">{$form->name}</div>
|
||
</div>
|
||
<div id="content">
|
||
<ul class="pageitem success_message">
|
||
<li class="textbox">
|
||
<p class="center">{$form->success_message}</p>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
<div id="footer">
|
||
</div>
|
||
</body>
|
||
</html>
|
||
EOT;
|
||
|
||
/*$form_markup = <<<EOT
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||
<head>
|
||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||
<title>{$form->name}</title>
|
||
<link rel="stylesheet" type="text/css" href="{$css_dir}view.css" media="all" />
|
||
</head>
|
||
<body id="main_body" {$embed_class}>
|
||
|
||
<img id="top" src="images/top.png" alt="" />
|
||
<div id="form_container">
|
||
|
||
<h1><a>Appnitro MachForm</a></h1>
|
||
|
||
<div class="form_success">
|
||
<h2>{$form->success_message}</h2>
|
||
</div>
|
||
<div id="footer" class="success">
|
||
Powered by <a href="http://www.appnitro.com" target="_blank">MachForm</a>
|
||
</div>
|
||
</div>
|
||
<img id="bottom" src="images/bottom.png" alt="" />
|
||
</body>
|
||
</html>
|
||
EOT;*/
|
||
|
||
return $form_markup;
|
||
}
|
||
|
||
//this function is similar as display_success, but designed to display success page without IFRAME
|
||
function display_integrated_success($form_id,$machform_path){
|
||
//get form properties data
|
||
$query = "select
|
||
form_success_message,
|
||
form_has_css
|
||
from
|
||
ap_forms
|
||
where
|
||
form_id='$form_id'";
|
||
|
||
$result = do_query($query);
|
||
$row = do_fetch_result($result);
|
||
|
||
$form = new \stdClass();
|
||
|
||
$form->id = $form_id;
|
||
$form->success_message = nl2br($row['form_success_message']);
|
||
$form->has_css = $row['form_has_css'];
|
||
|
||
|
||
//check for specific form css, if any, use it instead
|
||
if($form->has_css){
|
||
$css_dir = DATA_DIR."/form_{$form_id}/css/";
|
||
}
|
||
|
||
|
||
$form_markup = <<<EOT
|
||
<link rel="stylesheet" type="text/css" href="{$machform_path}{$css_dir}view.css" media="all" />
|
||
<div id="main_body" class="embed">
|
||
<div id="form_container">
|
||
<h1><a>Appnitro MachForm</a></h1>
|
||
|
||
<div class="form_success">
|
||
<h2>{$form->success_message}</h2>
|
||
</div>
|
||
<div id="footer" class="success">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
EOT;
|
||
return $form_markup;
|
||
}
|
||
|
||
//display form confirmation page
|
||
function display_form_review($form_id,$record_id,$embed=false){
|
||
global $lang;
|
||
|
||
//get form properties data
|
||
$query = "select
|
||
form_has_css,
|
||
form_redirect
|
||
from
|
||
ap_forms
|
||
where
|
||
form_id='$form_id'";
|
||
|
||
$result = do_query($query);
|
||
$row = do_fetch_result($result);
|
||
|
||
|
||
$form_has_css = $row['form_has_css'];
|
||
$form_redirect = $row['form_redirect'];
|
||
|
||
//prepare entry data for previewing
|
||
$param['strip_download_link'] = true;
|
||
$param['review_mode'] = true;
|
||
$param['show_attach_image'] = true;
|
||
$entry_details = get_entry_details($form_id,$record_id,$param);
|
||
|
||
$entry_data = '<table id="machform_review_table" width="100%" border="0" cellspacing="0" cellpadding="0"><tbody>'."\n";
|
||
|
||
$toggle = false;
|
||
foreach ($entry_details as $data){
|
||
if($toggle){
|
||
$toggle = false;
|
||
$row_style = 'class="alt"';
|
||
}else{
|
||
$toggle = true;
|
||
$row_style = '';
|
||
}
|
||
|
||
$entry_data .= "<tr {$row_style}>\n";
|
||
$entry_data .= "<td width=\"40%\"><strong>{$data['label']}</strong></td>\n";
|
||
$entry_data .= "<td width=\"60%\">".nl2br($data['value'])."</td>\n";
|
||
$entry_data .= "</tr>\n";
|
||
}
|
||
|
||
$entry_data .= '</tbody></table>';
|
||
|
||
//check for specific form css, if any, use it instead
|
||
if($form_has_css){
|
||
$css_dir = DATA_DIR."/form_{$form_id}/css/";
|
||
}
|
||
|
||
if($embed){
|
||
$embed_class = 'class="embed"';
|
||
}
|
||
|
||
$form_markup = <<<EOT
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||
<head>
|
||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||
<title>{$form_name}</title>
|
||
<link rel="stylesheet" type="text/css" href="{$css_dir}view.css" media="all" />
|
||
<script src="js/jquery/jquery-core.js"></script>
|
||
<script src="js/jquery/jquery-columnhover.js"></script>
|
||
<script>
|
||
$(document).ready(function () {
|
||
$('#machform_review_table').columnHover();
|
||
});
|
||
</script>
|
||
</head>
|
||
<body id="main_body" {$embed_class}>
|
||
|
||
<img id="top" src="images/top.png" alt="" />
|
||
<div id="form_container">
|
||
|
||
<h1><a>Appnitro MachForm</a></h1>
|
||
<form id="form_{$form->id}" class="appnitro" method="post" action="{$_SERVER['PHP_SELF']}">
|
||
<div class="form_description">
|
||
<h2>{$lang['review_title']}</h2>
|
||
<p>{$lang['review_message']}</p>
|
||
</div>
|
||
{$entry_data}
|
||
<ul>
|
||
<li id="li_buttons" class="buttons">
|
||
<input type="hidden" name="id" value="{$form_id}" />
|
||
<input id="review_back" class="button_text" type="submit" name="review_back" value="« {$lang['back_button']}" />
|
||
<input id="review_submit" class="button_text" type="submit" name="review_submit" value="{$lang['submit_button']}" />
|
||
</li>
|
||
</ul>
|
||
</form>
|
||
<div id="footer" class="success">
|
||
</div>
|
||
</div>
|
||
<img id="bottom" src="images/bottom.png" alt="" />
|
||
</body>
|
||
</html>
|
||
EOT;
|
||
return $form_markup;
|
||
}
|
||
|
||
//display form confirmation page for integrated embed code
|
||
function display_integrated_form_review($form_id,$record_id,$machform_path){
|
||
global $lang;
|
||
|
||
//get form properties data
|
||
$query = "select
|
||
form_has_css,
|
||
form_redirect
|
||
from
|
||
ap_forms
|
||
where
|
||
form_id='$form_id'";
|
||
|
||
$result = do_query($query);
|
||
$row = do_fetch_result($result);
|
||
|
||
|
||
$form_has_css = $row['form_has_css'];
|
||
$form_redirect = $row['form_redirect'];
|
||
|
||
//prepare entry data for previewing
|
||
$param['strip_download_link'] = true;
|
||
$param['review_mode'] = true;
|
||
$param['show_attach_image'] = true;
|
||
$param['machform_path'] = $machform_path;
|
||
$entry_details = get_entry_details($form_id,$record_id,$param);
|
||
|
||
$entry_data = '<table id="machform_review_table" width="100%" border="0" cellspacing="0" cellpadding="0"><tbody>'."\n";
|
||
|
||
$toggle = false;
|
||
foreach ($entry_details as $data){
|
||
if($toggle){
|
||
$toggle = false;
|
||
$row_style = 'class="alt"';
|
||
}else{
|
||
$toggle = true;
|
||
$row_style = '';
|
||
}
|
||
|
||
$entry_data .= "<tr {$row_style}>\n";
|
||
$entry_data .= "<td width=\"40%\"><strong>{$data['label']}</strong></td>\n";
|
||
$entry_data .= "<td width=\"60%\">".nl2br($data['value'])."</td>\n";
|
||
$entry_data .= "</tr>\n";
|
||
}
|
||
|
||
$entry_data .= '</tbody></table>';
|
||
|
||
//check for specific form css, if any, use it instead
|
||
if($form_has_css){
|
||
$css_dir = DATA_DIR."/form_{$form_id}/css/";
|
||
}
|
||
|
||
if($embed){
|
||
$embed_class = 'class="embed"';
|
||
}
|
||
|
||
$form_action = str_replace(array("&show_review=1","?show_review=1"),"",$_SERVER['REQUEST_URI']);
|
||
|
||
$form_markup = <<<EOT
|
||
<link rel="stylesheet" type="text/css" href="{$machform_path}{$css_dir}view.css" media="all" />
|
||
<script src="{$machform_path}js/jquery/jquery-core.js"></script>
|
||
<script src="{$machform_path}js/jquery/jquery-columnhover.js"></script>
|
||
<script>
|
||
$(document).ready(function () {
|
||
$('#machform_review_table').columnHover();
|
||
});
|
||
</script>
|
||
|
||
<div id="main_body" class="embed">
|
||
<div id="form_container">
|
||
<h1><a>Appnitro MachForm</a></h1>
|
||
<form id="form_{$form->id}" class="appnitro" method="post" action="{$form_action}">
|
||
<div class="form_description">
|
||
<h2>{$lang['review_title']}</h2>
|
||
<p>{$lang['review_message']}</p>
|
||
</div>
|
||
{$entry_data}
|
||
<ul>
|
||
<li id="li_buttons" class="buttons">
|
||
<input type="hidden" name="id" value="{$form_id}" />
|
||
<input id="review_back" class="button_text" type="submit" name="review_back" value="« {$lang['back_button']}" />
|
||
<input id="review_submit" class="button_text" type="submit" name="review_submit" value="{$lang['submit_button']}" />
|
||
</li>
|
||
</ul>
|
||
</form>
|
||
<div id="footer" class="success">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
EOT;
|
||
return $form_markup;
|
||
}
|
||
?>
|