| Current Path : /home/purehotels/public_html/administrator/components/com_uniform/helpers/ |
| Current File : /home/purehotels/public_html/administrator/components/com_uniform/helpers/uniform.php |
<?php
/**
* @version $Id: uniform.php 19014 2012-11-28 04:48:56Z thailv $
* @package JSNUniform
* @subpackage Helper
* @author JoomlaShine Team <support@joomlashine.com>
* @copyright Copyright (C) 2016 JoomlaShine.com. All Rights Reserved.
* @license GNU/GPL v2 or later http://www.gnu.org/licenses/gpl-2.0.html
*
* Websites: http://www.joomlashine.com
* Technical Support: Feedback - http://www.joomlashine.com/contact-us/get-support.html
*
*/
defined('_JEXEC') or die('Restricted access');
/**
* JSNUniform form helper
*
* @package Joomla.Administrator
* @subpackage com_uniform
* @since 1.6
*/
class JSNUniformHelper
{
/**
* Hard check for update, ignore cache
* @throws Exception
*/
public static function hardCheckUpdate()
{
$config = JFactory::getConfig();
$cache = $config->get('tmp_path') . '/JoomlaShineUpdates.json';
// Always update cache file modification time
is_writable($cache) AND touch($cache, time());
// Communicate with JoomlaShine server via latest version checking URL
try
{
$versions = JSNUtilsHttp::get(JSN_EXT_VERSION_CHECK_URL);
$versions = isset($versions['body']) ? $versions['body'] : '{"items":[]}';
// Cache latest version to local file system
JFile::write($cache, $versions);
}
catch (Exception $e)
{
return false;
}
}
/**
* Load assets.
*
* @return void
*/
public static function addAssets($checkVersion = true)
{
// Load common assets
$stylesheets = array();
$stylesheets[] = JURI::root(true) . '/plugins/system/jsnframework/assets/3rd-party/jquery-ui/css/ui-bootstrap/jquery-ui-1.9.0.custom.css';
$stylesheets[] = JURI::root(true) . '/plugins/system/jsnframework/assets/joomlashine/css/jsn-gui.css';
//$stylesheets[] = JURI::root(true) . '/plugins/system/jsnframework/assets/3rd-party/font-awesome/css/font-awesome.css';
// Load proprietary assets
// Load scripts
if ($checkVersion && JSNVersion::isJoomlaCompatible('3.2'))
{
JSNHtmlAsset::addScript(JUri::root(true) . '/media/jui/js/jquery.min.js');
// $document = JFactory::getDocument();
//$document->addScript(JURI::root(true) . '/media/jui/js/jquery.min.js');
// JSNHtmlAsset::addScriptLibrary('jquery.ui', JSN_UNIFORM_ASSETS_URI . "/js/libs/jquery-ui-1.10.3.custom.min", array('jquery'));
}
$stylesheets[] = JURI::base(true) . '/components/com_uniform/assets/css/uniform.css';
$stylesheets[] = JURI::base(true) . '/components/com_uniform/assets/css/jwysiwyg.css';
JSNHtmlAsset::addStyle($stylesheets);
}
/**
* get all plugin in folder plg-uniform
*
* @return array
*/
public static function getPluginUniform(){
$db = JFactory::getDbo();
$query = $db->getQuery(true)
->select('DISTINCT(element) AS value, folder AS text')
->from('#__extensions')
->where($db->quoteName('type') . ' = ' . $db->quote('plugin') . 'and' . $db->quoteName('folder') .'= "uniform"'.' and '. $db->quoteName('enabled') .'= 1')
->order('element');
$db->setQuery($query);
try
{
$options = $db->loadObjectList();
}
catch (RuntimeException $e)
{
JError::raiseWarning(500, $e->getMessage());
}
return $options;
}
/**
* Contructor plugin uniform
*
* @return void
*/
public static function contructPluginUniform(){
$option = JSNUniformHelper::getPluginUniform();
if(isset($option) && !empty($option)){
if(is_array($option)){
foreach ($option as $k=>$v){
$v = (array)$v;
if($v['value'] !=''){
$plgName = $v['value'];
JPluginHelper::importPlugin('uniform',$plgName);
$dispatcher = JEventDispatcher::getInstance();
$results = $dispatcher->trigger($plgName,array());
echo $results[0];
}
}
}
}
}
/**
* Configure the Linkbar.
*
* @param string $vName The name of the active view.
*
* @return void
*
* @since 1.6
*/
public static function addSubmenu($vName = 'forms')
{
if (JFactory::getApplication()->input->getCmd('tmpl', null) == null)
{
// Get 5 most-recent items
$items = self::getForms(5);
// Declare 1st-level menu items
JSNMenuHelper::addEntry('forms', 'JSN_UNIFORM_SUBMENU_FORMS', 'index.php?option=com_uniform', $vName == '' OR $vName == 'forms', 'administrator/components/com_uniform/assets/images/icons-16/icon-forms.png', 'sub-menu');
JSNMenuHelper::addEntry('submissions', 'JSN_UNIFORM_SUBMENU_SUBMISSION', 'index.php?option=com_uniform&view=submissions', $vName == '' OR $vName == 'submissions', 'administrator/components/com_uniform/assets/images/icons-16/icon-submissions.png', 'sub-menu');
$edition = defined('JSN_UNIFORM_EDITION') ? JSN_UNIFORM_EDITION : "FREE";
JSNMenuHelper::addEntry('integration', 'JSN_UNIFORM_SUBMENU_INTEGRATION', 'index.php?option=com_uniform&view=integration', $vName == 'integration', 'administrator/components/com_uniform/assets/images/icons-16/icon-integration.png', 'sub-menu');
JSNMenuHelper::addEntry('configuration', 'JSN_UNIFORM_SUBMENU_CONFIGURATION', '', $vName == '' OR $vName == 'configuration', 'administrator/components/com_uniform/assets/images/icons-16/icon-cog.png', 'sub-menu');
JSNMenuHelper::addEntry('about', 'JSN_UNIFORM_SUBMENU_ABOUT', 'index.php?option=com_uniform&view=about', $vName == 'about', 'administrator/components/com_uniform/assets/images/icons-16/icon-about.png', 'sub-menu');
// Declare 2nd-level menu items for 'items' entry
JSNMenuHelper::addEntry('all-forms', 'All Forms', 'index.php?option=com_uniform&view=forms', false, '', 'sub-menu.forms');
if ($items)
{
JSNMenuHelper::addEntry('recent-forms', 'Recent Forms', '', false, '', 'sub-menu.forms');
foreach ($items AS $item)
{
JSNMenuHelper::addEntry('item-' . $item->form_id, $item->form_title, 'index.php?option=com_uniform&view=form&task=form.edit&layout=edit&form_id=' . $item->form_id, false, '', 'sub-menu.forms.recent-forms');
}
}
JSNMenuHelper::addSeparator('sub-menu.forms');
JSNMenuHelper::addEntry('item-new', 'Create New Form', 'index.php?option=com_uniform&view=form&layout=edit', false, '', 'sub-menu.forms');
// Declare 2nd-level menu items for 'configuration' entry
JSNMenuHelper::addEntry('global-params', 'Global Parameters', 'index.php?option=com_uniform&view=configuration&s=configuration&g=configs', false, '', 'sub-menu.configuration');
JSNMenuHelper::addEntry('messages', 'Messages', 'index.php?option=com_uniform&view=configuration&s=configuration&g=msgs', false, '', 'sub-menu.configuration');
JSNMenuHelper::addEntry('languages', 'Languages', 'index.php?option=com_uniform&view=configuration&s=configuration&g=langs', false, '', 'sub-menu.configuration');
JSNMenuHelper::addEntry('update', 'Product Update', 'index.php?option=com_uniform&view=configuration&s=configuration&g=update', false, '', 'sub-menu.configuration');
JSNMenuHelper::addEntry('maintenance', 'Maintenance', '', false, '', 'sub-menu.configuration');
// Declare 3rd-level menu items for 'maintenance' entry
JSNMenuHelper::addEntry('data', 'Data', 'index.php?option=com_uniform&view=configuration&s=maintenance&g=data', false, '', 'sub-menu.configuration.maintenance');
JSNMenuHelper::addEntry('permissions', 'Permissions', 'index.php?option=com_uniform&view=configuration&s=maintenance&g=permissions', false, '', 'sub-menu.configuration.maintenance');
// Render the sub-menu
JSNMenuHelper::render('sub-menu');
}
}
/**
* Set toolbar title and do some initialization
*
* @param string $title Title to set for toolbar.
* @param string $icon Custom icon for the title.
* @param boolean $help Whether to show help button or not?
*
* @return void
*/
public static function initToolbar($title, $icon = '', $help = true)
{
// Set toolbar title
JToolBarHelper::title(JText::_($title), $icon);
// Setup custom menu button
self::addToolbarMenu();
// Show help button?
if ($help)
{
$bar = JToolBar::getInstance('toolbar');
$bar->appendButton('Custom', '<button class="btn btn-small" id="jsn-help" onclick="return false;"><i class="icon-question-sign"></i>' . JText::_('JSN_UNIFORM_HELP') . '</button>');
}
}
/**
* Add toolbar button.
*
* @return void
*/
public static function addToolbarMenu()
{
// Get 5 most-recent items
$items = self::getForms(5);
$JVersion = new JVersion;
$JVersion = $JVersion->getShortVersion();
$classToolbar = '';
if (version_compare($JVersion, '3.7', '>='))
{
$classToolbar = 'j37-more';
}
// Create a toolbar button that drop-down a sub-menu when clicked
JSNMenuHelper::addEntry('toolbar-menu', 'JSN_UNIFORM_MENU', '', false, 'jsn-icon16 jsn-icon-menu', 'toolbar', $classToolbar);
// Declare 1st-level menu items
JSNMenuHelper::addEntry('forms', 'JSN_UNIFORM_SUBMENU_FORMS', 'index.php?option=com_uniform', false, 'administrator/components/com_uniform/assets/images/icons-16/icon-forms.png', 'toolbar-menu');
JSNMenuHelper::addEntry('submissions', 'JSN_UNIFORM_SUBMENU_SUBMISSION', 'index.php?option=com_uniform&view=submissions', false, 'administrator/components/com_uniform/assets/images/icons-16/icon-submissions.png', 'toolbar-menu');
JSNMenuHelper::addEntry('integration', 'JSN_UNIFORM_SUBMENU_INTEGRATION', 'index.php?option=com_uniform&view=integration', false, 'administrator/components/com_uniform/assets/images/icons-16/icon-integration.png', 'toolbar-menu');
JSNMenuHelper::addEntry('configuration', 'JSN_UNIFORM_SUBMENU_CONFIGURATION', 'index.php?option=com_uniform&view=configuration', false, 'administrator/components/com_uniform/assets/images/icons-16/icon-cog.png', 'toolbar-menu');
JSNMenuHelper::addEntry('about', 'JSN_UNIFORM_SUBMENU_ABOUT', 'index.php?option=com_uniform&view=about', false, 'administrator/components/com_uniform/assets/images/icons-16/icon-about.png', 'toolbar-menu');
// Declare 2nd-level menu items for 'items' entry
JSNMenuHelper::addEntry('all-forms', 'All Forms', 'index.php?option=com_uniform&view=forms', false, '', 'toolbar-menu.forms');
if ($items)
{
JSNMenuHelper::addEntry('recent-forms', 'Recent forms', '', false, '', 'toolbar-menu.forms');
foreach ($items AS $item)
{
JSNMenuHelper::addEntry('item-' . $item->form_id, $item->form_title, 'index.php?option=com_uniform&view=form&task=form.edit&layout=edit&form_id=' . $item->form_id, false, '', 'toolbar-menu.forms.recent-forms');
}
}
JSNMenuHelper::addSeparator('toolbar-menu.forms');
JSNMenuHelper::addEntry('item-new', 'Create New Form', 'index.php?option=com_uniform&view=form&layout=edit', false, '', 'toolbar-menu.forms');
}
/**
* Setup menu add new form button.
*
* @return void
*/
public static function buttonAddNewForm()
{
$JVersion = new JVersion;
$JVersion = $JVersion->getShortVersion();
$classToolbar = '';
if (version_compare($JVersion, '3.7', '>='))
{
$classToolbar = 'j37-more';
}
// Create a toolbar button that drop-down a sub-menu when clicked
JSNMenuHelper::addEntry('toolbar-new-form', JText::_('JTOOLBAR_NEW'), '', false, 'jsn-icon16 jsn-icon-plus', 'toolbar', $classToolbar);
// Declare 1st-level menu items
JSNMenuHelper::addEntry('blank-form', 'JSN_UNIFORM_BLANK_FORM', 'index.php?option=com_uniform&view=form&layout=edit', false, '', 'toolbar-new-form');
JSNMenuHelper::addSeparator('toolbar-new-form');
JSNMenuHelper::addEntry('contact-form', 'JSN_UNIFORM_CONTACT_US_FORM', 'index.php?option=com_uniform&view=form&layout=edit&form=Contact Us', false, '', 'toolbar-new-form');
JSNMenuHelper::addEntry('feedback-form', 'JSN_UNIFORM_CUSTOMER_FEEDBACK_FORM', 'index.php?option=com_uniform&view=form&layout=edit&form=Customer Feedback', false, '', 'toolbar-new-form');
JSNMenuHelper::addEntry('application-form', 'JSN_UNIFORM_JOB_APPLICATION_FORM', 'index.php?option=com_uniform&view=form&layout=edit&form=Job Application', false, '', 'toolbar-new-form');
JSNMenuHelper::addEntry('register-form', 'JSN_UNIFORM_EVENT_REGISTRATION', 'index.php?option=com_uniform&view=form&layout=edit&form=Event Registration', false, '', 'toolbar-new-form');
JSNMenuHelper::addEntry('voting-form', 'JSN_UNIFORM_VOTING_FORM', 'index.php?option=com_uniform&view=form&layout=edit&form=Voting Form', false, '', 'toolbar-new-form');
JSNMenuHelper::addEntry('Survey-form', 'Survey Product/Service Satisfaction', 'index.php?option=com_uniform&view=form&layout=edit&form=Survey Product/Service Satisfaction', false, '', 'toolbar-new-form');
}
/**
* Genrate published options
*
* @return array
*/
public static function publishedOptions()
{
// Build the active state filter options.
$options = array();
$options[] = JHtml::_('select.option', '1', 'JSN_UNIFORM_PUBLISHED');
$options[] = JHtml::_('select.option', '0', 'JSN_UNIFORM_UNPUBLISHED');
return $options;
}
/**
* Word limiter
*
* @param string $str String input
*
* @param integer $limit Limit number
*
* @param string $end_char End char
*
* @return string
*/
public static function wordLimiter($str, $limit = 100, $end_char = '…')
{
if (trim($str) == '')
{
return $str;
}
preg_match('/\s*(?:\S*\s*){' . (int) $limit . '}/', $str, $matches);
if (strlen($matches[0]) == strlen($str))
{
$end_char = '';
}
return rtrim($matches[0]) . $end_char;
}
/**
* Get module info
*
* @return type
*/
public static function getModuleInfo()
{
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('*');
$query->from('#__extensions');
$query->where('element=\'mod_uniform\' AND type=\'module\'');
$db->setQuery($query);
$result = $db->loadObject();
return $result;
}
/**
* get component info
*
* @return type
*/
public static function getComponentInfo()
{
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('*');
$query->from('#__extensions');
$query->where('element=\'com_uniform\' AND type=\'component\'');
$db->setQuery($query);
$result = $db->loadObject();
return $result;
}
/**
* Get options Menus
*
* @return object list
*/
public static function getOptionMenus()
{
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('menutype As value, title As text');
$query->from('#__menu_types');
$query->order('title');
$db->setQuery($query);
$menus = $db->loadObjectList();
// Check for a database error.
if ($db->getErrorNum())
{
JError::raiseWarning(500, $db->getErrorMsg());
}
return $menus;
}
/**
* Get data forms
*
* @return object list
*/
public static function getForms($limit = "")
{
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('*');
$query->from('#__jsn_uniform_forms');
$query->order("form_id DESC");
if (empty($limit))
{
$db->setQuery($query);
}
else
{
$db->setQuery($query, 0, $limit);
}
$forms = $db->loadObjectList();
// Check for a database error.
if ($db->getErrorNum())
{
JError::raiseWarning(500, $db->getErrorMsg());
}
return $forms;
}
/**
* Get user name by id
*
* @return type
*/
public static function getUserNameById($uid)
{
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('id,username');
$query->from('#__users');
$query->where('id='.(int)$uid);
$db->setQuery($query);
$items = $db->loadObject();
return $items->username;
}
/**
* Get options forms
*
* @return object list
*/
public static function getOptionForms()
{
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('form_id As value, form_title As text');
$query->from('#__jsn_uniform_forms');
$query->where('form_state = 1');
$query->order('form_id DESC');
$db->setQuery($query);
$forms = $db->loadObjectList();
$listForm = array();
foreach ($forms as $form)
{
$query = $db->getQuery(true);
$query->select(count("field_id"))->from('#__jsn_uniform_fields')->where('form_id=' . (int) $form->value);
$db->setQuery($query);
if ($db->loadResult())
{
$listForm[] = $form;
}
}
return $listForm;
}
/**
* Get postion fields
*
* @param int $idForm Id Form
*
* @return object
*/
public static function getDataSumbissionByField($fieldId, $formId)
{
$db = JFactory::getDBO();
$query = $db->getQuery(true);
$query->select(count("data_id"))->from("#__jsn_uniform_submission_data")->where('form_id=' . (int) $formId . ' AND field_id = ' . (int) $fieldId);
$db->setQuery($query);
return $db->loadResult();
}
/**
* Replace type field
*
* @param string $type Type field
*
* @return string
*/
public static function replaceField($type)
{
$type = str_replace(array("password", "email", "single-line-text", "currency", "phone", "website", "dropdown", "choices", "date", "country", "number", "likert"), "varchar(255)", $type);
$type = str_replace(array("address", "checkboxes", "name", "file-upload", "paragraph-text", "list"), "longtext", $type);
return $type;
}
/**
* Retrieve form data for use in page list submission
*
* @return Object List
*/
public static function getFormData()
{
$db = JFactory::getDBO();
$db->setQuery("SHOW COLUMNS FROM #__jsn_uniform_submissions");
return $db->loadObjectList();
}
/**
* CREATE TABLE IF NOT EXISTS `#__jsn_uniform_submission_data`
*/
public static function createTableIfNotExistsSubmissionData()
{
$db = JFactory::getDBO();
$db->setQuery("CREATE TABLE IF NOT EXISTS `#__jsn_uniform_submission_data` (
`submission_data_id` int(11) NOT NULL AUTO_INCREMENT,
`submission_id` int(11) NOT NULL,
`form_id` int(11) NOT NULL,
`field_id` int(11) NOT NULL,
`field_type` varchar(45) NOT NULL,
`submission_data_value` longtext NOT NULL,
PRIMARY KEY (`submission_data_id`),
KEY `submission_data_id` (`submission_data_id`),
KEY `submission_id` (`submission_id`),
KEY `form_id` (`form_id`),
KEY `field_id` (`field_id`)
) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;"
);
$db->execute();
}
/**
* CREATE TABLE IF NOT EXISTS `#__jsn_uniform_submissions`
*/
public static function createTableIfNotExistsSubmissions()
{
$db = JFactory::getDBO();
$db->setQuery("CREATE TABLE IF NOT EXISTS `#__jsn_uniform_submissions` (
`submission_id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
`form_id` INT UNSIGNED NOT NULL ,
`user_id` INT UNSIGNED NULL ,
`submission_ip` VARCHAR(40) NOT NULL ,
`submission_country` VARCHAR(45) NOT NULL ,
`submission_country_code` VARCHAR(4) NOT NULL ,
`submission_browser` VARCHAR(45) NOT NULL ,
`submission_browser_version` VARCHAR(20) NOT NULL ,
`submission_browser_agent` VARCHAR(255) NOT NULL ,
`submission_os` VARCHAR(45) NOT NULL ,
`submission_created_by` INT UNSIGNED NOT NULL COMMENT '0 = Guest' ,
`submission_created_at` DATETIME NOT NULL ,
`submission_state` TINYINT(1) UNSIGNED NOT NULL COMMENT '-1 = Trashed; 0 = Unpublish; 1 = Published' ,
PRIMARY KEY (`submission_id`) ) DEFAULT CHARSET=utf8;"
);
$db->execute();
}
/**
* Convert data Submissions
*
* @return boolen
*/
public static function convertTableSubmissions($action = null)
{
$db = JFactory::getDBO();
$checkConvert = false;
if (self::checkTableSql('#__jsn_uniform_submissions') == false)
{
self::createTableIfNotExistsSubmissions();
$checkConvert = true;
}
else if ($action == "restore")
{
$checkConvert = true;
}
if ($checkConvert && JSNUniformHelper::checkTableSql('#__jsn_uniform_data'))
{
$query = $db->getQuery(true);
$query->delete('#__jsn_uniform_submissions');
$db->setQuery($query);
$db->execute();
$db->getQuery(true);
$db->setQuery($db->getQuery(true)->select('*')->from('#__jsn_uniform_data'));
$dataForms = $db->loadObjectList();
if (!empty($dataForms))
{
foreach ($dataForms as $data)
{
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->insert('#__jsn_uniform_submissions');
$query->columns(array($db->quoteName('submission_id'), $db->quoteName('form_id'),
$db->quoteName('user_id'), $db->quoteName('submission_ip'), $db->quoteName('submission_country'),
$db->quoteName('submission_country_code'), $db->quoteName('submission_browser'), $db->quoteName('submission_browser_version'),
$db->quoteName('submission_browser_agent'), $db->quoteName('submission_os'), $db->quoteName('submission_created_by'),
$db->quoteName('submission_created_at'), $db->quoteName('submission_state'))
);
$query->values(
$db->quote($data->data_id) . ', ' . $db->quote($data->form_id) . ', ' . $db->quote($data->user_id)
. ', ' . $db->quote($data->data_ip) . ', ' . $db->quote($data->data_country)
. ', ' . $db->quote($data->data_country_code) . ', ' . $db->quote($data->data_browser)
. ', ' . $db->quote($data->data_browser_version) . ', ' . $db->quote($data->data_browser_agent)
. ', ' . $db->quote($data->data_os) . ', ' . $db->quote($data->data_created_by)
. ', ' . $db->quote($data->data_created_at) . ', ' . $db->quote($data->data_state)
);
$db->setQuery($query);
$db->query();
}
}
}
}
/**
* Convert data Submissions
*
* @return boolen
*/
public static function convertTableSubmissionData($action = null)
{
$db = JFactory::getDBO();
$checkConvert = false;
if (self::checkTableSql('#__jsn_uniform_submission_data') === false)
{
self::createTableIfNotExistsSubmissionData();
$checkConvert = true;
}
else if ($action == "restore")
{
$checkConvert = true;
}
if ($checkConvert)
{
$query = $db->getQuery(true);
$query->delete('#__jsn_uniform_submission_data');
$db->setQuery($query);
$db->execute();
$db->getQuery(true);
$db->setQuery($db->getQuery(true)->select('form_id')->from('#__jsn_uniform_forms'));
$dataForms = $db->loadObjectList();
$db->getQuery(true);
$db->setQuery($db->getQuery(true)->select('field_id,field_type')->from("#__jsn_uniform_fields"));
$fieldData = $db->loadObjectList();
$fields = array();
if(is_array($fieldData) && !empty($fieldData)){
foreach ($fieldData as $field)
{
$fields[$field->field_id] = $field->field_type;
}
}
foreach ($dataForms as $item)
{
$tableName = "#__jsn_uniform_submissions_" . (int) $item->form_id;
if (self::checkTableSql($tableName))
{
$db->getQuery(true);
$db->setQuery($db->getQuery(true)->select('*')->from($tableName));
$dataSubmissions = $db->loadObjectList();
if (!empty($dataSubmissions))
{
foreach ($dataSubmissions as $data)
{
foreach ($data as $key => $value)
{
if ($key != "data_id")
{
$fieldId = (int) str_replace("sb_", "", $key);
$tableSubmissionData = JTable::getInstance('JsnSubmissiondata', 'JSNUniformTable');
$tableSubmissionData->bind(array('submission_id' => (int) $data->data_id, 'form_id' => (int) $item->form_id, 'field_id' => (int) $fieldId, 'field_type' => $fields[$fieldId], 'submission_data_value' => $value));
$tableSubmissionData->store();
}
}
}
}
}
}
}
}
/**
* Check table in database
*
* @param string $table Name table
*
* @return boolen
*/
public static function checkTableSql($table)
{
$db = JFactory::getDBO();
$query = $db->getQuery(true);
$prefix = $db->getPrefix();
$table = str_replace("#__", "", $table);
$tableName = $prefix . $table;
$app = JFactory::getApplication();
$dbName = $app->getCfg('db');
$query->select('TABLE_NAME')->from('INFORMATION_SCHEMA.TABLES')->where("TABLE_NAME LIKE " . $db->Quote($tableName) . " AND TABLE_SCHEMA = " . $db->quote($dbName));
$db->setQuery($query);
if (!$db->loadResult())
{
return false;
}
return true;
}
/**
* Set position field
*
* @param int $idForm Id form
*
* @param array $data Data field
*
* @return void
*/
public static function setPositionFields($idForm, $data)
{
$infoData = new stdClass;
$infoData->identifier = $data['fields']['identifier'];
$infoData->field_view = (get_magic_quotes_gpc() == true || get_magic_quotes_runtime() == true) ? stripslashes($data['field_view']) : $data['field_view'];
$db = JFactory::getDBO();
$query = "REPLACE INTO `#__jsn_uniform_config` (name, value) VALUES ('position_form_" . (int) $idForm . "'," . $db->quote(json_encode($infoData)) . ")";
$db->setQuery($query);
if (!$db->execute())
{
JError::raiseWarning(500, $db->getErrorMsg());
}
}
/**
* Get postion fields
*
* @param int $idForm Id Form
*
* @return object
*/
public static function getPositionFields($idForm)
{
$db = JFactory::getDBO();
$query = $db->getQuery(true);
$query->select('value')->from('#__jsn_uniform_config')->where('name = ' . '"position_form_' . (int) $idForm . '"');
$db->setQuery($query);
return $db->loadObject();
}
/**
* get fields by form id
*
* @param int $idForm Id Form
*
* @return mixed
*/
public static function getListFieldByForm($formId)
{
if (!empty($formId) && is_numeric($formId))
{
$db = JFactory::getDBO();
$db->setQuery($db->getQuery(true)->select('*')->from('#__jsn_uniform_fields')->where('form_id=' . intval($formId))->where('field_type!="static-content"')->where('field_type!="google-maps"')->order('field_id DESC'));
return $db->loadObjectList();
}
}
/**
* Get action form submission
*
* @param int $action Action value
*
* @param string $actionData Action data
*
* @return array
*/
public static function actionFrom($action = null, $actionData = null)
{
$redirectToUrl = "";
$menuItem = "";
$menuItemTitle = "";
$article = "";
$articleTitle = "";
$message = "";
if (isset($action))
{
switch($action)
{
case 1:
$redirectToUrl = $actionData;
break;
case 2:
$db = JFactory::getDBO();
$query = $db->getQuery(true);
$query->select('id,title')->from('#__menu')->where('id = ' . (int) $actionData);
$db->setQuery($query);
$dataMenu = $db->loadObject();
if ($dataMenu)
{
$menuItem = $dataMenu->id;
$menuItemTitle = $dataMenu->title;
}
break;
case 3:
$db = JFactory::getDBO();
$query = $db->getQuery(true);
$query->select('id,title')->from('#__content')->where('id = ' . (int) $actionData);
$db->setQuery($query);
$dataContent = $db->loadObject();
if ($dataContent)
{
$article = $dataContent->id;
$articleTitle = $dataContent->title;
}
break;
case 4:
$message = $actionData;
break;
}
}
else
{
$action = 0;
}
return array('redirect_to_url' => $redirectToUrl, 'menu_item' => $menuItem, 'menu_item_title' => $menuItemTitle, 'article' => $article, 'article_title' => $articleTitle, 'message' => $message, 'action' => $action);
}
/**
* get data folder upload in data default config
*
* @param String $name Name field
*
* @return Object
*/
public static function getDataConfig($name)
{
$db = JFactory::getDBO();
$db->setQuery($db->getQuery(true)->select('*')->from("#__jsn_uniform_config")->where("name=" . $db->Quote($name)));
return $db->loadObject();
}
/**
* Get data field
*
* @param string $fieldType Field type
*
* @param object $submission Data submission
*
* @param string $key Key field
*
* @param int $formId Form id
*
* @param boolean $linkImg Link Imgages
*
* @param boolean $checkNull Check validate null
*
* @param string $action Action data
*
* @return html code
*/
public static function getDataField($fieldType, $submission, $key, $formId, $linkImg = false, $checkNull = true, $action = '')
{
switch($fieldType)
{
case "datetime":
$checkdate = @explode(" ", @$submission->$key);
$checkdate = @explode("-", @$checkdate[0]);
if (@$checkdate[0] != '0000' && @$checkdate[1] != '00' && @$checkdate[2] != '00')
{
$dateTime = new DateTime(@$submission->$key);
$contentField = $dateTime->format("j F Y g:i a");
}
break;
case "name":
if (!empty($submission->$key))
{
$jsonName = json_decode($submission->$key);
if ($jsonName)
{
$nameTitle = isset($jsonName->title) ? $jsonName->title . " " : '';
$nameFirst = isset($jsonName->first) ? $jsonName->first . " " : '';
$nameLast = isset($jsonName->last) ? $jsonName->last : '';
$nameSuffix = isset($jsonName->suffix) ? $jsonName->suffix . " " : '';
if (!empty($jsonName->first) || !empty($jsonName->last) || !empty($jsonName->suffix))
{
$contentField = $nameTitle . $nameFirst . $nameSuffix . $nameLast;
}
else
{
$contentField = '';
}
}
else
{
$contentField = $submission->$key;
}
}
break;
case "file-upload":
$jsonFile = json_decode(@$submission->$key);
if (!empty($jsonFile))
{
if (!is_array($jsonFile) && is_object($jsonFile))
{
$tmpArray[] = $jsonFile;
$jsonFile = $tmpArray;
}
$contentField = array();
foreach ($jsonFile as $file)
{
$configFolderUpload = self::getDataConfig("folder_upload");
$url = isset($configFolderUpload->value) ? $configFolderUpload->value : "images/jsnuniform/";
$url = str_replace("//", "/", $url . '/jsnuniform_uploads/' . $formId . '/' . $file->link);
$link = JURI::root() . $url;
$fileName = explode(".", $file->name);
if ($action == "export")
{
$contentField[] = isset($file->name) ? $link : "N/A";
}
elseif ($action == "email")
{
$contentField[] = isset($file->name) ? "<a href=\"{$link}\">{$file->name}</a>" : "N/A";
}
elseif ($action == 'fileAttach')
{
$contentField[] = isset($file->name) ? JPath::clean(JPATH_ROOT . "/" . $url) : "";
}
else
{
if (in_array(strtolower(array_pop($fileName)), array("jpg", "gif", "jpeg", "png")))
{
if ($linkImg)
{
$contentField[] = isset($file->name) ? "<img src=\"{$link}\" />" : "N/A";
}
else
{
$contentField[] = isset($file->name) ? "<a href=\"{$link}\" class=\"thumbnail\" target=\"_blank\"><img src=\"{$link}\" /></a>" : "N/A";
}
}
else
{
if ($action == "list")
{
$contentField[] = isset($file->name) ? $file->name : "N/A";
}
else
{
$contentField[] = isset($file->name) ? "<a href=\"{$link}\">{$file->name}</a>" : "N/A";
}
}
}
}
if (!empty($contentField))
{
if ($action != 'fileAttach')
{
$contentField = implode("\n", $contentField);
}
}
}
break;
case "address":
if (!empty($submission->$key))
{
$jsonAddress = json_decode($submission->$key);
if ($jsonAddress)
{
$nameStreet = !empty($jsonAddress->street) ? $jsonAddress->street . ", " : '';
$nameLine2 = !empty($jsonAddress->line2) ? $jsonAddress->line2 . ", " : '';
$nameCity = !empty($jsonAddress->city) ? $jsonAddress->city . ", " : '';
$nameCode = !empty($jsonAddress->code) ? $jsonAddress->code . " " : '';
$nameState = !empty($jsonAddress->state) ? $jsonAddress->state . " " : '';
$nameCountry = !empty($jsonAddress->country) ? $jsonAddress->country . " " : '';
$contentField = $nameStreet . $nameLine2 . $nameCity . $nameState . $nameCode . $nameCountry;
}
else
{
$contentField = $submission->$key;
}
}
else
{
$contentField = '';
}
break;
case ($fieldType == "likert"):
if (!empty($submission->$key))
{
$jsonName = json_decode($submission->$key);
if (!empty($jsonName->settings))
{
$settings = json_decode($jsonName->settings);
if (!empty($jsonName))
{
$contentField = array();
foreach ($settings->rows as $set)
{
$likertHtml = '';
$likertHtml .= "<strong>" . $set->text . ":</strong>";
$value = 'N/A';
foreach ($jsonName->values as $key => $val)
{
if ($key == md5($set->text) || $key == $set->text)
{
$value = $val;
}
}
$likertHtml .= $value;
$contentField[] = $likertHtml;
}
$contentField = implode("<br/>", $contentField);
}
}
else
{
$contentField = '';
}
}
else
{
$contentField = '';
}
break;
case ($fieldType == "checkboxes" || $fieldType == "list"):
if (!empty($submission->$key))
{
$jsonName = json_decode($submission->$key);
if ($action == "email")
{
if (!empty($jsonName) && is_array($jsonName))
{
$listCheckBox = '';
foreach ($jsonName as $item)
{
$listCheckBox .= '<li style="padding:0;">' . $item . '</li>';
}
if ($listCheckBox)
{
$contentField = "<ul style=\"padding:0 0px 0px 10px;margin:0;\">{$listCheckBox}</ul>";
}
else
{
$contentField = '';
}
}
}
else
{
if (empty($jsonName))
{
$jsonName = explode("\n", $submission->$key);
$contentField = implode("<br/>", $jsonName);
}
elseif (!empty($jsonName) && is_array($jsonName))
{
$contentField = implode("<br/>", $jsonName);
}
else
{
$contentField = $submission->$key;
}
}
}
else
{
$contentField = '';
}
break;
default:
if ($checkNull)
{
$contentField = isset($submission->$key) ? $submission->$key : "<span>N/A</span>";
}
else
{
$contentField = isset($submission->$key) ? $submission->$key : "";
}
break;
}
return isset($contentField) ? $contentField : "";
}
/**
* Get select Form
*
* @param string $name Name form
*
* @param int $id Id form
*
* @param boolean $btn Button
*
* @param string $value Value form
*
* @param boolean $checkVersion Check version joomla
*
* @return html code
*/
public static function getSelectForm($name, $id = null, $view = "", $value = null, $checkVersion = false)
{
$enabledCSS = 'hide';
$menuid = JRequest::getInt('id');
$formID = $value;
$db = JFactory::getDBO();
$query = $db->getQuery(true);
//build the list of categories
$query->select('uf.form_title AS text, uf.form_id AS id')->from('#__jsn_uniform_forms AS uf')->where('uf.form_state = 1');
$db->setQuery($query);
$data = $db->loadObjectList();
$results[] = JHTML::_('select.option', '0', '- ' . JText::_('JSN_UNIFORM_SELECT_FORM') . ' -', 'id', 'text');
$results = array_merge($results, $data);
JSNUniformHelper::addAssets($checkVersion);
JSNHtmlAsset::addStyle(JURI::base(true) . '/components/com_uniform/assets/css/uniform.css');
$arrayTranslated = array('JSN_UNIFORM_UPGRADE_EDITION_TITLE', 'JSN_UNIFORM_YOU_HAVE_REACHED_THE_LIMITATION_OF_3_FORM_IN_FREE_EDITION_0', 'JSN_UNIFORM_UPGRADE_EDITION');
$edition = defined('JSN_UNIFORM_EDITION') ? JSN_UNIFORM_EDITION : "free";
$baseUrl = JURI::base(true);
JSNHtmlAsset::addScriptPath('uniform', $baseUrl . '/components/com_uniform/assets/js');
JSNHtmlAsset::addScriptPath('uniform/3rd', $baseUrl . '/components/com_uniform/assets/3rd-party');
if ($data)
{
$enabledCSS = '';
if (!$menuid && !$formID)
{
$value = $data[0]->id;
}
}
if ($view == "content")
{
$listForm = JHTML::_('select.genericList', $results, $name, 'title="' . ((!$data) ? JText::_('JSN_UNIFORM_DO_NOT_HAVE_ANY_FORM') : '') . '" class="jform_request_form_id"', 'id', 'text');
$html = '<div class="jsn-uniform-plg-editor-container jsn-bootstrap">
<div class="jsn-uniform-plg-editor-wrapper">
<h3 class="jsn-section-header">' . JText::_('JSN_UNIFORM_MODULE_LIST_FORM_DES') . '</h3>
<div class="setting">
<ul>
<li>
<label style="float:left;">' . JText::_('JSN_UNIFORM_MODULE_LIST_FORM') . '</label>
' . $listForm . '
<a id="form-icon-edit" action="article" href="javascript: void(0);" target="_blank" title="' . JText::_('JSN_UNIFORM_EDIT_SELECTED_FORM') . '"><span class="jsn-icon16 jsn-icon-pencil"></span></a>
<a id="form-icon-add" action="article" href="javascript: void(0);" title="' . JText::_('JSN_UNIFORM_CREATE_NEW_FORM') . '"><span class="jsn-icon16 jsn-icon-plus"></span></a>
</li>
</ul>
</div>
<div class="insert">
<div class="form-actions">
<button disabled="disabled" id="select-forms" onclick="" name="button_installation_data" type="button" class="btn">' . JText::_('JSN_UNIFORM_BTN_SELECTED') . '</button>
</div>
</div>
</div>
</div>';
$html .= JSNHtmlAsset::loadScript('uniform/menuform', array('edition' => $edition, 'language' => JSNUtilsLanguage::getTranslated($arrayTranslated)), true);
return $html;
}
else if ($view == "contentfrontend")
{
$listForm = JHTML::_('select.genericList', $results, $name, 'title="' . ((!$data) ? JText::_('JSN_UNIFORM_DO_NOT_HAVE_ANY_FORM') : '') . '" class="jform_request_form_id"', 'id', 'text');
$html = '<div class="jsn-uniform-plg-editor-container jsn-bootstrap jsn-master">
<div class="jsn-uniform-plg-editor-wrapper">
<h3 class="jsn-section-header">' . JText::_('JSN_UNIFORM_MODULE_LIST_FORM_DES') . '</h3>
<div class="setting">
<ul>
<li>
<label style="float:left;">' . JText::_('JSN_UNIFORM_MODULE_LIST_FORM') . '</label>
' . $listForm . '
</li>
</ul>
</div>
<div class="insert">
<div class="form-actions">
<button disabled="disabled" id="select-forms" onclick="" name="button_installation_data" type="button" class="btn">' . JText::_('JSN_UNIFORM_BTN_SELECTED') . '</button>
</div>
</div>
</div>
</div>';
return $html;
}
else if ($view == "menuform")
{
// Fix JS conflict with com_advancedmodules pro
$app = JFactory::getApplication();
$input = $app->input;
$option = $input->getCmd('option', '');
$view = $input->getCmd('view', '');
$doc = JFactory::getDocument();
if ($option == 'com_advancedmodules' && $view == 'module')
{
if (file_exists(JPATH_ROOT . '/media/jui/js/jquery.simplecolors.min.js'))
{
$doc->addScript(JUri::root(true) . '/media/jui/js/jquery.simplecolors.min.js');
}
}
$curEditor = JFactory::getUser()->getParam('editor');
if ($curEditor == null)
{
$config = JFactory::getConfig();
$curEditor = $config->get('editor');
}
if ($curEditor === 'codemirror')
{
$doc->addScript(JUri::root(true) . '/media/jui/js/jquery.min.js');
}
else
{
// Fix JS conflict with joomla 3.6.4
$app = JFactory::getApplication();
$input = $app->input;
$option = $input->getCmd('option', '');
$view = $input->getCmd('view', '');
if (($option == 'com_advancedmodules' || $option == 'com_modules') && $view == 'module')
{
if (file_exists(JPATH_ROOT . '/media/system/js/moduleorder.js'))
{
JSNHtmlAsset::addScript(JUri::root(true) . '/media/system/js/moduleorder.js');
}
}
JSNHtmlAsset::addScript(JUri::root(true) . '/media/jui/js/jquery.min.js');
}
$listForm = JHTML::_('select.genericList', $results, $name, 'title="' . ((!$data) ? JText::_('JSN_UNIFORM_DO_NOT_HAVE_ANY_FORM') : '') . '" class="jform_request_form_id"', 'id', 'text', $value, $id);
$html = "<div id='jsn-form-icon-warning'>";
$html .= $listForm;
$html .= "<span id =\"form-icon-warning\" class='{$enabledCSS}' title=\"" . JText::_('JSN_UNIFORM_FIELD_DES_FORM_WARNING') . "\"><span class=\"jsn-icon16 jsn-icon-warning-sign\"></span></span>";
$html .= "<a id=\"form-icon-edit\" href=\"javascript: void(0);\" target=\"_blank\" title=\"" . JText::_('JSN_UNIFORM_EDIT_SELECTED_FORM') . "\"><span class=\"jsn-icon16 jsn-icon-pencil\"></span></a>";
$html .= "<a id=\"form-icon-add\" href=\"javascript: void(0);\" title=\"" . JText::_('JSN_UNIFORM_CREATE_NEW_FORM') . "\"><span class=\"jsn-icon16 jsn-icon-plus\"></span></a>";
$html .= "<span id='select-forms'></span>";
}
else if ($view == "menusubmissions")
{
$listForm = JHTML::_('select.genericList', $results, $name, 'title="' . ((!$data) ? JText::_('JSN_UNIFORM_DO_NOT_HAVE_ANY_FORM') : '') . '" class="jform_request_form_id"', 'id', 'text', $value);
$html = "<div id='jsn-form-icon-warning'>";
$html .= $listForm;
$html .= "<span id =\"form-icon-warning\" class='{$enabledCSS}' title=\"" . JText::_('JSN_UNIFORM_FIELD_DES_FORM_WARNING') . "\"><span class=\"jsn-icon16 jsn-icon-warning-sign\"></span></span>";
$html .= "</div>";
//JSNHtmlAsset::loadScript('uniform/menusubmissions', array('language' => JSNUtilsLanguage::getTranslated($arrayTranslated)));
return $html;
}
$html .= "</div><div id=\"jsn-modal\"></div>" . JSNHtmlAsset::loadScript('uniform/menuform', array('edition' => $edition, 'language' => JSNUtilsLanguage::getTranslated($arrayTranslated)), true);
return $html;
}
/**
* Get list page form
*
* @param string $formContent Form content
*
* @return html code
*/
public static function getListPage($formContent, $formId = 0)
{
$session = JFactory::getSession();
$input = JFactory::getApplication()->input;
$getData = $input->getArray($_GET);
$listPage = $session->get('form_list_page', '', 'form-design-' . $formId);
$edition = defined('JSN_UNIFORM_EDITION') ? JSN_UNIFORM_EDITION : "free";
$option = "";
$defaultListpage = "";
$dataValue = "";
$pageContent = array();
if (isset($formContent))
{
foreach ($formContent as $i => $fContent)
{
$session->set('form_page_' . $fContent->page_id, $fContent->page_content, 'form-design-' . $formId);
if (!empty($fContent->page_container) && count(json_decode($fContent->page_container)))
{
$session->set('form_container_page_' . $fContent->page_id, $fContent->page_container, 'form-design-' . $formId);
}
else
{
$session->set('form_container_page_' . $fContent->page_id, '[[{"columnName":"left","columnClass":"span12"}]]', 'form-design-' . $formId);
}
if (count(json_decode($fContent->page_content)))
{
$pageContent[] = $fContent->page_id;
}
if ($i == 0)
{
$defaultListpage .= "<div data-value='{$fContent->page_id}' id=\"form-design-header\" class=\"jsn-section-header\"><div class=\"jsn-iconbar-trigger page-title\"><h1>{$fContent->page_title}</h1><div class=\"jsn-iconbar\"><a href=\"javascript:void(0)\" title=\"Edit page\" class=\"element-edit\"><i class=\"icon-pencil\"></i></a><a href=\"javascript:void(0)\" title=\"Delete page\" class=\"element-delete\"><i class=\"icon-trash\"></i></a></div></div><div class=\"jsn-page-actions jsn-buttonbar\"><div class=\"jsn-page-pagination pull-left btn-group\"><button onclick=\"return false;\" class=\"btn btn-icon prev-page\"><i class=\"icon-arrow-left\"></i></button><button onclick=\"return false;\" class=\"btn btn-icon next-page\"><i class=\"icon-arrow-right\"></i></button></div><button onclick=\"return false;\" class=\"btn btn-success new-page\">" . JText::_("JSN_UNIFORM_FORM_NEW_PAGE") . "</button></div><div class=\"clearbreak\"></div>";
$dataValue = $fContent->page_id;
}
$option .= "<li id=\"{$fContent->page_id}\" data-value='{$fContent->page_id}' class=\"page-items\"><input type=\"hidden\" value=\"{$fContent->page_title}\" data-id=\"{$fContent->page_id}\" name=\"name_page[{$fContent->page_id}]\"/></li>";
}
if (count($pageContent))
{
$session->set('page_content', json_encode($pageContent), 'form-design-' . $formId);
}
}
elseif ($listPage)
{
$listPages = json_decode($listPage);
foreach ($listPages as $i => $page)
{
if ($i == 0)
{
$defaultListpage .= "<div data-value='{$page[0]}' id=\"form-design-header\" class=\"jsn-section-header\"><div class=\"jsn-iconbar-trigger page-title\"><h1>{$page[1]}</h1><div class=\"jsn-iconbar\"><a href=\"javascript:void(0)\" title=\"Edit page\" class=\"element-edit\"><i class=\"icon-pencil\" ></i></a><a href=\"javascript:void(0)\" title=\"Delete page\" class=\"element-delete\"><i class=\"icon-trash\" ></i></a></div></div><div class=\"jsn-page-actions jsn-buttonbar\"><div class=\"jsn-page-pagination pull-left btn-group\"><button onclick=\"return false;\" class=\"btn btn-icon prev-page\"><i class=\"icon-arrow-left\"></i></button><button onclick=\"return false;\" class=\"btn btn-icon next-page\"><i class=\"icon-arrow-right\"></i></button></div><button onclick=\"return false;\" class=\"btn btn-success new-page\">" . JText::_("JSN_UNIFORM_FORM_NEW_PAGE") . "</button></div><div class=\"clearbreak\"></div>";
$dataValue = $page[0];
}
$option .= "<li id=\"{$page[0]}\" data-value='{$page[0]}' class=\"page-items\"><input type=\"hidden\" value=\"{$page[1]}\" data-id=\"{$page[0]}\" name=\"name_page[{$page[0]}]\"/></li>";
}
}
else
{
$randomID = rand(1000000, 1000000000);
$defaultListpage = "<div data-value='{$randomID}' id=\"form-design-header\" class=\"jsn-section-header\"><div class=\"jsn-iconbar-trigger page-title\"><h1>Page 1</h1><div class=\"jsn-iconbar\"><a href=\"javascript:void(0)\" title=\"Edit page\" class=\"element-edit\"><i class=\"icon-pencil\"></i></a><a href=\"javascript:void(0)\" title=\"Delete page\" class=\"element-delete\"><i class=\"icon-trash\" ></i></a></div></div><div class=\"jsn-page-actions jsn-buttonbar\"><div class=\"jsn-page-pagination pull-left btn-group\"><button onclick=\"return false;\" class=\"btn btn-icon prev-page\"><i class=\"icon-arrow-left\"></i></button><button onclick=\"return false;\" class=\"btn btn-icon next-page\"><i class=\"icon-arrow-right\"></i></button></div><button onclick=\"return false;\" class=\"btn btn-success new-page\">" . JText::_("JSN_UNIFORM_FORM_NEW_PAGE") . "</button></div><div class=\"clearbreak\"></div>";
$dataValue = $randomID;
$option = '<li id="new_' . $randomID . '" data-value="' . $randomID . '" class="page-items"><input type="hidden" value="Page 1" data-id="' . $randomID . '" name="name_page[' . $randomID . ']"/></li>';
if (!empty($getData['form']))
{
$getSampleForm = JSNUniformHelper::getSampleForm($getData['form']);
$session->set('form_page_' . $randomID, $getSampleForm, 'form-design-' . $formId);
$sessionPage = JFactory::getSession();
$sessionPage->set('form_list_page', json_encode(array($randomID, 'Page 1')), 'form-design-' . $formId);
$session->set('form_container_page_' . $randomID, '[[{"columnName":"left","columnClass":"span12"}]]', 'form-design-' . $formId);
}
}
if (strtolower($edition) == "free")
{
$defaultListpage = "<div class=\"hide\" id=\"form-design-header\" data-value=\"{$dataValue}\">";
}
$select = "{$defaultListpage} <ul class=\"jsn-page-list hide\">{$option}</ul></div>";
return $select;
}
/**
* Get Sample Form
*
* @param string $formType Form Type
*
* @return html code
*/
public static function getSampleForm($formType)
{
$return = "";
switch($formType)
{
case 'Contact Us':
$return = '[{"type":"name","position":"left","identify":"name","label":"Name","instruction":"","options":{"label":"Name","instruction":"","required":"1","format":"Extended","items":[{"text":"Mrs","checked":false},{"text":"Mr","checked":true},{"text":"Ms","checked":false},{"text":"Baby","checked":false},{"text":"Master","checked":false},{"text":"Prof","checked":false},{"text":"Dr","checked":false},{"text":"Gen","checked":false},{"text":"Rep","checked":false},{"text":"Sen","checked":false},{"text":"St","checked":false}],"vtitle":"1","vfirst":"1","vmiddle":"1","vlast":"1","identify":"name","identify":"jsn_tmp_721799"}},{"type":"paragraph-text","position":"left","identify":"when_is_the_best_time_to_contact_you_","label":"When is the best time to contact you?","instruction":"","options":{"label":"When is the best time to contact you?","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"rows":"8","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"jsn_tmp_477590"}},{"type":"paragraph-text","position":"left","identify":"what_is_the_best_way_to_contact_you_","label":"What is the best way to contact you?","instruction":"","options":{"label":"What is the best way to contact you?","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"rows":"8","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"jsn_tmp_448875"}},{"type":"email","position":"left","identify":"email","label":"Email","instruction":"","options":{"label":"Email","instruction":"","required":"1","noDuplicates":0,"size":"jsn-input-medium-fluid","value":"","identify":"jsn_tmp_181757"}},{"type":"address","position":"left","identify":"address","label":"Address","instruction":"","options":{"label":"Address","instruction":"","vstreetAddress":"1","vstreetAddress2":"1","vcity":"1","vcode":"1","vstate":"1","vcountry":"1","required":"1","country":[{"text":"Afghanistan","checked":true},{"text":"Albania","checked":false},{"text":"Algeria","checked":false},{"text":"Andorra","checked":false},{"text":"Angola","checked":false},{"text":"Antigua and Barbuda","checked":false},{"text":"Argentina","checked":false},{"text":"Armenia","checked":false},{"text":"Australia","checked":false},{"text":"Austria","checked":false},{"text":"Azerbaijan","checked":false},{"text":"Bahamas","checked":false},{"text":"Bahrain","checked":false},{"text":"Bangladesh","checked":false},{"text":"Barbados","checked":false},{"text":"Belarus","checked":false},{"text":"Belgium","checked":false},{"text":"Belize","checked":false},{"text":"Benin","checked":false},{"text":"Bhutan","checked":false},{"text":"Bolivia","checked":false},{"text":"Bosnia and Herzegovina","checked":false},{"text":"Botswana","checked":false},{"text":"Brazil","checked":false},{"text":"Brunei","checked":false},{"text":"Bulgaria","checked":false},{"text":"Burkina Faso","checked":false},{"text":"Burundi","checked":false},{"text":"Cambodia","checked":false},{"text":"Cameroon","checked":false},{"text":"Canada","checked":false},{"text":"Cape Verde","checked":false},{"text":"Central African Republic","checked":false},{"text":"Chad","checked":false},{"text":"Chile","checked":false},{"text":"China","checked":false},{"text":"Colombi","checked":false},{"text":"Comoros","checked":false},{"text":"Congo (Brazzaville)","checked":false},{"text":"Congo","checked":false},{"text":"Costa Rica","checked":false},{"text":"Cote d\'Ivoire","checked":false},{"text":"Croatia","checked":false},{"text":"Cuba","checked":false},{"text":"Cyprus","checked":false},{"text":"Czech Republic","checked":false},{"text":"Denmark","checked":false},{"text":"Djibouti","checked":false},{"text":"Dominica","checked":false},{"text":"Dominican Republic","checked":false},{"text":"East Timor (Timor Timur)","checked":false},{"text":"Ecuador","checked":false},{"text":"Egypt","checked":false},{"text":"El Salvador","checked":false},{"text":"Equatorial Guinea","checked":false},{"text":"Eritrea","checked":false},{"text":"Estonia","checked":false},{"text":"Ethiopia","checked":false},{"text":"Fiji","checked":false},{"text":"Finland","checked":false},{"text":"France","checked":false},{"text":"Gabon","checked":false},{"text":"Gambia, The","checked":false},{"text":"Georgia","checked":false},{"text":"Germany","checked":false},{"text":"Ghana","checked":false},{"text":"Greece","checked":false},{"text":"Grenada","checked":false},{"text":"Guatemala","checked":false},{"text":"Guinea","checked":false},{"text":"Guinea-Bissau","checked":false},{"text":"Guyana","checked":false},{"text":"Haiti","checked":false},{"text":"Honduras","checked":false},{"text":"Hungary","checked":false},{"text":"Iceland","checked":false},{"text":"India","checked":false},{"text":"Indonesia","checked":false},{"text":"Iran","checked":false},{"text":"Iraq","checked":false},{"text":"Ireland","checked":false},{"text":"Israel","checked":false},{"text":"Italy","checked":false},{"text":"Jamaica","checked":false},{"text":"Japan","checked":false},{"text":"Jordan","checked":false},{"text":"Kazakhstan","checked":false},{"text":"Kenya","checked":false},{"text":"Kiribati","checked":false},{"text":"Korea, North","checked":false},{"text":"Korea, South","checked":false},{"text":"Kuwait","checked":false},{"text":"Kyrgyzstan","checked":false},{"text":"Laos","checked":false},{"text":"Latvia","checked":false},{"text":"Lebanon","checked":false},{"text":"Lesotho","checked":false},{"text":"Liberia","checked":false},{"text":"Libya","checked":false},{"text":"Liechtenstein","checked":false},{"text":"Lithuania","checked":false},{"text":"Luxembourg","checked":false},{"text":"Macedonia","checked":false},{"text":"Madagascar","checked":false},{"text":"Malawi","checked":false},{"text":"Malaysia","checked":false},{"text":"Maldives","checked":false},{"text":"Mali","checked":false},{"text":"Malta","checked":false},{"text":"Marshall Islands","checked":false},{"text":"Mauritania","checked":false},{"text":"Mauritius","checked":false},{"text":"Mexico","checked":false},{"text":"Micronesia","checked":false},{"text":"Moldova","checked":false},{"text":"Monaco","checked":false},{"text":"Mongolia","checked":false},{"text":"Morocco","checked":false},{"text":"Mozambique","checked":false},{"text":"Myanmar","checked":false},{"text":"Namibia","checked":false},{"text":"Nauru","checked":false},{"text":"Nepa","checked":false},{"text":"Netherlands","checked":false},{"text":"New Zealand","checked":false},{"text":"Nicaragua","checked":false},{"text":"Niger","checked":false},{"text":"Nigeria","checked":false},{"text":"Norway","checked":false},{"text":"Oman","checked":false},{"text":"Pakistan","checked":false},{"text":"Palau","checked":false},{"text":"Panama","checked":false},{"text":"Papua New Guinea","checked":false},{"text":"Paraguay","checked":false},{"text":"Peru","checked":false},{"text":"Philippines","checked":false},{"text":"Poland","checked":false},{"text":"Portugal","checked":false},{"text":"Qatar","checked":false},{"text":"Romania","checked":false},{"text":"Russia","checked":false},{"text":"Rwanda","checked":false},{"text":"Saint Kitts and Nevis","checked":false},{"text":"Saint Lucia","checked":false},{"text":"Saint Vincent","checked":false},{"text":"Samoa","checked":false},{"text":"San Marino","checked":false},{"text":"Sao Tome and Principe","checked":false},{"text":"Saudi Arabia","checked":false},{"text":"Senegal","checked":false},{"text":"Serbia and Montenegro","checked":false},{"text":"Seychelles","checked":false},{"text":"Sierra Leone","checked":false},{"text":"Singapore","checked":false},{"text":"Slovakia","checked":false},{"text":"Slovenia","checked":false},{"text":"Solomon Islands","checked":false},{"text":"Somalia","checked":false},{"text":"South Africa","checked":false},{"text":"Spain","checked":false},{"text":"Sri Lanka","checked":false},{"text":"Sudan","checked":false},{"text":"Suriname","checked":false},{"text":"Swaziland","checked":false},{"text":"Sweden","checked":false},{"text":"Switzerland","checked":false},{"text":"Syria","checked":false},{"text":"Taiwan","checked":false},{"text":"Tajikistan","checked":false},{"text":"Tanzania","checked":false},{"text":"Thailand","checked":false},{"text":"Togo","checked":false},{"text":"Tonga","checked":false},{"text":"Trinidad and Tobago","checked":false},{"text":"Tunisia","checked":false},{"text":"Turkey","checked":false},{"text":"Turkmenistan","checked":false},{"text":"Tuvalu","checked":false},{"text":"Uganda","checked":false},{"text":"Ukraine","checked":false},{"text":"United Arab Emirates","checked":false},{"text":"United Kingdom","checked":false},{"text":"United States","checked":false},{"text":"Uruguay","checked":false},{"text":"Uzbekistan","checked":false},{"text":"Vanuatu","checked":false},{"text":"Vatican City","checked":false},{"text":"Venezuela","checked":false},{"text":"Vietnam","checked":false},{"text":"Yemen","checked":false},{"text":"Zambia","checked":false},{"text":"Zimbabwe","checked":false}],"identify":"jsn_tmp_746859"}},{"type":"website","position":"left","identify":"website","label":"Website","instruction":"","options":{"label":"Website","instruction":"","required":0,"noDuplicates":0,"size":"jsn-input-medium-fluid","value":"http:\/\/","identify":"jsn_tmp_269016"}},{"type":"single-line-text","position":"left","identify":"company","label":"Company","instruction":"","options":{"label":"Company","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"limitType":"Words","size":"jsn-input-medium-fluid","value":"","identify":"jsn_tmp_383883"}},{"type":"single-line-text","position":"left","identify":"message_subject","label":"Message Subject","instruction":"","options":{"label":"Message Subject","instruction":"","required":"1","limitation":0,"limitMin":0,"limitMax":0,"limitType":"Words","size":"jsn-input-medium-fluid","value":"","identify":"jsn_tmp_938869"}},{"type":"paragraph-text","position":"left","identify":"message","label":"Message","instruction":"","options":{"label":"Message","instruction":"","required":"1","limitation":0,"limitMin":0,"limitMax":0,"rows":"8","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"jsn_tmp_15779"}},{"type":"file-upload","position":"left","identify":"attached_file","label":"Attached File","instruction":"","options":{"label":"Attached File","instruction":"","required":0,"allowedExtensions":"png,jpg,gif,zip,rar,txt,doc,pdf","maxSize":0,"maxSizeUnit":"KB","identify":"jsn_tmp_851365"}}]';
break;
case 'Customer Feedback':
$return = '[{"type":"name","position":"left","identify":"name","label":"Name","instruction":"","options":{"label":"Name","instruction":"","required":"1","format":"Normal","items":[{"text":"Mrs","checked":false},{"text":"Mr","checked":true},{"text":"Ms","checked":false},{"text":"Baby","checked":false},{"text":"Master","checked":false},{"text":"Prof","checked":false},{"text":"Dr","checked":false},{"text":"Gen","checked":false},{"text":"Rep","checked":false},{"text":"Sen","checked":false},{"text":"St","checked":false}],"size":"jsn-input-small-fluid","vtitle":"","vfirst":"1","vmiddle":"","vlast":"1","identify":"jsn_tmp_859991"}},{"type":"email","position":"left","identify":"email","label":"Email","instruction":"","options":{"label":"Email","instruction":"","required":"1","noDuplicates":0,"size":"jsn-input-medium-fluid","value":"","identify":"jsn_tmp_600109"}},{"type":"address","position":"left","identify":"address","label":"Address","instruction":"","options":{"label":"Address","instruction":"","vstreetAddress":"1","vstreetAddress2":"1","vcity":"1","vcode":"1","vstate":"1","vcountry":"1","required":0,"country":[{"text":"Afghanistan","checked":true},{"text":"Albania","checked":false},{"text":"Algeria","checked":false},{"text":"Andorra","checked":false},{"text":"Angola","checked":false},{"text":"Antigua and Barbuda","checked":false},{"text":"Argentina","checked":false},{"text":"Armenia","checked":false},{"text":"Australia","checked":false},{"text":"Austria","checked":false},{"text":"Azerbaijan","checked":false},{"text":"Bahamas","checked":false},{"text":"Bahrain","checked":false},{"text":"Bangladesh","checked":false},{"text":"Barbados","checked":false},{"text":"Belarus","checked":false},{"text":"Belgium","checked":false},{"text":"Belize","checked":false},{"text":"Benin","checked":false},{"text":"Bhutan","checked":false},{"text":"Bolivia","checked":false},{"text":"Bosnia and Herzegovina","checked":false},{"text":"Botswana","checked":false},{"text":"Brazil","checked":false},{"text":"Brunei","checked":false},{"text":"Bulgaria","checked":false},{"text":"Burkina Faso","checked":false},{"text":"Burundi","checked":false},{"text":"Cambodia","checked":false},{"text":"Cameroon","checked":false},{"text":"Canada","checked":false},{"text":"Cape Verde","checked":false},{"text":"Central African Republic","checked":false},{"text":"Chad","checked":false},{"text":"Chile","checked":false},{"text":"China","checked":false},{"text":"Colombi","checked":false},{"text":"Comoros","checked":false},{"text":"Congo (Brazzaville)","checked":false},{"text":"Congo","checked":false},{"text":"Costa Rica","checked":false},{"text":"Cote d\'Ivoire","checked":false},{"text":"Croatia","checked":false},{"text":"Cuba","checked":false},{"text":"Cyprus","checked":false},{"text":"Czech Republic","checked":false},{"text":"Denmark","checked":false},{"text":"Djibouti","checked":false},{"text":"Dominica","checked":false},{"text":"Dominican Republic","checked":false},{"text":"East Timor (Timor Timur)","checked":false},{"text":"Ecuador","checked":false},{"text":"Egypt","checked":false},{"text":"El Salvador","checked":false},{"text":"Equatorial Guinea","checked":false},{"text":"Eritrea","checked":false},{"text":"Estonia","checked":false},{"text":"Ethiopia","checked":false},{"text":"Fiji","checked":false},{"text":"Finland","checked":false},{"text":"France","checked":false},{"text":"Gabon","checked":false},{"text":"Gambia, The","checked":false},{"text":"Georgia","checked":false},{"text":"Germany","checked":false},{"text":"Ghana","checked":false},{"text":"Greece","checked":false},{"text":"Grenada","checked":false},{"text":"Guatemala","checked":false},{"text":"Guinea","checked":false},{"text":"Guinea-Bissau","checked":false},{"text":"Guyana","checked":false},{"text":"Haiti","checked":false},{"text":"Honduras","checked":false},{"text":"Hungary","checked":false},{"text":"Iceland","checked":false},{"text":"India","checked":false},{"text":"Indonesia","checked":false},{"text":"Iran","checked":false},{"text":"Iraq","checked":false},{"text":"Ireland","checked":false},{"text":"Israel","checked":false},{"text":"Italy","checked":false},{"text":"Jamaica","checked":false},{"text":"Japan","checked":false},{"text":"Jordan","checked":false},{"text":"Kazakhstan","checked":false},{"text":"Kenya","checked":false},{"text":"Kiribati","checked":false},{"text":"Korea, North","checked":false},{"text":"Korea, South","checked":false},{"text":"Kuwait","checked":false},{"text":"Kyrgyzstan","checked":false},{"text":"Laos","checked":false},{"text":"Latvia","checked":false},{"text":"Lebanon","checked":false},{"text":"Lesotho","checked":false},{"text":"Liberia","checked":false},{"text":"Libya","checked":false},{"text":"Liechtenstein","checked":false},{"text":"Lithuania","checked":false},{"text":"Luxembourg","checked":false},{"text":"Macedonia","checked":false},{"text":"Madagascar","checked":false},{"text":"Malawi","checked":false},{"text":"Malaysia","checked":false},{"text":"Maldives","checked":false},{"text":"Mali","checked":false},{"text":"Malta","checked":false},{"text":"Marshall Islands","checked":false},{"text":"Mauritania","checked":false},{"text":"Mauritius","checked":false},{"text":"Mexico","checked":false},{"text":"Micronesia","checked":false},{"text":"Moldova","checked":false},{"text":"Monaco","checked":false},{"text":"Mongolia","checked":false},{"text":"Morocco","checked":false},{"text":"Mozambique","checked":false},{"text":"Myanmar","checked":false},{"text":"Namibia","checked":false},{"text":"Nauru","checked":false},{"text":"Nepa","checked":false},{"text":"Netherlands","checked":false},{"text":"New Zealand","checked":false},{"text":"Nicaragua","checked":false},{"text":"Niger","checked":false},{"text":"Nigeria","checked":false},{"text":"Norway","checked":false},{"text":"Oman","checked":false},{"text":"Pakistan","checked":false},{"text":"Palau","checked":false},{"text":"Panama","checked":false},{"text":"Papua New Guinea","checked":false},{"text":"Paraguay","checked":false},{"text":"Peru","checked":false},{"text":"Philippines","checked":false},{"text":"Poland","checked":false},{"text":"Portugal","checked":false},{"text":"Qatar","checked":false},{"text":"Romania","checked":false},{"text":"Russia","checked":false},{"text":"Rwanda","checked":false},{"text":"Saint Kitts and Nevis","checked":false},{"text":"Saint Lucia","checked":false},{"text":"Saint Vincent","checked":false},{"text":"Samoa","checked":false},{"text":"San Marino","checked":false},{"text":"Sao Tome and Principe","checked":false},{"text":"Saudi Arabia","checked":false},{"text":"Senegal","checked":false},{"text":"Serbia and Montenegro","checked":false},{"text":"Seychelles","checked":false},{"text":"Sierra Leone","checked":false},{"text":"Singapore","checked":false},{"text":"Slovakia","checked":false},{"text":"Slovenia","checked":false},{"text":"Solomon Islands","checked":false},{"text":"Somalia","checked":false},{"text":"South Africa","checked":false},{"text":"Spain","checked":false},{"text":"Sri Lanka","checked":false},{"text":"Sudan","checked":false},{"text":"Suriname","checked":false},{"text":"Swaziland","checked":false},{"text":"Sweden","checked":false},{"text":"Switzerland","checked":false},{"text":"Syria","checked":false},{"text":"Taiwan","checked":false},{"text":"Tajikistan","checked":false},{"text":"Tanzania","checked":false},{"text":"Thailand","checked":false},{"text":"Togo","checked":false},{"text":"Tonga","checked":false},{"text":"Trinidad and Tobago","checked":false},{"text":"Tunisia","checked":false},{"text":"Turkey","checked":false},{"text":"Turkmenistan","checked":false},{"text":"Tuvalu","checked":false},{"text":"Uganda","checked":false},{"text":"Ukraine","checked":false},{"text":"United Arab Emirates","checked":false},{"text":"United Kingdom","checked":false},{"text":"United States","checked":false},{"text":"Uruguay","checked":false},{"text":"Uzbekistan","checked":false},{"text":"Vanuatu","checked":false},{"text":"Vatican City","checked":false},{"text":"Venezuela","checked":false},{"text":"Vietnam","checked":false},{"text":"Yemen","checked":false},{"text":"Zambia","checked":false},{"text":"Zimbabwe","checked":false}],"identify":"jsn_tmp_319579"}},{"type":"single-line-text","position":"left","identify":"company","label":"Company","instruction":"","options":{"label":"Company","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"limitType":"Words","size":"jsn-input-medium-fluid","value":"","identify":"jsn_tmp_437796"}},{"type":"choices","position":"left","identify":"how_would_you_rate_our_customer_support_","label":"How would you rate our customer support?","instruction":"","options":{"label":"How would you rate our customer support?","instruction":"","required":0,"randomize":0,"layout":"jsn-columns-count-one","items":[{"text":"Excellent","checked":false},{"text":"Good","checked":false},{"text":"Fair","checked":false},{"text":"Poor","checked":false},{"text":"Terrible","checked":false}],"value":"","identify":"jsn_tmp_226978"}},{"type":"paragraph-text","position":"left","identify":"feedback","label":"Feedback","instruction":"","options":{"label":"Feedback","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"rows":"8","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"jsn_tmp_750906"}}]';
break;
case 'Job Application':
$return = '[{"type":"name","position":"left","identify":"name","label":"Name","instruction":"","options":{"label":"Name","instruction":"","required":"1","format":"Extended","items":[{"text":"Mrs","checked":false},{"text":"Mr","checked":true},{"text":"Ms","checked":false},{"text":"Baby","checked":false},{"text":"Master","checked":false},{"text":"Prof","checked":false},{"text":"Dr","checked":false},{"text":"Gen","checked":false},{"text":"Rep","checked":false},{"text":"Sen","checked":false},{"text":"St","checked":false}],"vtitle":"1","vfirst":"1","vmiddle":"1","vlast":"1","identify":"jsn_tmp_484544"}},{"type":"choices","position":"left","identify":"gender","label":"Gender","instruction":"","options":{"label":"Gender","instruction":"","required":"1","randomize":0,"layout":"jsn-columns-count-no","items":[{"text":"Male","checked":false},{"text":"Female","checked":false}],"value":"","identify":"jsn_tmp_709858"}},{"type":"date","position":"left","identify":"date_of_birth","label":"Date of Birth","instruction":"","options":{"label":"Date of Birth","instruction":"","required":"1","enableRageSelection":0,"size":"jsn-input-small-fluid","timeFormat":0,"dateFormat":"1","identify":"jsn_tmp_480445","dateValue":"","dateValueRange":"","dateOptionFormat":"mm\/dd\/yy","timeOptionFormat":"hh:mm tt"}},{"type":"email","position":"left","identify":"email","label":"Email","instruction":"","options":{"label":"Email","instruction":"","required":"1","noDuplicates":0,"size":"jsn-input-medium-fluid","value":"","identify":"jsn_tmp_351177"}},{"type":"phone","position":"left","identify":"phone","label":"Phone","instruction":"","options":{"label":"Phone","instruction":"","required":0,"format":"1-field","value":"","identify":"jsn_tmp_324795","oneField":"","twoField":"","threeField":""}},{"type":"address","position":"left","identify":"address","label":"Address","instruction":"","options":{"label":"Address","instruction":"","vstreetAddress":"1","vstreetAddress2":"1","vcity":"1","vcode":"1","vstate":"1","vcountry":"1","required":0,"country":[{"text":"Afghanistan","checked":true},{"text":"Albania","checked":false},{"text":"Algeria","checked":false},{"text":"Andorra","checked":false},{"text":"Angola","checked":false},{"text":"Antigua and Barbuda","checked":false},{"text":"Argentina","checked":false},{"text":"Armenia","checked":false},{"text":"Australia","checked":false},{"text":"Austria","checked":false},{"text":"Azerbaijan","checked":false},{"text":"Bahamas","checked":false},{"text":"Bahrain","checked":false},{"text":"Bangladesh","checked":false},{"text":"Barbados","checked":false},{"text":"Belarus","checked":false},{"text":"Belgium","checked":false},{"text":"Belize","checked":false},{"text":"Benin","checked":false},{"text":"Bhutan","checked":false},{"text":"Bolivia","checked":false},{"text":"Bosnia and Herzegovina","checked":false},{"text":"Botswana","checked":false},{"text":"Brazil","checked":false},{"text":"Brunei","checked":false},{"text":"Bulgaria","checked":false},{"text":"Burkina Faso","checked":false},{"text":"Burundi","checked":false},{"text":"Cambodia","checked":false},{"text":"Cameroon","checked":false},{"text":"Canada","checked":false},{"text":"Cape Verde","checked":false},{"text":"Central African Republic","checked":false},{"text":"Chad","checked":false},{"text":"Chile","checked":false},{"text":"China","checked":false},{"text":"Colombi","checked":false},{"text":"Comoros","checked":false},{"text":"Congo (Brazzaville)","checked":false},{"text":"Congo","checked":false},{"text":"Costa Rica","checked":false},{"text":"Cote d\'Ivoire","checked":false},{"text":"Croatia","checked":false},{"text":"Cuba","checked":false},{"text":"Cyprus","checked":false},{"text":"Czech Republic","checked":false},{"text":"Denmark","checked":false},{"text":"Djibouti","checked":false},{"text":"Dominica","checked":false},{"text":"Dominican Republic","checked":false},{"text":"East Timor (Timor Timur)","checked":false},{"text":"Ecuador","checked":false},{"text":"Egypt","checked":false},{"text":"El Salvador","checked":false},{"text":"Equatorial Guinea","checked":false},{"text":"Eritrea","checked":false},{"text":"Estonia","checked":false},{"text":"Ethiopia","checked":false},{"text":"Fiji","checked":false},{"text":"Finland","checked":false},{"text":"France","checked":false},{"text":"Gabon","checked":false},{"text":"Gambia, The","checked":false},{"text":"Georgia","checked":false},{"text":"Germany","checked":false},{"text":"Ghana","checked":false},{"text":"Greece","checked":false},{"text":"Grenada","checked":false},{"text":"Guatemala","checked":false},{"text":"Guinea","checked":false},{"text":"Guinea-Bissau","checked":false},{"text":"Guyana","checked":false},{"text":"Haiti","checked":false},{"text":"Honduras","checked":false},{"text":"Hungary","checked":false},{"text":"Iceland","checked":false},{"text":"India","checked":false},{"text":"Indonesia","checked":false},{"text":"Iran","checked":false},{"text":"Iraq","checked":false},{"text":"Ireland","checked":false},{"text":"Israel","checked":false},{"text":"Italy","checked":false},{"text":"Jamaica","checked":false},{"text":"Japan","checked":false},{"text":"Jordan","checked":false},{"text":"Kazakhstan","checked":false},{"text":"Kenya","checked":false},{"text":"Kiribati","checked":false},{"text":"Korea, North","checked":false},{"text":"Korea, South","checked":false},{"text":"Kuwait","checked":false},{"text":"Kyrgyzstan","checked":false},{"text":"Laos","checked":false},{"text":"Latvia","checked":false},{"text":"Lebanon","checked":false},{"text":"Lesotho","checked":false},{"text":"Liberia","checked":false},{"text":"Libya","checked":false},{"text":"Liechtenstein","checked":false},{"text":"Lithuania","checked":false},{"text":"Luxembourg","checked":false},{"text":"Macedonia","checked":false},{"text":"Madagascar","checked":false},{"text":"Malawi","checked":false},{"text":"Malaysia","checked":false},{"text":"Maldives","checked":false},{"text":"Mali","checked":false},{"text":"Malta","checked":false},{"text":"Marshall Islands","checked":false},{"text":"Mauritania","checked":false},{"text":"Mauritius","checked":false},{"text":"Mexico","checked":false},{"text":"Micronesia","checked":false},{"text":"Moldova","checked":false},{"text":"Monaco","checked":false},{"text":"Mongolia","checked":false},{"text":"Morocco","checked":false},{"text":"Mozambique","checked":false},{"text":"Myanmar","checked":false},{"text":"Namibia","checked":false},{"text":"Nauru","checked":false},{"text":"Nepa","checked":false},{"text":"Netherlands","checked":false},{"text":"New Zealand","checked":false},{"text":"Nicaragua","checked":false},{"text":"Niger","checked":false},{"text":"Nigeria","checked":false},{"text":"Norway","checked":false},{"text":"Oman","checked":false},{"text":"Pakistan","checked":false},{"text":"Palau","checked":false},{"text":"Panama","checked":false},{"text":"Papua New Guinea","checked":false},{"text":"Paraguay","checked":false},{"text":"Peru","checked":false},{"text":"Philippines","checked":false},{"text":"Poland","checked":false},{"text":"Portugal","checked":false},{"text":"Qatar","checked":false},{"text":"Romania","checked":false},{"text":"Russia","checked":false},{"text":"Rwanda","checked":false},{"text":"Saint Kitts and Nevis","checked":false},{"text":"Saint Lucia","checked":false},{"text":"Saint Vincent","checked":false},{"text":"Samoa","checked":false},{"text":"San Marino","checked":false},{"text":"Sao Tome and Principe","checked":false},{"text":"Saudi Arabia","checked":false},{"text":"Senegal","checked":false},{"text":"Serbia and Montenegro","checked":false},{"text":"Seychelles","checked":false},{"text":"Sierra Leone","checked":false},{"text":"Singapore","checked":false},{"text":"Slovakia","checked":false},{"text":"Slovenia","checked":false},{"text":"Solomon Islands","checked":false},{"text":"Somalia","checked":false},{"text":"South Africa","checked":false},{"text":"Spain","checked":false},{"text":"Sri Lanka","checked":false},{"text":"Sudan","checked":false},{"text":"Suriname","checked":false},{"text":"Swaziland","checked":false},{"text":"Sweden","checked":false},{"text":"Switzerland","checked":false},{"text":"Syria","checked":false},{"text":"Taiwan","checked":false},{"text":"Tajikistan","checked":false},{"text":"Tanzania","checked":false},{"text":"Thailand","checked":false},{"text":"Togo","checked":false},{"text":"Tonga","checked":false},{"text":"Trinidad and Tobago","checked":false},{"text":"Tunisia","checked":false},{"text":"Turkey","checked":false},{"text":"Turkmenistan","checked":false},{"text":"Tuvalu","checked":false},{"text":"Uganda","checked":false},{"text":"Ukraine","checked":false},{"text":"United Arab Emirates","checked":false},{"text":"United Kingdom","checked":false},{"text":"United States","checked":false},{"text":"Uruguay","checked":false},{"text":"Uzbekistan","checked":false},{"text":"Vanuatu","checked":false},{"text":"Vatican City","checked":false},{"text":"Venezuela","checked":false},{"text":"Vietnam","checked":false},{"text":"Yemen","checked":false},{"text":"Zambia","checked":false},{"text":"Zimbabwe","checked":false}],"identify":"jsn_tmp_840267"}},{"type":"paragraph-text","position":"left","identify":"which_position_are_you_applying_for_","label":"Which position are you applying for?","instruction":"","options":{"label":"Which position are you applying for?","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"rows":"3","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"jsn_tmp_849757"}},{"type":"paragraph-text","position":"left","identify":"are_you_willing_to_relocate_","label":"Are you willing to relocate?","instruction":"","options":{"label":"Are you willing to relocate?","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"rows":"3","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"jsn_tmp_30786"}},{"type":"paragraph-text","position":"left","identify":"when_can_you_start_","label":"When can you start?","instruction":"","options":{"label":"When can you start?","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"rows":"3","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"jsn_tmp_221957"}},{"type":"paragraph-text","position":"left","identify":"portfolio_web_site","label":"Portfolio Web Site","instruction":"","options":{"label":"Portfolio Web Site","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"rows":"3","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"jsn_tmp_275768"}},{"type":"paragraph-text","position":"left","identify":"salary_requirement","label":"Salary Requirement","instruction":"","options":{"label":"Salary Requirement","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"rows":"3","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"jsn_tmp_457473"}},{"type":"file-upload","position":"left","identify":"resume_or_cv","label":"Resume or CV","instruction":"","options":{"label":"Resume or CV","instruction":"","required":0,"allowedExtensions":"png,jpg,gif,zip,rar,txt,doc,pdf","maxSize":0,"maxSizeUnit":"KB","identify":"jsn_tmp_727578"}}]';
break;
case 'Event Registration':
$return = '[{"type":"number","position":"left","identify":"number_of_attendance","label":"Number of Attendance","instruction":"","options":{"label":"Number of Attendance","instruction":"","required":"1","limitation":0,"limitMin":0,"limitMax":0,"size":"jsn-input-small-fluid","value":"","identify":"jsn_tmp_841112"}},{"type":"name","position":"left","identify":"name","label":"Name","instruction":"","options":{"label":"Name","instruction":"","required":"1","format":"Extended","items":[{"text":"Mrs","checked":false},{"text":"Mr","checked":true},{"text":"Ms","checked":false},{"text":"Baby","checked":false},{"text":"Master","checked":false},{"text":"Prof","checked":false},{"text":"Dr","checked":false},{"text":"Gen","checked":false},{"text":"Rep","checked":false},{"text":"Sen","checked":false},{"text":"St","checked":false}],"vtitle":"1","vfirst":"1","vmiddle":"1","vlast":"1","identify":"jsn_tmp_676286"}},{"type":"address","position":"left","identify":"address","label":"Address","instruction":"","options":{"label":"Address","instruction":"","vstreetAddress":"1","vstreetAddress2":"1","vcity":"1","vcode":"1","vstate":"1","vcountry":"1","required":"1","country":[{"text":"Afghanistan","checked":true},{"text":"Albania","checked":false},{"text":"Algeria","checked":false},{"text":"Andorra","checked":false},{"text":"Angola","checked":false},{"text":"Antigua and Barbuda","checked":false},{"text":"Argentina","checked":false},{"text":"Armenia","checked":false},{"text":"Australia","checked":false},{"text":"Austria","checked":false},{"text":"Azerbaijan","checked":false},{"text":"Bahamas","checked":false},{"text":"Bahrain","checked":false},{"text":"Bangladesh","checked":false},{"text":"Barbados","checked":false},{"text":"Belarus","checked":false},{"text":"Belgium","checked":false},{"text":"Belize","checked":false},{"text":"Benin","checked":false},{"text":"Bhutan","checked":false},{"text":"Bolivia","checked":false},{"text":"Bosnia and Herzegovina","checked":false},{"text":"Botswana","checked":false},{"text":"Brazil","checked":false},{"text":"Brunei","checked":false},{"text":"Bulgaria","checked":false},{"text":"Burkina Faso","checked":false},{"text":"Burundi","checked":false},{"text":"Cambodia","checked":false},{"text":"Cameroon","checked":false},{"text":"Canada","checked":false},{"text":"Cape Verde","checked":false},{"text":"Central African Republic","checked":false},{"text":"Chad","checked":false},{"text":"Chile","checked":false},{"text":"China","checked":false},{"text":"Colombi","checked":false},{"text":"Comoros","checked":false},{"text":"Congo (Brazzaville)","checked":false},{"text":"Congo","checked":false},{"text":"Costa Rica","checked":false},{"text":"Cote d\'Ivoire","checked":false},{"text":"Croatia","checked":false},{"text":"Cuba","checked":false},{"text":"Cyprus","checked":false},{"text":"Czech Republic","checked":false},{"text":"Denmark","checked":false},{"text":"Djibouti","checked":false},{"text":"Dominica","checked":false},{"text":"Dominican Republic","checked":false},{"text":"East Timor (Timor Timur)","checked":false},{"text":"Ecuador","checked":false},{"text":"Egypt","checked":false},{"text":"El Salvador","checked":false},{"text":"Equatorial Guinea","checked":false},{"text":"Eritrea","checked":false},{"text":"Estonia","checked":false},{"text":"Ethiopia","checked":false},{"text":"Fiji","checked":false},{"text":"Finland","checked":false},{"text":"France","checked":false},{"text":"Gabon","checked":false},{"text":"Gambia, The","checked":false},{"text":"Georgia","checked":false},{"text":"Germany","checked":false},{"text":"Ghana","checked":false},{"text":"Greece","checked":false},{"text":"Grenada","checked":false},{"text":"Guatemala","checked":false},{"text":"Guinea","checked":false},{"text":"Guinea-Bissau","checked":false},{"text":"Guyana","checked":false},{"text":"Haiti","checked":false},{"text":"Honduras","checked":false},{"text":"Hungary","checked":false},{"text":"Iceland","checked":false},{"text":"India","checked":false},{"text":"Indonesia","checked":false},{"text":"Iran","checked":false},{"text":"Iraq","checked":false},{"text":"Ireland","checked":false},{"text":"Israel","checked":false},{"text":"Italy","checked":false},{"text":"Jamaica","checked":false},{"text":"Japan","checked":false},{"text":"Jordan","checked":false},{"text":"Kazakhstan","checked":false},{"text":"Kenya","checked":false},{"text":"Kiribati","checked":false},{"text":"Korea, North","checked":false},{"text":"Korea, South","checked":false},{"text":"Kuwait","checked":false},{"text":"Kyrgyzstan","checked":false},{"text":"Laos","checked":false},{"text":"Latvia","checked":false},{"text":"Lebanon","checked":false},{"text":"Lesotho","checked":false},{"text":"Liberia","checked":false},{"text":"Libya","checked":false},{"text":"Liechtenstein","checked":false},{"text":"Lithuania","checked":false},{"text":"Luxembourg","checked":false},{"text":"Macedonia","checked":false},{"text":"Madagascar","checked":false},{"text":"Malawi","checked":false},{"text":"Malaysia","checked":false},{"text":"Maldives","checked":false},{"text":"Mali","checked":false},{"text":"Malta","checked":false},{"text":"Marshall Islands","checked":false},{"text":"Mauritania","checked":false},{"text":"Mauritius","checked":false},{"text":"Mexico","checked":false},{"text":"Micronesia","checked":false},{"text":"Moldova","checked":false},{"text":"Monaco","checked":false},{"text":"Mongolia","checked":false},{"text":"Morocco","checked":false},{"text":"Mozambique","checked":false},{"text":"Myanmar","checked":false},{"text":"Namibia","checked":false},{"text":"Nauru","checked":false},{"text":"Nepa","checked":false},{"text":"Netherlands","checked":false},{"text":"New Zealand","checked":false},{"text":"Nicaragua","checked":false},{"text":"Niger","checked":false},{"text":"Nigeria","checked":false},{"text":"Norway","checked":false},{"text":"Oman","checked":false},{"text":"Pakistan","checked":false},{"text":"Palau","checked":false},{"text":"Panama","checked":false},{"text":"Papua New Guinea","checked":false},{"text":"Paraguay","checked":false},{"text":"Peru","checked":false},{"text":"Philippines","checked":false},{"text":"Poland","checked":false},{"text":"Portugal","checked":false},{"text":"Qatar","checked":false},{"text":"Romania","checked":false},{"text":"Russia","checked":false},{"text":"Rwanda","checked":false},{"text":"Saint Kitts and Nevis","checked":false},{"text":"Saint Lucia","checked":false},{"text":"Saint Vincent","checked":false},{"text":"Samoa","checked":false},{"text":"San Marino","checked":false},{"text":"Sao Tome and Principe","checked":false},{"text":"Saudi Arabia","checked":false},{"text":"Senegal","checked":false},{"text":"Serbia and Montenegro","checked":false},{"text":"Seychelles","checked":false},{"text":"Sierra Leone","checked":false},{"text":"Singapore","checked":false},{"text":"Slovakia","checked":false},{"text":"Slovenia","checked":false},{"text":"Solomon Islands","checked":false},{"text":"Somalia","checked":false},{"text":"South Africa","checked":false},{"text":"Spain","checked":false},{"text":"Sri Lanka","checked":false},{"text":"Sudan","checked":false},{"text":"Suriname","checked":false},{"text":"Swaziland","checked":false},{"text":"Sweden","checked":false},{"text":"Switzerland","checked":false},{"text":"Syria","checked":false},{"text":"Taiwan","checked":false},{"text":"Tajikistan","checked":false},{"text":"Tanzania","checked":false},{"text":"Thailand","checked":false},{"text":"Togo","checked":false},{"text":"Tonga","checked":false},{"text":"Trinidad and Tobago","checked":false},{"text":"Tunisia","checked":false},{"text":"Turkey","checked":false},{"text":"Turkmenistan","checked":false},{"text":"Tuvalu","checked":false},{"text":"Uganda","checked":false},{"text":"Ukraine","checked":false},{"text":"United Arab Emirates","checked":false},{"text":"United Kingdom","checked":false},{"text":"United States","checked":false},{"text":"Uruguay","checked":false},{"text":"Uzbekistan","checked":false},{"text":"Vanuatu","checked":false},{"text":"Vatican City","checked":false},{"text":"Venezuela","checked":false},{"text":"Vietnam","checked":false},{"text":"Yemen","checked":false},{"text":"Zambia","checked":false},{"text":"Zimbabwe","checked":false}],"identify":"jsn_tmp_885160"}},{"type":"email","position":"left","identify":"email","label":"Email","instruction":"","options":{"label":"Email","instruction":"","required":"1","noDuplicates":0,"size":"jsn-input-medium-fluid","value":"","identify":"jsn_tmp_471658"}},{"type":"phone","position":"left","identify":"phone","label":"Phone","instruction":"","options":{"label":"Phone","instruction":"","required":0,"format":"1-field","value":"","identify":"jsn_tmp_978072","oneField":"","twoField":"","threeField":""}},{"type":"single-line-text","position":"left","identify":"company","label":"Company","instruction":"","options":{"label":"Company","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"limitType":"Words","size":"jsn-input-medium-fluid","value":"","identify":"jsn_tmp_963935"}},{"type":"choices","position":"left","identify":"t_shirt_size","label":"T-Shirt Size","instruction":"","options":{"label":"T-Shirt Size","instruction":"","required":0,"randomize":0,"layout":"jsn-columns-count-three","items":[{"text":"S","checked":false},{"text":"M","checked":false},{"text":"L","checked":false},{"text":"XL","checked":false},{"text":"XXL","checked":false},{"text":"3XL","checked":false}],"value":"","identify":"jsn_tmp_41996"}},{"type":"paragraph-text","position":"left","identify":"message","label":"Message","instruction":"","options":{"label":"Message","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"rows":"8","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"jsn_tmp_496497"}}]';
break;
case 'Voting Form':
$return = '[{"type":"name","position":"left","identify":"name","label":"Name","instruction":"","options":{"label":"Name","instruction":"","required":"1","format":"Extended","items":[{"text":"Mrs","checked":false},{"text":"Mr","checked":true},{"text":"Ms","checked":false},{"text":"Baby","checked":false},{"text":"Master","checked":false},{"text":"Prof","checked":false},{"text":"Dr","checked":false},{"text":"Gen","checked":false},{"text":"Rep","checked":false},{"text":"Sen","checked":false},{"text":"St","checked":false}],"vtitle":"1","vfirst":"1","vmiddle":"1","vlast":"1","identify":"jsn_tmp_83149"}},{"type":"choices","position":"left","identify":"multiple_choice","label":"Multiple Choice","instruction":"","options":{"label":"Multiple Choice","instruction":"","required":"1","randomize":0,"layout":"jsn-columns-count-no","items":[{"text":"Male","checked":false},{"text":"Female","checked":false}],"value":"","identify":"jsn_tmp_580389"}},{"type":"date","position":"left","identify":"date_of_birth","label":"Date of Birth","instruction":"","options":{"label":"Date of Birth","instruction":"","required":0,"enableRageSelection":0,"size":"jsn-input-small-fluid","timeFormat":0,"dateFormat":"1","identify":"jsn_tmp_475674","dateValue":"","dateValueRange":"","dateOptionFormat":"mm\/dd\/yy","timeOptionFormat":"hh:mm tt"}},{"type":"email","position":"left","identify":"email","label":"Email","instruction":"","options":{"label":"Email","instruction":"","required":"1","noDuplicates":0,"size":"jsn-input-medium-fluid","value":"","identify":"jsn_tmp_458467"}},{"type":"address","position":"left","identify":"address","label":"Address","instruction":"","options":{"label":"Address","instruction":"","vstreetAddress":"1","vstreetAddress2":"1","vcity":"1","vcode":"1","vstate":"1","vcountry":"1","required":0,"country":[{"text":"Afghanistan","checked":true},{"text":"Albania","checked":false},{"text":"Algeria","checked":false},{"text":"Andorra","checked":false},{"text":"Angola","checked":false},{"text":"Antigua and Barbuda","checked":false},{"text":"Argentina","checked":false},{"text":"Armenia","checked":false},{"text":"Australia","checked":false},{"text":"Austria","checked":false},{"text":"Azerbaijan","checked":false},{"text":"Bahamas","checked":false},{"text":"Bahrain","checked":false},{"text":"Bangladesh","checked":false},{"text":"Barbados","checked":false},{"text":"Belarus","checked":false},{"text":"Belgium","checked":false},{"text":"Belize","checked":false},{"text":"Benin","checked":false},{"text":"Bhutan","checked":false},{"text":"Bolivia","checked":false},{"text":"Bosnia and Herzegovina","checked":false},{"text":"Botswana","checked":false},{"text":"Brazil","checked":false},{"text":"Brunei","checked":false},{"text":"Bulgaria","checked":false},{"text":"Burkina Faso","checked":false},{"text":"Burundi","checked":false},{"text":"Cambodia","checked":false},{"text":"Cameroon","checked":false},{"text":"Canada","checked":false},{"text":"Cape Verde","checked":false},{"text":"Central African Republic","checked":false},{"text":"Chad","checked":false},{"text":"Chile","checked":false},{"text":"China","checked":false},{"text":"Colombi","checked":false},{"text":"Comoros","checked":false},{"text":"Congo (Brazzaville)","checked":false},{"text":"Congo","checked":false},{"text":"Costa Rica","checked":false},{"text":"Cote d\'Ivoire","checked":false},{"text":"Croatia","checked":false},{"text":"Cuba","checked":false},{"text":"Cyprus","checked":false},{"text":"Czech Republic","checked":false},{"text":"Denmark","checked":false},{"text":"Djibouti","checked":false},{"text":"Dominica","checked":false},{"text":"Dominican Republic","checked":false},{"text":"East Timor (Timor Timur)","checked":false},{"text":"Ecuador","checked":false},{"text":"Egypt","checked":false},{"text":"El Salvador","checked":false},{"text":"Equatorial Guinea","checked":false},{"text":"Eritrea","checked":false},{"text":"Estonia","checked":false},{"text":"Ethiopia","checked":false},{"text":"Fiji","checked":false},{"text":"Finland","checked":false},{"text":"France","checked":false},{"text":"Gabon","checked":false},{"text":"Gambia, The","checked":false},{"text":"Georgia","checked":false},{"text":"Germany","checked":false},{"text":"Ghana","checked":false},{"text":"Greece","checked":false},{"text":"Grenada","checked":false},{"text":"Guatemala","checked":false},{"text":"Guinea","checked":false},{"text":"Guinea-Bissau","checked":false},{"text":"Guyana","checked":false},{"text":"Haiti","checked":false},{"text":"Honduras","checked":false},{"text":"Hungary","checked":false},{"text":"Iceland","checked":false},{"text":"India","checked":false},{"text":"Indonesia","checked":false},{"text":"Iran","checked":false},{"text":"Iraq","checked":false},{"text":"Ireland","checked":false},{"text":"Israel","checked":false},{"text":"Italy","checked":false},{"text":"Jamaica","checked":false},{"text":"Japan","checked":false},{"text":"Jordan","checked":false},{"text":"Kazakhstan","checked":false},{"text":"Kenya","checked":false},{"text":"Kiribati","checked":false},{"text":"Korea, North","checked":false},{"text":"Korea, South","checked":false},{"text":"Kuwait","checked":false},{"text":"Kyrgyzstan","checked":false},{"text":"Laos","checked":false},{"text":"Latvia","checked":false},{"text":"Lebanon","checked":false},{"text":"Lesotho","checked":false},{"text":"Liberia","checked":false},{"text":"Libya","checked":false},{"text":"Liechtenstein","checked":false},{"text":"Lithuania","checked":false},{"text":"Luxembourg","checked":false},{"text":"Macedonia","checked":false},{"text":"Madagascar","checked":false},{"text":"Malawi","checked":false},{"text":"Malaysia","checked":false},{"text":"Maldives","checked":false},{"text":"Mali","checked":false},{"text":"Malta","checked":false},{"text":"Marshall Islands","checked":false},{"text":"Mauritania","checked":false},{"text":"Mauritius","checked":false},{"text":"Mexico","checked":false},{"text":"Micronesia","checked":false},{"text":"Moldova","checked":false},{"text":"Monaco","checked":false},{"text":"Mongolia","checked":false},{"text":"Morocco","checked":false},{"text":"Mozambique","checked":false},{"text":"Myanmar","checked":false},{"text":"Namibia","checked":false},{"text":"Nauru","checked":false},{"text":"Nepa","checked":false},{"text":"Netherlands","checked":false},{"text":"New Zealand","checked":false},{"text":"Nicaragua","checked":false},{"text":"Niger","checked":false},{"text":"Nigeria","checked":false},{"text":"Norway","checked":false},{"text":"Oman","checked":false},{"text":"Pakistan","checked":false},{"text":"Palau","checked":false},{"text":"Panama","checked":false},{"text":"Papua New Guinea","checked":false},{"text":"Paraguay","checked":false},{"text":"Peru","checked":false},{"text":"Philippines","checked":false},{"text":"Poland","checked":false},{"text":"Portugal","checked":false},{"text":"Qatar","checked":false},{"text":"Romania","checked":false},{"text":"Russia","checked":false},{"text":"Rwanda","checked":false},{"text":"Saint Kitts and Nevis","checked":false},{"text":"Saint Lucia","checked":false},{"text":"Saint Vincent","checked":false},{"text":"Samoa","checked":false},{"text":"San Marino","checked":false},{"text":"Sao Tome and Principe","checked":false},{"text":"Saudi Arabia","checked":false},{"text":"Senegal","checked":false},{"text":"Serbia and Montenegro","checked":false},{"text":"Seychelles","checked":false},{"text":"Sierra Leone","checked":false},{"text":"Singapore","checked":false},{"text":"Slovakia","checked":false},{"text":"Slovenia","checked":false},{"text":"Solomon Islands","checked":false},{"text":"Somalia","checked":false},{"text":"South Africa","checked":false},{"text":"Spain","checked":false},{"text":"Sri Lanka","checked":false},{"text":"Sudan","checked":false},{"text":"Suriname","checked":false},{"text":"Swaziland","checked":false},{"text":"Sweden","checked":false},{"text":"Switzerland","checked":false},{"text":"Syria","checked":false},{"text":"Taiwan","checked":false},{"text":"Tajikistan","checked":false},{"text":"Tanzania","checked":false},{"text":"Thailand","checked":false},{"text":"Togo","checked":false},{"text":"Tonga","checked":false},{"text":"Trinidad and Tobago","checked":false},{"text":"Tunisia","checked":false},{"text":"Turkey","checked":false},{"text":"Turkmenistan","checked":false},{"text":"Tuvalu","checked":false},{"text":"Uganda","checked":false},{"text":"Ukraine","checked":false},{"text":"United Arab Emirates","checked":false},{"text":"United Kingdom","checked":false},{"text":"United States","checked":false},{"text":"Uruguay","checked":false},{"text":"Uzbekistan","checked":false},{"text":"Vanuatu","checked":false},{"text":"Vatican City","checked":false},{"text":"Venezuela","checked":false},{"text":"Vietnam","checked":false},{"text":"Yemen","checked":false},{"text":"Zambia","checked":false},{"text":"Zimbabwe","checked":false}],"identify":"jsn_tmp_538561"}},{"type":"phone","position":"left","identify":"phone","label":"Phone","instruction":"","options":{"label":"Phone","instruction":"","required":0,"format":"1-field","value":"","identify":"jsn_tmp_673980","oneField":"","twoField":"","threeField":""}},{"type":"choices","position":"left","identify":"overall_how_satisfied_were_you_with_the_product_service_","label":"Overall, how satisfied were you with the product \/ service? ","instruction":"","options":{"label":"Overall, how satisfied were you with the product \/ service? ","instruction":"","required":"1","randomize":0,"layout":"jsn-columns-count-one","items":[{"text":"Very Satisfied","checked":false},{"text":"Satisfied","checked":false},{"text":"Neutral","checked":false},{"text":"Unsatisfied","checked":false},{"text":"Very Unsatisfied","checked":false},{"text":"N\/A ","checked":false}],"value":"","identify":"jsn_tmp_921222"}}]';
break;
case 'Survey Product/Service Satisfaction':
$return = '[{"type":"static-content","position":"left","identify":"static_content","label":"Static Content","instruction":null,"options":{"label":"Static Content","value":"<b>Dear Customer:<br><br>\r\nAs the manager of [COMPANY], I want to thank you for giving us the opportunity to serve you. Please help us serve you better by taking a couple of minutes to tell us about the service that you have received so far. We appreciate your business and want to make sure we meet your expectations. Attached, you will find a coupon good for ...... We hope that you will accept this as a token of our good will.\r\n<br><br>\r\nSincerely,\r\n<br><br>\r\n[MANAGER_NAME]\r\n<br><br>\r\nManager<br><\/b><hr><b><br><\/b>","identify":"static_content","customClass":""}},{"type":"choices","position":"left","identify":"in_thinking_about_your_most_recent_experience_with_company_was_the_quality_of_customer_service_you_received_","label":"In thinking about your most recent experience with [COMPANY], was the quality of customer service you received: ","instruction":"","options":{"label":"In thinking about your most recent experience with [COMPANY], was the quality of customer service you received: ","instruction":"","required":0,"randomize":0,"labelOthers":"Others","layout":"jsn-columns-count-one","items":[{"text":"Very Poor","checked":false},{"text":"Somewhat Unsatisfactory","checked":false},{"text":"About Average","checked":false},{"text":"Very Satisfactory","checked":false},{"text":"Superior","checked":false}],"value":"","identify":"in_thinking_about_your_most_recent_experience_with_company_was_the_quality_of_customer_service_you_received_","customClass":"","itemAction":""}},{"type":"paragraph-text","position":"left","identify":"if_you_indicated_that_the_customer_service_was_unsatisfactory_would_you_please_describe_what_happened_","label":"If you indicated that the customer service was unsatisfactory, would you please describe what happened? ","instruction":"","options":{"label":"If you indicated that the customer service was unsatisfactory, would you please describe what happened? ","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"rows":"8","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"if_you_indicated_that_the_customer_service_was_unsatisfactory_would_you_please_describe_what_happened_","customClass":""}},{"type":"choices","position":"left","identify":"the_process_for_getting_your_concerns_resolved_was_","label":"The process for getting your concerns resolved was: ","instruction":"","options":{"label":"The process for getting your concerns resolved was: ","instruction":"","required":0,"randomize":0,"labelOthers":"Others","layout":"jsn-columns-count-one","items":[{"text":"Very Poor","checked":false},{"text":"Somewhat Unsatisfactory","checked":false},{"text":"About Average","checked":false},{"text":"Very Satisfactory","checked":false},{"text":"Superior","checked":false}],"value":"","identify":"the_process_for_getting_your_concerns_resolved_was_","customClass":"","itemAction":""}},{"type":"paragraph-text","position":"left","identify":"would_you_please_take_a_few_minutes_to_describe_what_happened_","label":"Would you please take a few minutes to describe what happened?","instruction":"","options":{"label":"Would you please take a few minutes to describe what happened?","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"rows":"8","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"would_you_please_take_a_few_minutes_to_describe_what_happened_","customClass":""}},{"type":"choices","position":"left","identify":"now_please_think_about_the_features_and_benefits_of_the_product_itself_how_satisfied_are_you_with_the_product_","label":"Now please think about the features and benefits of the [PRODUCT] itself. How satisfied are you with the [PRODUCT]:","instruction":"","options":{"label":"Now please think about the features and benefits of the [PRODUCT] itself. How satisfied are you with the [PRODUCT]:","instruction":"","required":0,"randomize":0,"labelOthers":"Others","layout":"jsn-columns-count-one","items":[{"text":"Very Poor","checked":false},{"text":"Somewhat Unsatisfactory","checked":false},{"text":"About Average","checked":false},{"text":"Very Satisfactory","checked":false},{"text":"Superior","checked":false}],"value":"","identify":"now_please_think_about_the_features_and_benefits_of_the_product_itself_how_satisfied_are_you_with_the_product_","customClass":"","itemAction":""}},{"type":"paragraph-text","position":"left","identify":"would_you_please_take_a_few_minutes_to_describe_why_you_are_not_satisfied_with_the_product_","label":"Would you please take a few minutes to describe why you are not satisfied with the product?","instruction":"","options":{"label":"Would you please take a few minutes to describe why you are not satisfied with the product?","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"rows":"8","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"would_you_please_take_a_few_minutes_to_describe_why_you_are_not_satisfied_with_the_product_","customClass":""}},{"type":"static-content","position":"left","identify":"static_content_9","label":"Static Content","instruction":null,"options":{"label":"Static Content","value":"<b>Customer Service Representative<br><\/b><hr><b><br><\/b>","identify":"static_content_9","customClass":""}},{"type":"likert","position":"left","identify":"the_following_questions_pertain_to_the_customer_service_representative_you_spoke_with_most_recently_please_indicate_whether_you_agree_or_disagree_with_the_following_statements_","label":"The following questions pertain to the customer service representative you spoke with most recently. Please indicate whether you agree or disagree with the following statements ","instruction":"","options":{"label":"The following questions pertain to the customer service representative you spoke with most recently. Please indicate whether you agree or disagree with the following statements ","instruction":"","required":0,"size":"jsn-input-mini-fluid","rows":[{"text":"The customer service representative was very courteous","checked":false},{"text":"The customer service representative handled my call quickly","checked":false},{"text":"The customer service representative was very knowledgeable","checked":false}],"columns":[{"text":"Strongly Agree","checked":false},{"text":"Agree","checked":false},{"text":"Neutral","checked":false},{"text":"Disagree","checked":false},{"text":"Strongly Disagree","checked":false}],"identify":"the_following_questions_pertain_to_the_customer_service_representative_you_spoke_with_most_recently_please_indicate_whether_you_agree_or_disagree_with_the_following_statements_","customClass":""}},{"type":"paragraph-text","position":"left","identify":"are_there_any_other_comments_about_the_customer_service_representative_you_would_like_to_add_","label":"Are there any other comments about the customer service representative you would like to add?","instruction":"","options":{"label":"Are there any other comments about the customer service representative you would like to add?","instruction":"","required":0,"limitation":0,"limitMin":0,"limitMax":0,"rows":"8","size":"jsn-input-xlarge-fluid","limitType":"Words","value":"","identify":"are_there_any_other_comments_about_the_customer_service_representative_you_would_like_to_add_","customClass":""}},{"type":"static-content","position":"left","identify":"static_content_12","label":"Static Content","instruction":null,"options":{"label":"Static Content","value":"<b>The Process<br><\/b><hr><b><br><\/b>","identify":"static_content_12","customClass":""}},{"type":"likert","position":"left","identify":"the_following_questions_pertain_to_the_process_by_which_your_most_recent_service_contract_was_handled_please_indicate_whether_you_agree_or_disagree_with_the_following_statements_","label":"The following questions pertain to the process by which your most recent service contract was handled. Please indicate whether you agree or disagree with the following statements. ","instruction":"","options":{"label":"The following questions pertain to the process by which your most recent service contract was handled. Please indicate whether you agree or disagree with the following statements. ","instruction":"","required":0,"size":"jsn-input-mini-fluid","rows":[{"text":"The waiting time for having my questions addressed was satisfactory","checked":false},{"text":"My phone call was quickly transferred to the person who best could answer my question","checked":false},{"text":"The automated phone system made the customer service experience more satisfying","checked":false}],"columns":[{"text":"Strongly Agree","checked":false},{"text":"Agree","checked":false},{"text":"Neutral","checked":false},{"text":"Disagree","checked":false},{"text":"Strongly Disagree","checked":false}],"identify":"the_following_questions_pertain_to_the_process_by_which_your_most_recent_service_contract_was_handled_please_indicate_whether_you_agree_or_disagree_with_the_following_statements_","customClass":""}},{"type":"likert","position":"left","identify":"the_following_questions_pertain_to_the_process_by_which_your_most_recent_service_contract_was_handled_please_indicate_whether_you_agree_or_disagree_with_the_following_statements_","label":"","instruction":"","options":{"label":"The following questions pertain to the process by which your most recent service contract was handled. Please indicate whether you agree or disagree with the following statements. ","instruction":"","required":0,"size":"jsn-input-mini-fluid","rows":[{"text":"Considering the total package offered by including customer service, [PRODUCT] features and benefits, and cost; how satisfied are you with [COMPANY]?","checked":false}],"columns":[{"text":"Very Satisfied","checked":false},{"text":"Somewhat Satisfied","checked":false},{"text":"Neutral","checked":false},{"text":"Somewhat Dissatisfied","checked":false},{"text":"Very Dissatisfied","checked":false}],"identify":"","customClass":""}},{"type":"static-content","position":"left","identify":"static_content_15","label":"Static Content","instruction":null,"options":{"label":"Static Content","value":"<hr><b>\r\nThank you for your feedback. We sincerely appreciate your honest opinion and will take your input into consideration while providing products and services in the future.\r\n<br>\r\nIf you have any comments or concerns about this survey please Contact: -\r\n<br><br>\r\n[COMPANY]\r\n<br><br>\r\n[MANAGER_NAME]\r\n<br><br>\r\n[ADDRESS_1]\r\n<br><br>\r\n[ADDRESS_2]\r\n<br><br>\r\n[CITY], [STATE], [ZIP]<\/b>","identify":"static_content_15","customClass":""}}]';
break;
}
return $return;
}
/**
* Get List Email Notification
*
* @param type $items
*
* @return string
*/
public static function getListEmailNotification($items = array())
{
$app = JFactory::getApplication();
$input = $app->input;
$view = $input->getCmd('view', '');
if($view != 'configuration')
{
$html = '<div class="control-group jsn-items-list-container">
<div class="controls">
<div class="email-addresses">
<ul id="emailAddresses" class="jsn-items-list ui-sortable">';
}
else
{
$html = '<div class="control-group jsn-items-list-container">
<label class="control-label jsn-label-des-tipsy" original-title="' . JText::_('JSN_UNIFORM_SPECIFY_EMAIL_ADDRESS') . '">' . JText::_('JSN_UNIFORM_SEND_EMAIL_TO') . '</label>
<div class="controls">
<button class="btn btn-icon pull-right " data-placement="top" id="btn_email_list" original-title="' . JText::_('JSN_UNIFORM_EMAIL_CONTENT') . '" title="' . JText::_('JSN_UNIFORM_EMAIL_CONTENT') . '" onclick="return false;"><i class="icon-envelope"></i></button>
<div class="email-addresses">
<ul id="emailAddresses" class="jsn-items-list ui-sortable">';
}
$script = array();
if (!empty($items) && count($items))
{
foreach ($items as $email)
{
if (!empty($email->email_address))
{
$script[] = "'" . $email->email_address . "'";
$emailName = isset($email->email_name) ? $email->email_name : "";
$emailUserId = isset($email->user_id) ? $email->user_id : "";
$emailId = isset($email->email_id) ? $email->email_id : "";
$html .= '<li class="jsn-item ui-state-default jsn-iconbar-trigger" data-email="' . $email->email_address . '" id="email_' . preg_replace('/[^a-zA-Z0-9-_]/i', "_", $email->email_address) . '">
<input type="hidden" value="' . $emailName . '" name="form_email_notification_name[' . $email->email_address . ']">
<input type="hidden" value="' . $emailId . '" name="semail_id[' . $email->email_address . ']">
<input type="hidden" value="' . $emailUserId . '" name="form_email_notification_user_id[' . $email->email_address . ']">
<input type="hidden" value="' . $email->email_address . '" name="form_email_notification[]">
<span class="email-address">' . $email->email_address . '</span>
<div class="jsn-iconbar">
<a data-email="' . $email->email_address . '" class="element-edit" title="Edit email" href="javascript:void(0)"><i class="icon-pencil"></i></a>
<a data-email="' . $email->email_address . '" class="element-delete" title="Delete email" href="javascript:void(0)"><i class="icon-trash"></i></a>
</div>
</li>';
}
}
}
$html .= '
</ul>
<script> var listemail=[' . implode(",", $script) . '];</script>
<a href="#" onclick="return false;" id="show-div-add-email" class="jsn-add-more">' . JText::_('JSN_UNIFORM_ADD_MORE_EMAIL') . '</a>
<div id="addMoreEmail" class="jsn-form-bar">
<div class="control-group input-append">
<input name="nemail" class="input-medium" id="input_new_email" type="text">
<button class="btn" id="email-select" href="#myModal" onclick="return false;">' . JText::_('JSN_UNIFORM_EMAIL_SELECT') . '</button>
</div>
<div class="control-group">
<button class="btn btn-icon" onclick="return false;" id="add-email" title="' . JText::_('JSN_UNIFORM_BUTTON_SAVE') . '" ><i class="icon-ok"></i></button>
<button class="btn btn-icon" onclick="return false;" id="close-email" title="' . JText::_('JSN_UNIFORM_BUTTON_CANCEL') . '"><i class="icon-remove"></i></button>
</div>
<div class="control-group"></div>
</div>
</div>
</div>
</div>';
return $html;
}
/**
* Generate Style Pages
*
* @param Object $formStyle List style opbject
* @param String $container class css container
* @param String $containerActive class css container active
* @param String $title class css title
* @param String $messageErrors class css title
* @param String $messageBackgroundErrors class css Background errors
* @param String $field class css field
*
* @return string
*/
public static function generateStylePages($formStyle, $container = "", $containerActive = "", $title = "", $messageErrors = "", $messageBackgroundErrors = "", $field = "")
{
if (!empty($container))
{
$styleCustom[] = $container . "{";
if (!empty($formStyle->background_color))
{
$styleCustom[] = "background-color:{$formStyle->background_color};";
}
if (!empty($formStyle->border_thickness))
{
$styleCustom[] = "border:{$formStyle->border_thickness}px solid;";
}
if (!empty($formStyle->border_color))
{
$styleCustom[] = "border-color:{$formStyle->border_color};";
}
if (!empty($formStyle->rounded_corner_radius))
{
$styleCustom[] = "border-radius:{$formStyle->rounded_corner_radius}px;";
}
if (!empty($formStyle->rounded_corner_radius))
{
$styleCustom[] = "-moz-border-radius:{$formStyle->rounded_corner_radius};";
}
if (!empty($formStyle->rounded_corner_radius))
{
$styleCustom[] = "-webkit-border-radius:{$formStyle->rounded_corner_radius};";
}
if (!empty($formStyle->padding_space))
{
$styleCustom[] = "padding:{$formStyle->padding_space}px;";
}
if (!empty($formStyle->margin_space))
{
$styleCustom[] = "margin:{$formStyle->margin_space}px 0px;";
}
$styleCustom[] = "}";
}
if (!empty($containerActive))
{
$styleCustom[] = $containerActive . "{";
if (!empty($formStyle->background_active_color))
{
$styleCustom[] = "background-color:{$formStyle->background_active_color} !important;";
}
if (!empty($formStyle->border_active_color))
{
$styleCustom[] = "border-color:{$formStyle->border_active_color} !important;";
}
$styleCustom[] = "}";
}
if (!empty($title))
{
$styleCustom[] = $title . " {";
if (!empty($formStyle->text_color))
{
$styleCustom[] = "color:{$formStyle->text_color};";
}
if (!empty($formStyle->font_type))
{
$styleCustom[] = "font-family:{$formStyle->font_type};";
}
if (!empty($formStyle->font_size))
{
$styleCustom[] = "font-size:{$formStyle->font_size}px;";
}
$styleCustom[] = "}";
}
if (!empty($messageErrors))
{
$styleCustom[] = $messageErrors . " {";
if (!empty($formStyle->message_error_text_color))
{
$styleCustom[] = "color:{$formStyle->message_error_text_color};";
}
$styleCustom[] = "}";
}
if (!empty($messageBackgroundErrors))
{
$styleCustom[] = $messageBackgroundErrors . " {";
if (!empty($formStyle->message_error_background_color))
{
$styleCustom[] = "background-color:{$formStyle->message_error_background_color};";
}
$styleCustom[] = "}";
}
if ($messageErrors)
{
$styleCustom[] = $messageErrors . " {";
if (!empty($formStyle->message_error_text_color))
{
$styleCustom[] = "color:{$formStyle->message_error_text_color};";
}
$styleCustom[] = "}";
}
if (!empty($field))
{
$styleCustom[] = $field . " {";
if (!empty($formStyle->field_background_color))
{
$styleCustom[] = "background:" . $formStyle->field_background_color . ";";
}
if (!empty($formStyle->field_shadow_color))
{
$styleCustom[] = "box-shadow:0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 7px 0 rgba(" . JSNUniformHelper::hex2rgb($formStyle->field_shadow_color) . ",0.8) inset;";
}
if (!empty($formStyle->field_border_color))
{
$styleCustom[] = "border-color:{$formStyle->field_border_color};";
}
if (!empty($formStyle->field_text_color))
{
$styleCustom[] = "color:{$formStyle->field_text_color};";
}
$styleCustom[] = "}";
}
return implode("\n", $styleCustom);
}
/**
* Convert color hex to rgb
*
* @param $colour Color hex
*
* @return array|bool
*/
public static function hex2rgb($colour = "")
{
if ($colour[0] == '#')
{
$colour = substr($colour, 1);
}
if (strlen($colour) == 6)
{
list($r, $g, $b) = array($colour[0] . $colour[1], $colour[2] . $colour[3], $colour[4] . $colour[5]);
}
elseif (strlen($colour) == 3)
{
list($r, $g, $b) = array($colour[0] . $colour[0], $colour[1] . $colour[1], $colour[2] . $colour[2]);
}
else
{
return false;
}
$r = hexdec($r);
$g = hexdec($g);
$b = hexdec($b);
return $r . "," . $g . "," . $b;
//return array('red' => $r, 'green' => $g, 'blue' => $b);
}
/**
* Check state Form
*
* @param int $formId Form Id
*
* @return bool
*/
public static function checkStateForm($formId)
{
$db = JFactory::getDBO();
$db->setQuery($db->getQuery(true)->from('#__jsn_uniform_forms')->select('form_id')->where('form_state = 1 AND form_id=' . (int) $formId));
if ($db->loadResult())
{
return true;
}
else
{
return false;
}
}
/**
* Check state ReCaptcha Plugin
*/
public static function checkRecaptchaPlugin()
{
$db = JFactory::getDBO();
$db->setQuery($db->getQuery(true)->from('#__extensions')->select('*')->where('element = "recaptcha" AND folder = "captcha" AND type = "plugin"'));
return $db->loadObject();
}
/**
* generate HTML Pages
*
* @param Object $formId Form Id
* @param String $formName Form Name
* @param String $formType Form Type
* @param String $topContent Module Top content
* @param String $bottomContent Module Bottom Content
* @param String $showTitle State Show Title Form
* @param String $showDes State Show Description Form
*
* @return string
*/
public static function generateHTMLPages($formId, $formName, $formType = "", $topContent = "", $bottomContent = "", $showTitle = false, $showDes = false, $isModule = false, $preview = false, $itemPreview = "", $formPagesPreview = "")
{
$config = JFactory::getConfig();
$sessionLifeTime = intval($config->get('lifetime') * 60 / 3 * 1000);
$pathroot = JUri::base(true) . '/index.php';
$ftoken = JFactory::getSession()->getFormToken();
$uri = JUri::getInstance();
$baseUrl = JURI::base(true);
$ajaxUpload = 0;
$html = "";
// Load language
$lang = JFactory::getLanguage();
$lang->load('com_uniform');
$document = JFactory::getDocument();
/** load Css */
$loadBootstrap = self::getDataConfig('load_bootstrap_css');
$loadBootstrap = isset($loadBootstrap->value) ? $loadBootstrap->value : "0";
$stylesheets = array();
if (preg_match('/msie/i', $_SERVER['HTTP_USER_AGENT']))
{
$document->addStyleSheet(JURI::root(true) . '/plugins/system/jsnframework/assets/3rd-party/jquery-ui/css/ui-bootstrap/jquery.ui.1.9.0.ie.css');
}
if ($loadBootstrap == 1)
{
$document->addStyleSheet(JSN_UNIFORM_ASSETS_URI . '/3rd-party/bootstrap/css/bootstrap.min.css');
}
$document->addStyleSheet(JURI::root(true) . '/plugins/system/jsnframework/assets/joomlashine/css/jsn-gui.css');
//$document->addStyleSheet(JURI::root(true) . '/plugins/system/jsnframework/assets/3rd-party/font-awesome/css/font-awesome.css');
$document->addStyleSheet(JURI::root(true) . '/plugins/system/jsnframework/assets/3rd-party/jquery-tipsy/tipsy.css');
$document->addStyleSheet(JSN_UNIFORM_ASSETS_URI . '/css/modal.css');
$document->addStyleSheet(JSN_UNIFORM_ASSETS_URI . '/css/form.css');
/** end */
/* Get data form */
$db = JFactory::getDBO();
if ($preview)
{
$items = $itemPreview;
}
else
{
$db->setQuery($db->getQuery(true)->from('#__jsn_uniform_forms')->select('*')->where('form_state = 1 AND form_id=' . (int) $formId));
$items = $db->loadObject();
}
$edition = defined('JSN_UNIFORM_EDITION') ? JSN_UNIFORM_EDITION : "free";
if (strtolower($edition) != "free")
{
if (isset($items->form_payment_type) && (string) $items->form_payment_type != '')
{
if (JPluginHelper::isEnabled('uniform', (string) $items->form_payment_type) !== true)
{
$html = '<div class="alert alert-danger">' . JText::sprintf('JSN_UNIFORM_PLUGIN_IS_NOT_EXISTED_OR_ENABLED', strtoupper(str_replace('_', ' ', (string) $items->form_payment_type))). '</div>';
return $html;
}
$dispatcher = JEventDispatcher::getInstance();
JPluginHelper::importPlugin('uniform', (string) $items->form_payment_type);
$isValidPaymentGateway = $dispatcher->trigger('checkPaymentGatewayValid');
if ($isValidPaymentGateway[0] !== true)
{
$html = '<div class="alert alert-danger">' . JText::sprintf('JSN_UNIFORM_PLUGIN_IS_NOT_CONFIG', strtoupper(str_replace('_', ' ', (string) $items->form_payment_type))). '</div>';
return $html;
}
}
}
/* Get data page form */
if ($preview)
{
$formPages = $formPagesPreview;
}
else
{
/* Get data page form */
$db->setQuery($db->getQuery(true)->from('#__jsn_uniform_form_pages')->select('*')->where('form_id=' . (int) $formId)->order("page_id ASC"));
$formPages = $db->loadObjectList();
}
/* define language */
$arrayTranslated = array('JSN_UNIFORM_CHARACTERS','JSN_UNIFORM_WORDS','JSN_UNIFORM_CONFIRM_FIELD_PASSWORD_MIN_MAX_CHARACTER', 'JSN_UNIFORM_CONFIRM_FIELD_EMAIL_CONFIRM', 'JSN_UNIFORM_CONFIRM_FIELD_MIN_NUMBER', 'JSN_UNIFORM_CONFIRM_FIELD_MAX_NUMBER', 'JSN_UNIFORM_DATE_HOUR_TEXT', 'JSN_UNIFORM_DATE_MINUTE_TEXT', 'JSN_UNIFORM_DATE_CLOSE_TEXT', 'JSN_UNIFORM_DATE_PREV_TEXT', 'JSN_UNIFORM_DATE_NEXT_TEXT', 'JSN_UNIFORM_DATE_CURRENT_TEXT', 'JSN_UNIFORM_DATE_MONTH_JANUARY', 'JSN_UNIFORM_DATE_MONTH_FEBRUARY', 'JSN_UNIFORM_DATE_MONTH_MARCH', 'JSN_UNIFORM_DATE_MONTH_APRIL', 'JSN_UNIFORM_DATE_MONTH_MAY', 'JSN_UNIFORM_DATE_MONTH_JUNE', 'JSN_UNIFORM_DATE_MONTH_JULY', 'JSN_UNIFORM_DATE_MONTH_AUGUST', 'JSN_UNIFORM_DATE_MONTH_SEPTEMBER', 'JSN_UNIFORM_DATE_MONTH_OCTOBER', 'JSN_UNIFORM_DATE_MONTH_NOVEMBER', 'JSN_UNIFORM_DATE_MONTH_DECEMBER', 'JSN_UNIFORM_DATE_MONTH_JANUARY_SHORT', 'JSN_UNIFORM_DATE_MONTH_FEBRUARY_SHORT', 'JSN_UNIFORM_DATE_MONTH_MARCH_SHORT', 'JSN_UNIFORM_DATE_MONTH_APRIL_SHORT', 'JSN_UNIFORM_DATE_MONTH_MAY_SHORT', 'JSN_UNIFORM_DATE_MONTH_JUNE_SHORT', 'JSN_UNIFORM_DATE_MONTH_JULY_SHORT', 'JSN_UNIFORM_DATE_MONTH_AUGUST_SHORT', 'JSN_UNIFORM_DATE_MONTH_SEPTEMBER_SHORT', 'JSN_UNIFORM_DATE_MONTH_OCTOBER_SHORT', 'JSN_UNIFORM_DATE_MONTH_NOVEMBER_SHORT', 'JSN_UNIFORM_DATE_MONTH_DECEMBER_SHORT', 'JSN_UNIFORM_DATE_DAY_SUNDAY', 'JSN_UNIFORM_DATE_DAY_MONDAY', 'JSN_UNIFORM_DATE_DAY_TUESDAY', 'JSN_UNIFORM_DATE_DAY_WEDNESDAY', 'JSN_UNIFORM_DATE_DAY_THURSDAY', 'JSN_UNIFORM_DATE_DAY_FRIDAY', 'JSN_UNIFORM_DATE_DAY_SATURDAY', 'JSN_UNIFORM_DATE_DAY_SUNDAY_SHORT', 'JSN_UNIFORM_DATE_DAY_MONDAY_SHORT', 'JSN_UNIFORM_DATE_DAY_TUESDAY_SHORT', 'JSN_UNIFORM_DATE_DAY_WEDNESDAY_SHORT', 'JSN_UNIFORM_DATE_DAY_THURSDAY_SHORT', 'JSN_UNIFORM_DATE_DAY_FRIDAY_SHORT', 'JSN_UNIFORM_DATE_DAY_SATURDAY_SHORT', 'JSN_UNIFORM_DATE_DAY_SUNDAY_MIN', 'JSN_UNIFORM_DATE_DAY_MONDAY_MIN', 'JSN_UNIFORM_DATE_DAY_TUESDAY_MIN', 'JSN_UNIFORM_DATE_DAY_WEDNESDAY_MIN', 'JSN_UNIFORM_DATE_DAY_THURSDAY_MIN', 'JSN_UNIFORM_DATE_DAY_FRIDAY_MIN', 'JSN_UNIFORM_DATE_DAY_SATURDAY_MIN', 'JSN_UNIFORM_DATE_DAY_WEEK_HEADER', 'JSN_UNIFORM_CONFIRM_FIELD_MAX_LENGTH', 'JSN_UNIFORM_CONFIRM_FIELD_MIN_LENGTH', 'JSN_UNIFORM_CAPTCHA_PUBLICKEY', 'JSN_UNIFORM_BUTTON_BACK', 'JSN_UNIFORM_BUTTON_NEXT', 'JSN_UNIFORM_BUTTON_RESET','JSN_UNIFORM_BUTTON_PREVIEW', 'JSN_UNIFORM_BUTTON_SUBMIT', 'JSN_UNIFORM_CONFIRM_FIELD_CANNOT_EMPTY', 'JSN_UNIFORM_CONFIRM_FIELD_INVALID', 'JSN_UNIFORM_WORDS_LEFT', 'JSN_UNIFORM_CHARACTERS_LEFT');
/* Check load JS */
$checkLoadJS = array();
$checkLoadJSTipsy = false;
if ($items)
{
$cConfig = JSNConfigHelper::get('com_uniform');
$googleMapUrl = 'maps.googleapis.com/maps/api/js?v=3.23&libraries=places';
if (isset($cConfig->form_google_map_api_key) && $cConfig->form_google_map_api_key != '')
{
$googleMapUrl = 'maps.googleapis.com/maps/api/js?v=3.23&key=' . $cConfig->form_google_map_api_key . '&libraries=places';
}
if (!$isModule)
{
$metaDesc = (string) $items->form_meta_desc;
if ($metaDesc != '')
{
$document->setMetaData('description', $metaDesc);
}
$metaKeywords = (string) $items->form_meta_keywords;
if ($metaKeywords != '')
{
$document->setMetaData('keywords', $metaKeywords);
}
$metaTitle = (int) $items->form_meta_title;
if ($metaTitle)
{
$document->setTitle($items->form_title);
}
}
$formStyleCustom = new stdClass;
if (!empty($items->form_style))
{
$formStyleCustom = json_decode($items->form_style);
}
$dataSumbission = '';
$classForm = !empty($formStyleCustom->layout) ? $formStyleCustom->layout : '';
$formTheme = !empty($formStyleCustom->theme) ? $formStyleCustom->theme : '';
$layout = !empty($formStyleCustom->layout) ? strtolower($formStyleCustom->layout) : '';
$uri = JURI::getInstance();
$url = $uri->toString( array( 'scheme', 'host', 'port' ) ) . JURI::root(true);
$use_payment_gateway = !empty($items->form_payment_type) ? '1' : '0';
if (!$formType)
{
if ($showTitle && !empty($items->form_title))
{
$html .= "<h2 class='contentheading'>{$items->form_title}</h2>";
}
if ($showDes && !empty($items->form_description))
{
$des = str_replace("\n", "<br/>", $items->form_description);
$html .= "<p>{$des}</p>";
}
$document->addStyleSheet(JRoute::_('index.php?option=com_uniform&view=form&task=generateStylePages&form_id=' . $items->form_id));
$html .= "<div class=\"jsn-uniform jsn-master\" data-form-name='" . $formName . "' id='jsn_form_" . $items->form_id . "'><div class=\"jsn-bootstrap\">";
$html .= $topContent;
$html .= '<div class="jsn-uniform-preview-modal modal hide fade" tabindex="-1" id="jsn_uniform_modal_form_'.$formName.'" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3>'.JTEXT::_("JSN_UNIFORM_MODAL_PREVIEW_TITLE").'</h3>
</div>
<div class="modal-body" style="overflow: auto">
<p>…</p>
</div>
<div class="modal-footer">
<button class="btn jsn_close_modal" onclick="return false;">'.JTEXT::_("JSN_UNIFORM_CLOSE").'</button>
</div>
</div>';
// Check if the form use ajax upload or no
if (isset($items->form_ajax_upload) && $items->form_ajax_upload == 1 && !(int) $use_payment_gateway)
{
$tmpFormSettings = !empty($items->form_settings) ? json_decode($items->form_settings) : "";
if (strtolower($tmpFormSettings->action_save_submissions) == 'yes')
{
$ajaxUpload = $items->form_ajax_upload;
}
}
$html .= "<form data-token='{$ftoken}' data-ajaxupload='{$ajaxUpload}' id='form_{$formName}' action=\"" . $url . '/index.php?option=com_uniform&view=form&task=form.save&form_id=' . $items->form_id . "\" method=\"post\" class=\"form-validate {$classForm} \" enctype=\"multipart/form-data\" >";
$html .= "<span class=\"hide jsn-language\" style=\"display:none;\" data-value='" . json_encode(JSNUniformHelper::getTranslated($arrayTranslated)) . "'></span>";
$html .= "<span class=\"hide jsn-base-url\" style=\"display:none;\" data-value=\"" . $url . "\"></span>";
$html .= "<div id=\"page-loading\" class=\"jsn-bgloading\"><i class=\"jsn-icon32 jsn-icon-loading\"></i></div>";
$html .= "<div class=\"jsn-row-container {$formTheme} {$layout}\">";
}
$html .= "<div class=\"message-uniform\"> </div>";
foreach ($formPages as $i => $contentForm)
{
$pageContainer = !empty($contentForm->page_container) && json_decode($contentForm->page_container) ? $contentForm->page_container : '[[{"columnName":"left","columnClass":"span12"}]]';
$formContent = isset($contentForm->page_content) ? json_decode($contentForm->page_content) : "";
$htmlForm = "";
if (!empty($formContent))
{
foreach ($formContent as $content)
{
if (!empty($content->instruction))
{
$checkLoadJSTipsy = true;
}
if (!empty($content->type))
{
$checkLoadJS[$content->type] = $content->type;
}
}
$paymentType = !empty($items->form_payment_type) ? $items->form_payment_type : "";
$htmlForm .= JSNFormGenerateHelper::generate($formContent, $dataSumbission, $pageContainer, $paymentType);
}
$html .= "<div data-value=\"{$contentForm->page_id}\" class=\"jsn-form-content hide\">{$htmlForm}";
if (!empty($items->form_payment_type) && $items->form_payment_type != '')
{
$formSettings = !empty($items->form_settings) ? json_decode($items->form_settings) : "";
$paymentTotalMoneyText = !empty($formSettings->form_payment_money_value_text) ? $formSettings->form_payment_money_value_text : "";
$paymentTotalMoneyValue = !empty($formSettings->form_payment_money_value) ? $formSettings->form_payment_money_value : "";
$showTotalMoneyText = !empty($formSettings->form_show_total_money_text) ? $formSettings->form_show_total_money_text : "No";
$dispatcher = JEventDispatcher::getInstance();
JPluginHelper::importPlugin('uniform', (string)$items->form_payment_type);
$totalMoney = $dispatcher->trigger('displayCurrency', $paymentTotalMoneyValue );
if($showTotalMoneyText == 'No' || $showTotalMoneyText == ''){
$showTotalMoneyClass = 'hide';
}else{
$showTotalMoneyClass = '';
}
$html .='<div class="control-group '. $showTotalMoneyClass .'">
<div class="controls">
<div class="form-payments">
<div class="payment-total-money">
<h3><span class="payment-text">'. $paymentTotalMoneyText .': </span>'.$totalMoney[0].'</h3>
<input type="hidden" id="jform_form_payment_money_value_text" name="jsn_form_total_money[form_payment_money_value_text]" value="'. $paymentTotalMoneyText .'">
<input type="hidden" id="jform_form_payment_money_value" name="jsn_form_total_money[form_payment_money_value]" value="'. $paymentTotalMoneyValue .'">
</div>
</div>
</div>
</div>';
}
if ($i + 1 == count($formPages))
{
$formSettings = !empty($items->form_settings) ? json_decode($items->form_settings) : "";
$mailchimpMsg = !empty($formSettings->form_mailchimp_subcriber_text) ? $formSettings->form_mailchimp_subcriber_text : "";
$mailchimp = !empty($formSettings->form_mailchimp) ? json_decode($formSettings->form_mailchimp) : "";
if(isset($mailchimp))
{
if (isset($mailchimp->useMailchimp) && $mailchimp->useMailchimp == 1)
{
$checked = $formSettings->form_show_mailchimp_subcriber != 'Yes' ? 'checked="checked"' : '';
$hide = $formSettings->form_show_mailchimp_subcriber != 'Yes' ? 'hide' : '';
$html .= '<div class="control-group ' . $hide . '">
<div class="controls">
<div class="mc-subcriber">
<div class="mc-subcriber-box">
<h3>
<label class="checkbox">
<input type="checkbox" name="mailchimp_subcriber" ' . $checked . '>
<span class="mc-subcriber-text">' . $mailchimpMsg . '</span>
</label>
</h3>
</div>
</div>
</div>
</div>';
}
}
if (!empty($items->form_captcha) && $items->form_captcha == 1)
{
$config = JSNConfigHelper::get('com_uniform');
$reCaptchaTimeout = isset($config->form_set_captcha_time_out) ? (int)$config->form_set_captcha_time_out : 240;
$app = JFactory::getApplication();
$captchaParams = JPluginHelper::getPlugin('captcha', 'recaptcha');
$params = json_decode(@$captchaParams->params);
$dataSiteKey = @$params->public_key;
$dataTheme = @$params->theme2;
if(version_compare(@$params->version, '2.0', '>=')){
JPluginHelper::importPlugin('captcha');
$captchaId = md5(date("Y-m-d H:i:s") . $i . $formName);
$html .= "<div id=\"" . $captchaId . "\" data-sitekey=\"" . $dataSiteKey . "\" data-theme=\"". $dataTheme ."\" data-timeout=\"".$reCaptchaTimeout."\" class=\"control-group g-recaptcha jsn-uf-grecaptchav2\"></div>";
$html .= '<script type="text/javascript">try {grecaptcha.render("' . $captchaId . '", {sitekey: "' . $dataSiteKey . '", theme: "' . $dataTheme . '", timeout:'.$reCaptchaTimeout.'});}catch(err){}</script>';
}else{
if ($uri->getScheme() == 'https')
{
$html .= "<script type=\"text/javascript\" src=\"https://www.google.com/recaptcha/api/js/recaptcha_ajax.js\"></script>";
}
else
{
$html .= "<script type=\"text/javascript\" src=\"http://www.google.com/recaptcha/api/js/recaptcha_ajax.js\"></script>";
}
$html .= "<div id=\"" . md5(date("Y-m-d H:i:s") . $i . $formName) . "\" data-jnsUfpublickey=\"" . JSN_UNIFORM_CAPTCHA_PUBLICKEY . "\" class=\"form-captcha control-group\"></div>";
}
}
else if (!empty($items->form_captcha) && $items->form_captcha == 2)
{
require_once JPATH_ROOT . '/components/com_uniform/libraries/3rd-party/securimage/securimage.php';
$img = new Securimage();
$img->case_sensitive = true; // true to use case sensitve codes - not recommended
$img->image_bg_color = new Securimage_Color("#ffffff"); // image background color
$img->text_color = new Securimage_Color("#000000"); // captcha text color
$img->num_lines = 0; // how many lines to draw over the image
$img->line_color = new Securimage_Color("#0000CC"); // color of lines over the image
$img->namespace = $formName;
$img->signature_color = new Securimage_Color(rand(0, 64), rand(64, 128), rand(128, 255)); // random signature color
ob_start();
$img->show(JPATH_ROOT . '/components/com_uniform/libraries/3rd-party/securimage/backgrounds/bg4.png');
$dataCaptcha = base64_encode(ob_get_clean());
$html .= '<div class="control-group">
<div class="controls">
<div class="row-fluid"><img class="jsn-captcha-image" src="data:image/png;base64,' . $dataCaptcha . '" alt="CAPTCHA" /></div>
<input type="text" id="jsn-captcha" name="captcha" autocomplete="off" placeholder="' . JText::_("JSN_UNIFORM_CAPTCHA") . '">
<a href="javascript:void(0)" class="jsn-refresh-captcha" data-token="' . JSession::getFormToken() . '" data-namespace="' . $formName . '">
<span class="icon-loop"></span>
</a>
</div>
</div>';
}
}
$html .= "</div>";
}
$formSettings = !empty($items->form_settings) ? json_decode($items->form_settings) : "";
$btnNext = !empty($formSettings->form_btn_next_text) ? $formSettings->form_btn_next_text : "Next";
$btnPrev = !empty($formSettings->form_btn_prev_text) ? $formSettings->form_btn_prev_text : "Prev";
$btnSubmit = !empty($formSettings->form_btn_submit_text) ? $formSettings->form_btn_submit_text : "Submit";
$btnReset = !empty($formSettings->form_btn_reset_text) ? $formSettings->form_btn_reset_text : "Reset";
$btnPreview = !empty($formSettings->form_btn_preview_text) ? $formSettings->form_btn_preview_text : "Preview";
$btnNextStyle = !empty($formStyleCustom->button_next_color) ? $formStyleCustom->button_next_color : "btn btn-primary";
$btnPrevStyle = !empty($formStyleCustom->button_prev_color) ? $formStyleCustom->button_prev_color : "btn";
$btnSubmitStyle = !empty($formStyleCustom->button_submit_color) ? $formStyleCustom->button_submit_color : "btn btn-primary";
$btnPreviewStyle = !empty($formStyleCustom->button_preview_color) ? $formStyleCustom->button_preview_color : "btn";
$btnResetStyle = !empty($formStyleCustom->button_reset_color) ? $formStyleCustom->button_reset_color : "btn";
$btnPosition = !empty($formStyleCustom->button_position) ? $formStyleCustom->button_position : "btn-toolbar";
$submitCustomClass = !empty($formSettings->form_btn_submit_custom_class) ? $formSettings->form_btn_submit_custom_class : "";
$disabled = '';
if ($preview)
{
$disabled = 'disabled';
}
$htmlBtnReset = "";
if (!empty($formSettings->form_state_btn_reset_text) && $formSettings->form_state_btn_reset_text == "Yes")
{
$htmlBtnReset = '<button ' . $disabled . ' class="' . $btnResetStyle . ' reset" onclick="return false;" style="display:inline-block">' . JText::_($btnReset) . '</button>';
}
else{
$htmlBtnReset = '<button ' . $disabled . ' class="' . $btnResetStyle . ' reset" onclick="return false;" style="display:none">' . JText::_($btnReset) . '</button>';
}
$htmlBtnPreview = "";
if (!empty($formSettings->form_state_btn_preview_text) && $formSettings->form_state_btn_preview_text == "Yes")
{
$htmlBtnPreview = '<button ' . $disabled . ' class="' . $btnPreviewStyle . ' preview" onclick="return false;" style="display:inline-block">' . JText::_($btnPreview) . '</button>';
}
else
{
$htmlBtnPreview = '<button ' . $disabled . ' class="' . $btnPreviewStyle . ' preview" onclick="return false;" style="display:none">' . JText::_($btnPreview) . '</button>';
}
$html .= '<div class="form-actions">
<div class="' . $btnPosition . '">
<button class="' . $btnPrevStyle . ' prev hide" onclick="return false;">' . JText::_($btnPrev) . '</button>
<button class="' . $btnNextStyle . ' next hide" onclick="return false;">' . JText::_($btnNext) . '</button>
' . $htmlBtnPreview . ' ' . $htmlBtnReset . '
<button type="submit" ' . $disabled . ' class="' . $btnSubmitStyle . ' jsn-form-submit '. $submitCustomClass .'" >' . JText::_($btnSubmit) . '</button>
</div>
</div>';
$formId = isset($items->form_id) ? $items->form_id : "";
$postAction = isset($items->form_post_action) ? $items->form_post_action : "";
$postActionData = isset($items->form_post_action_data) ? $items->form_post_action_data : "";
$edition = defined('JSN_UNIFORM_EDITION') ? JSN_UNIFORM_EDITION : "free";
if (strtolower($edition) == "free")
{
$html .= "<div class=\"jsn-text-center\"><a href=\"http://www.joomlashine.com/joomla-extensions/jsn-uniform.html\" target=\"_blank\">" . JText::_('JSN_UNIFORM_POWERED_BY') . "</a> by JoomlaShine</div>";
}
$html .= "<input type=\"hidden\" name=\"form_name\" value=\"{$formName}\" />";
if (!$formType)
{
$html .= "</div>";
$html .= "<input type=\"hidden\" name=\"task\" value=\"form.save\" />";
$html .= "<input type=\"hidden\" name=\"option\" value=\"com_uniform\" />";
$html .= "<input type=\"hidden\" name=\"form_id\" value=\"{$formId}\" />";
$html .= "<input type=\"hidden\" id=\"ajax_upload_file\" name=\"ajax_upload_file\" value=\"{$ajaxUpload}\" />";
$html .= "<input type=\"hidden\" id=\"use_payment_gateway\" name=\"use_payment_gateway\" value=\"{$use_payment_gateway}\" />";
$html .= "<input type=\"hidden\" id=\"list_choosen_field\" name=\"list_choosen_field\" value=\"\" />";
$html .= "<input type=\"hidden\" id=\"form_post_action\" name=\"form_post_action\" value=\"{$postAction}\" />";
$html .= "<input type=\"hidden\" name=\"form_post_action_data\" value='" . htmlentities($postActionData, ENT_QUOTES, "UTF-8") . "' />";
$html .= "<input type=\"hidden\" name=\"form_post_session_lifetime\" value=\"{$sessionLifeTime}\" />";
$html .= "<input type=\"hidden\" name=\"form_post_path_root\" value=\"{$pathroot}\" />";
$html .= JHtml::_('form.token');
$html .= "</form>";
$html .= $bottomContent;
$html .= "</div></div>";
}
/* Load JS */
if (!empty($checkLoadJS['date']))
{
$document->addStyleSheet(JURI::root(true) . '/plugins/system/jsnframework/assets/3rd-party/jquery-ui/css/ui-bootstrap/jquery-ui-1.9.0.custom.css');
}
$getHeadData = JFactory::getDocument()->getHeadData();
$checkLoadScript = true;
$scripts = array();
foreach ($getHeadData['scripts'] as $script => $option)
{
if ($script == JSN_UNIFORM_ASSETS_URI . '/js/form.js')
{
if (!empty($checkLoadJS['google-maps']) && empty($getHeadData['scripts']['https://' . $googleMapUrl]))
{
if ($uri->getScheme() == 'https')
{
$scripts['https://' . $googleMapUrl] = $option;
}
else
{
$scripts['http://' . $googleMapUrl] = $option;
}
$scripts[JSN_UNIFORM_ASSETS_URI . '/js/libs/googlemaps/jquery.ui.map.js'] = $option;
$scripts[JSN_UNIFORM_ASSETS_URI . '/js/libs/googlemaps/jquery.ui.map.services.js'] = $option;
$scripts[JSN_UNIFORM_ASSETS_URI . '/js/libs/googlemaps/jquery.ui.map.extensions.js'] = $option;
}
if (!empty($checkLoadJS['date']) && empty($getHeadData['scripts'][JSN_UNIFORM_ASSETS_URI . '/js/libs/jquery-ui-timepicker-addon.js']))
{
$scripts[JSN_UNIFORM_ASSETS_URI . '/js/libs/jquery-ui-1.10.3.custom.min.js'] = $option;
$scripts[JSN_UNIFORM_ASSETS_URI . '/js/libs/jquery-ui-timepicker-addon.js'] = $option;
}
if ($checkLoadJSTipsy && empty($getHeadData['scripts'][JURI::root(true) . '/plugins/system/jsnframework/assets/3rd-party/jquery-tipsy/jquery.tipsy.js']))
{
$scripts[JURI::root(true) . '/plugins/system/jsnframework/assets/3rd-party/jquery-tipsy/jquery.tipsy.js'] = $option;
}
$scripts[$script] = $option;
$checkLoadScript = false;
}
else
{
$scripts[$script] = $option;
}
if ($script == JSN_UNIFORM_ASSETS_URI . '/js/submissions.js' || $script == JSN_UNIFORM_ASSETS_URI . '/js/submission.js')
{
$scripts[JURI::root(true) . '/plugins/system/jsnframework/assets/3rd-party/jquery-scrollto/jquery.scrollTo.js'] = $option;
$scripts[JSN_UNIFORM_ASSETS_URI . '/js/libs/jquery.placeholder.js'] = $option;
$scripts[JURI::root(true) . '/media/jui/js/bootstrap.min.js'] = $option;
if (!empty($checkLoadJS['google-maps']))
{
if ($uri->getScheme() == 'https')
{
$scripts['https://' . $googleMapUrl] = $option;
}
else
{
$scripts['http://' . $googleMapUrl] = $option;
}
$scripts[JSN_UNIFORM_ASSETS_URI . '/js/libs/googlemaps/jquery.ui.map.js'] = $option;
$scripts[JSN_UNIFORM_ASSETS_URI . '/js/libs/googlemaps/jquery.ui.map.services.js'] = $option;
$scripts[JSN_UNIFORM_ASSETS_URI . '/js/libs/googlemaps/jquery.ui.map.extensions.js'] = $option;
}
if (!empty($checkLoadJS['date']))
{
$scripts[JSN_UNIFORM_ASSETS_URI . '/js/libs/jquery-ui-timepicker-addon.js'] = $option;
}
$scripts[JSN_UNIFORM_ASSETS_URI . '/js/form.js'] = $option;
$checkLoadScript = false;
}
}
if ($checkLoadScript)
{
$document->addScript(JSN_UNIFORM_ASSETS_URI . '/js/jsn_uf_jquery_safe.js');
$document->addScript(JURI::root(true) . '/media/jui/js/jquery.min.js');
$document->addScript(JSN_UNIFORM_ASSETS_URI . '/js/libs/jquery.placeholder.js');
$document->addScript(JSN_UNIFORM_ASSETS_URI . '/js/libs/jquery.form.js');
$document->addScript(JSN_UNIFORM_ASSETS_URI . '/js/libs/json-2.3.min.js');
if ($checkLoadJSTipsy)
{
$document->addScript(JURI::root(true) . '/plugins/system/jsnframework/assets/3rd-party/jquery-tipsy/jquery.tipsy.js');
}
$document->addScript(JURI::root(true) . '/plugins/system/jsnframework/assets/3rd-party/jquery-scrollto/jquery.scrollTo.js');
$document->addScript(JURI::root(true) . '/media/jui/js/bootstrap.min.js');
if (!empty($checkLoadJS['date']))
{
$document->addScript(JSN_UNIFORM_ASSETS_URI . '/js/libs/jquery-ui-1.10.3.custom.min.js');
$document->addScript(JSN_UNIFORM_ASSETS_URI . '/js/libs/jquery-ui-timepicker-addon.js');
}
if (!empty($checkLoadJS['google-maps']))
{
if ($uri->getScheme() == 'https')
{
$document->addScript('https://' . $googleMapUrl);
}
else
{
$document->addScript('http://' . $googleMapUrl);
}
$document->addScript(JSN_UNIFORM_ASSETS_URI . '/js/libs/googlemaps/jquery.ui.map.js');
$document->addScript(JSN_UNIFORM_ASSETS_URI . '/js/libs/googlemaps/jquery.ui.map.services.js');
$document->addScript(JSN_UNIFORM_ASSETS_URI . '/js/libs/googlemaps/jquery.ui.map.extensions.js');
}
$document->addScript(JSN_UNIFORM_ASSETS_URI . '/js/form.js');
$document->addScript(JSN_UNIFORM_ASSETS_URI . '/js/jsn_uf_conflict.js');
}
else if (!empty($scripts))
{
$getHeadData['scripts'] = $scripts;
JFactory::getDocument()->setHeadData($getHeadData);
}
}
//Run Script on Form Display
$formScriptDisplay = trim($items->form_script_display);
if ($formScriptDisplay != '')
{
if (version_compare(PHP_VERSION, '7.0.0', '<'))
{
try
{
eval($formScriptDisplay);
}
catch (Exception $e)
{
}
}
else
{
try
{
eval($formScriptDisplay);
}
catch (ParseError $e)
{
}
}
}
return $html;
}
/**
* Method to get text translation.
*
* @param array $strings String to translate.
*
* @return array
*/
public static function getTranslated($strings)
{
$translated = array();
foreach ($strings AS $string)
{
$translated[strtoupper($string)] = str_replace("'", "'", JText::_($string));
}
return $translated;
}
/**
* checkEditSubmission
*
* @param $userId
*
* @param $groupCheck
*
* @return bool
*/
public static function checkEditSubmission($userId, $groupCheck)
{
$user = JFactory::getUser($userId);
$userGroups = $user->getAuthorisedGroups();
foreach ($userGroups AS $userGroup)
{
if ($userGroup == $groupCheck)
{
return true;
}
}
return false;
}
/**
* Render Options Button Style
*
* @param $value
*
* @return string
*/
public static function renderOptionsButtonStyle($defaultValue)
{
$list = array();
$list['btn'] = "Default";
$list['btn btn-primary'] = "Primary";
$list['btn btn-info'] = "Info";
$list['btn btn-success'] = "Success";
$list['btn btn-warning'] = "Warning";
$list['btn btn-danger'] = "Danger";
$list['btn btn-inverse'] = "Inverse";
$list['btn btn-link'] = "Link";
$options = '';
foreach ($list as $key => $value)
{
$selected = "";
if ($key == $defaultValue)
{
$selected = "selected='selected'";
}
$options .= "<option {$selected} value='{$key}'>{$value}</option>";
}
return $options;
}
/**
* Render Options Button Position
*
* @param $value
*
* @return string
*/
public static function renderOptionsButtonPosition($defaultValue)
{
$list = array();
$list['btn-toolbar'] = "Center";
$list['btn-toolbar pull-left'] = "Left";
$list['btn-toolbar pull-right'] = "Right";
$options = '';
foreach ($list as $key => $value)
{
$selected = "";
if ($key == $defaultValue)
{
$selected = "selected='selected'";
}
$options .= "<option {$selected} value='{$key}'>{$value}</option>";
}
return $options;
}
/**
* Generate random id for element
*
* @param type $length
*
* @return string
*/
public static function generateIdentificationCode( $length = 16) {
$characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
$randomString = '';
for ( $i = 0; $i < $length; $i++ ) {
$randomString .= $characters[rand( 0, strlen( $characters ) - 1 )];
}
return $randomString;
}
public static function getFormViewAccess($formId)
{
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('form_view_submission, form_view_submission_access');
$query->from("#__jsn_uniform_forms");
$query->where('form_id=' . (int) $formId);
$db->setQuery($query);
return $db->loadObject();
}
/**
* get Form data
*
* @param int $formId Form Id
*
* @return bool
*/
public static function getForm($formId)
{
$db = JFactory::getDBO();
$db->setQuery($db->getQuery(true)->from('#__jsn_uniform_forms')->select('*')->where('form_state = 1 AND form_id=' . (int) $formId));
return $db->loadObject();
}
}