// validate op if ($op != "check_for_unique_value" and $op != "get_element_option_list" and $op != 'delete_uploaded_file' and $op != 'get_element_html' and $op != 'get_element_value' and $op != 'get_element_row_html' and $op != 'update_derived_value' and $op != 'validate_php_code') { exit; } // unpack params based on op, and do whatever we're supposed to do switch ($op) { case 'check_for_unique_value': $value = $_GET['param1']; $element = $_GET['param2']; $entry = $_GET['param3']; $element_handler = xoops_getmodulehandler('elements', 'formulize'); $elementObject = $element_handler->get($element); if (is_object($elementObject)) { include_once XOOPS_ROOT_PATH . "/modules/formulize/class/data.php"; $data_handler = new formulizeDataHandler($elementObject->getVar('id_form')); $entry_id = $data_handler->findFirstEntryWithValue($element, $value); if (is_numeric($entry_id) and $entry_id != $entry) { print 'valuefound'; } else { print 'valuenotfound'; } } else { print 'invalidelement'; } break; case 'get_element_option_list': include_once XOOPS_ROOT_PATH . "/modules/formulize/include/functions.php"; $elementsq = q("SELECT ele_caption, ele_id FROM " . $xoopsDB->prefix("formulize") . " WHERE id_form=" . intval($_GET['fid']) . " AND ele_type != \"ib\" AND ele_type != \"subform\" ORDER BY ele_order"); $json = "{ \"options\": ["; $start = true; foreach ($elementsq as $oneele) {
function findMatchingIdReq($element, $fid, $value) { if (!is_object($element)) { return false; } $original_value = $value; static $cachedValues = array(); if (!isset($cachedValues[$element->getVar('ele_id')][$original_value])) { $data_handler = new formulizeDataHandler($fid); $entry_id = $data_handler->findFirstEntryWithValue($element, $value); if ($entry_id) { $cachedValues[$element->getVar('ele_id')][$original_value] = $entry_id; } else { $cachedValues[$element->getVar('ele_id')][$original_value] = false; } } return $cachedValues[$element->getVar('ele_id')][$original_value]; }