本文整理汇总了PHP中Item::get_handling_class_by_type方法的典型用法代码示例。如果您正苦于以下问题:PHP Item::get_handling_class_by_type方法的具体用法?PHP Item::get_handling_class_by_type怎么用?PHP Item::get_handling_class_by_type使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Item
的用法示例。
在下文中一共展示了Item::get_handling_class_by_type方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: count_fulltext_search
/**
* @see Item_WrapperInterface::count_fulltext_search()
* @param string $string
* @param array $item_type_array
* @param integer $language_id
* @return integer
*/
public static function count_fulltext_search($string, $item_type_array, $language_id)
{
if (is_array($item_type_array) and count($item_type_array) >= 1) {
$string = strtolower(trim($string));
$string = str_replace("*", "%", $string);
$string = str_replace(" ", "", $string);
$join_sql = "";
$where_sql = "";
if (is_numeric($language_id)) {
$language = new Language($language_id);
$tsvector_language = $language->get_tsvector_name();
} else {
$tsvector_language = "english";
}
foreach ($item_type_array as $key => $value) {
$handling_class = Item::get_handling_class_by_type($value);
if (class_exists($handling_class)) {
$join_sql .= $handling_class::get_sql_join($value);
if (($return_where_sql = $handling_class::get_sql_fulltext_where($value)) != null) {
$return_where_sql = str_replace("{STRING}", $string, $return_where_sql);
$return_where_sql = str_replace("{LANGUAGE}", "english", $return_where_sql);
if ($where_sql == "") {
$where_sql .= $return_where_sql;
} else {
$where_sql .= " OR " . $return_where_sql;
}
}
}
}
return Item_Wrapper_Access::count_fulltext_search($string, $select_sql_array, $join_sql, $where_sql);
} else {
return null;
}
}
示例2: get_current_status_requirements
/**
* @see ProjectInterface::get_current_status_requirements()
* @param bool $force_inherit
* @param integer $status_id
* @return array
*/
public function get_current_status_requirements($force_inherit = false, $status_id = null)
{
global $runtime_data;
if ($this->project_id and $this->project) {
if ($status_id == null) {
$status_id = $this->get_current_status_id();
}
if ($runtime_data->is_object_data($this, "PROJECT_" . $this->project_id . "_" . $status_id . "_CURRENT_STATUS_REQUIREMENTS") == true) {
return $runtime_data->read_object_data($this, "PROJECT_" . $this->project_id . "_" . $status_id . "_CURRENT_STATUS_REQUIREMENTS");
} else {
$project_template = new ProjectTemplate($this->project->get_template_id());
$status_attribute_array = $project_template->get_status_attributes($status_id);
$requirements_array = $project_template->get_status_requirements($status_id);
if ($status_attribute_array['requirement'] == "optional") {
$requirement_default = "optional";
} else {
$requirement_default = "force";
}
$return_array = array();
$parent_item_array = array();
$counter = 0;
$type_counter = 0;
$category_counter = 0;
$fulfilled_counter = 0;
$filter_counter = 0;
$sub_item_counter = 0;
if (is_array($requirements_array) and count($requirements_array) >= 1) {
$project_item = new ProjectItem($this->project_id);
$item_array = $project_item->get_project_status_items_with_pos_id($status_id);
$item_type_array = Item::list_types();
foreach ($requirements_array as $key => $value) {
// ITEM
if ($value['xml_element'] == "item" and !$value['close']) {
$in_item = true;
$return_array[$counter]['element_type'] = "item";
$return_array[$counter]['display'] = true;
$return_array[$counter]['type'] = $value['type'];
$return_array[$counter]['name'] = $value['name'];
$return_array[$counter]['dialog'] = $value['dialog'];
$return_array[$counter]['handling_class'] = Item::get_handling_class_by_type($value['type']);
if ($value['requirement'] and $status_attribute_array['requirement'] != "optional") {
$return_array[$counter]['requirement'] = $value['requirement'];
} else {
$return_array[$counter]['requirement'] = $requirement_default;
}
if ($value['occurrence']) {
$return_array[$counter]['occurrence'] = $value['occurrence'];
} else {
$return_array[$counter]['occurrence'] = "once";
}
if (is_numeric($value['pos_id'])) {
$pos_id = $value['pos_id'];
$return_array[$counter]['pos_id'] = $value['pos_id'];
} else {
$pos_id = $counter;
$return_array[$counter]['pos_id'] = $counter;
}
if (is_array($item_array) and count($item_array) >= 1) {
$item_instance_array = array();
foreach ($item_array as $item_key => $item_value) {
if (is_array($item_type_array) and count($item_type_array) >= 1) {
foreach ($item_type_array as $item_type => $item_handling_class) {
if (class_exists($item_handling_class)) {
if ($item_handling_class::is_kind_of($item_type, $item_value['item_id']) == true and $item_value['pos_id'] == $pos_id and $item_value['pos_id'] !== null and $pos_id !== null) {
$item_instance = $item_handling_class::get_instance_by_item_id($item_value['item_id'], true);
$return_array[$counter]['fulfilled'][$fulfilled_counter]['item_id'] = $item_value['item_id'];
$return_array[$counter]['fulfilled'][$fulfilled_counter]['id'] = $item_instance->get_item_object_id();
$return_array[$counter]['fulfilled'][$fulfilled_counter]['name'] = $item_instance->get_item_object_name();
array_push($item_instance_array, $item_instance);
$fulfilled_counter++;
break;
}
}
}
}
}
}
if ($value['inherit'] == "all" or $force_inherit == true) {
if (is_array($item_instance_array) and count($item_instance_array) >= 1 and $fulfilled_counter >= 1) {
foreach ($item_instance_array as $object_key => $object_value) {
if (is_object($object_value)) {
if ($object_value instanceof ItemHolderInterface) {
$return_array[$counter]['sub_items'][$object_key] = $object_value->get_item_add_information();
}
}
}
}
}
}
if ($value['xml_element'] == "item" and $value['close'] == "1") {
$counter++;
$type_counter = 0;
$category_counter = 0;
$fulfilled_counter = 0;
//.........这里部分代码省略.........
示例3: io_handler
//.........这里部分代码省略.........
if ($_GET['run'] == "item_add") {
$module_dialog['class']::$module_dialog['method']($current_status_requirements[$_GET['key']]['type_id'], $current_status_requirements[$_GET['key']]['category_id'], "Project", $_GET['project_id'], $_GET['key']);
} elseif ($_GET['run'] == "item_edit") {
$module_dialog['class']::$module_dialog['method']($current_status_requirements[$_GET['key']]['fulfilled'][0]['item_id']);
}
}
} else {
throw new BaseModuleDialogMethodNotFoundException();
}
} else {
throw new BaseModuleDialogClassNotFoundException();
}
} else {
throw new BaseModuleDialogFileNotFoundException();
}
} else {
throw new BaseModuleDialogNotFoundException();
}
} else {
throw new BaseModuleDialogMissingException();
}
} else {
throw new ProjectSecurityAccessDeniedException();
}
break;
// Sub Item Add and Edit
// Sub Item Add and Edit
case "sub_item_add":
case "sub_item_edit":
if ($project_security->is_access(3, false) == true) {
if ($_GET['parent']) {
if (is_numeric($_GET['parent_id'])) {
if (is_numeric($_GET['key'])) {
$item_handling_class = Item::get_handling_class_by_type($_GET['parent']);
if (class_exists($item_handling_class)) {
$item_io_handling_class = $item_handling_class::get_item_add_io_handling_class();
if (file_exists("core/modules/" . $item_io_handling_class[0])) {
require_once "core/modules/" . $item_io_handling_class[0];
if (class_exists($item_io_handling_class[1])) {
if ($_GET['run'] == "sub_item_add") {
$item_io_handling_class[1]::item_add_edit_handler("add");
} elseif ($_GET['run'] == "sub_item_edit") {
$item_io_handling_class[1]::item_add_edit_handler("edit");
}
} else {
throw new ItemAddIOClassNotFoundException();
}
} else {
throw new ItemAddIOFileNotFoundException();
}
} else {
throw new ItemHandlerClassNotFoundException();
}
} else {
throw new ItemPositionIDMissingException();
}
} else {
throw new ItemParentIDMissingException();
}
} else {
throw new ItemParentTypeMissingException();
}
} else {
throw new ProjectSecurityAccessDeniedException();
}
break;
示例4: io_handler
//.........这里部分代码省略.........
if ($_GET['run'] == "item_add") {
$module_dialog['class']::$module_dialog['method']($current_requirements[$_GET['key']]['type_id'], $current_requirements[$_GET['key']]['category_id'], "Sample", $_GET['sample_id'], $_GET['key']);
} elseif ($_GET['run'] == "item_edit") {
$module_dialog['class']::$module_dialog['method']($current_requirements[$_GET['key']]['fulfilled'][0]['item_id']);
}
}
} else {
throw new BaseModuleDialogMethodNotFoundException();
}
} else {
throw new BaseModuleDialogClassNotFoundException();
}
} else {
throw new BaseModuleDialogFileNotFoundException();
}
} else {
throw new BaseModuleDialogNotFoundException();
}
} else {
throw new BaseModuleDialogMissingException();
}
} else {
throw new SampleSecurityAccessDeniedException();
}
break;
// Sub Item Add
// Sub Item Add
case "sub_item_add":
case "sub_item_edit":
if ($sample_security->is_access(2, false) == true) {
if ($_GET['parent']) {
if (is_numeric($_GET['parent_id'])) {
if (is_numeric($_GET['key'])) {
$item_handling_class = Item::get_handling_class_by_type($_GET['parent']);
if (class_exists($item_handling_class)) {
$item_io_handling_class = $item_handling_class::get_item_add_io_handling_class();
if (file_exists("core/modules/" . $item_io_handling_class[0])) {
require_once "core/modules/" . $item_io_handling_class[0];
if (class_exists($item_io_handling_class[1])) {
if ($_GET['run'] == "sub_item_add") {
$item_io_handling_class[1]::item_add_edit_handler("add");
} else {
$item_io_handling_class[1]::item_add_edit_handler("edit");
}
} else {
throw new ItemAddIOClassNotFoundException();
}
} else {
throw new ItemAddIOFileNotFoundException();
}
} else {
throw new ItemHandlerClassNotFoundException();
}
} else {
throw new ItemPositionIDMissingException();
}
} else {
throw new ItemParentIDMissingException();
}
} else {
throw new ItemParentTypeMissingException();
}
} else {
throw new SampleSecurityAccessDeniedException();
}
break;
示例5: get_requirements
/**
* @see SampleInterface::get_requirements()
* @param boolean $get_fulfilled
* @return array
*/
public function get_requirements($get_fulfilled = true)
{
global $runtime_data;
if ($this->sample_id and $this->sample) {
if ($runtime_data->is_object_data($this, "SAMPLE_" . $this->sample_id . "_REQUIREMENT_ARRAY") == true) {
return $runtime_data->read_object_data($this, "SAMPLE_" . $this->sample_id . "_REQUIREMENT_ARRAY");
} else {
$sample_template = new SampleTemplate($this->sample->get_template_id());
$requirements_array = $sample_template->get_requirements();
$return_array = array();
$parent_item_array = array();
$counter = 0;
$type_counter = 0;
$category_counter = 0;
$fulfilled_counter = 0;
$filter_counter = 0;
$sub_item_counter = 0;
if (is_array($requirements_array) and count($requirements_array) >= 1) {
if ($runtime_data->is_object_data($this, "SAMPLE_" . $this->sample_id . "_FULFILLED_ITEM_TYPE_ARRAY") == true) {
$item_type_array = $runtime_data->read_object_data($this, "SAMPLE_" . $this->sample_id . "_FULFILLED_ITEM_TYPE_ARRAY");
} else {
$item_type_array = Item::list_types();
$runtime_data->write_object_data($this, "SAMPLE_" . $this->sample_id . "_FULFILLED_ITEM_TYPE_ARRAY", $item_type_array);
}
if ($runtime_data->is_object_data($this, "SAMPLE_" . $this->sample_id . "_FULFILLED_ITEM_ARRAY") == true) {
$item_array = $runtime_data->read_object_data($this, "SAMPLE_" . $this->sample_id . "_FULFILLED_ITEM_ARRAY");
} else {
$sample_item = new SampleItem($this->sample_id);
$item_array = $sample_item->get_sample_items_with_pos_id();
$runtime_data->write_object_data($this, "SAMPLE_" . $this->sample_id . "_FULFILLED_ITEM_ARRAY", $item_array);
}
foreach ($requirements_array as $key => $value) {
if ($value['xml_element'] == "item" and !$value['close']) {
$in_item = true;
$return_array[$counter]['element_type'] = "item";
$return_array[$counter]['display'] = true;
$return_array[$counter]['type'] = $value['type'];
$return_array[$counter]['name'] = $value['name'];
$return_array[$counter]['dialog'] = $value['dialog'];
$return_array[$counter]['handling_class'] = Item::get_handling_class_by_type($value['type']);
$return_array[$counter]['requirement'] = $value['requirement'];
if ($value['occurrence']) {
$return_array[$counter]['occurrence'] = $value['occurrence'];
} else {
$return_array[$counter]['occurrence'] = "once";
}
if ($value['pos_id']) {
$pos_id = $value['pos_id'];
$return_array[$counter]['pos_id'] = $value['pos_id'];
} else {
$pos_id = $counter;
$return_array[$counter]['pos_id'] = $counter;
}
if ($value['type'] != "parentsample") {
if (is_array($item_array) and count($item_array) >= 1) {
$item_instance_array = array();
foreach ($item_array as $item_key => $item_value) {
if (is_array($item_type_array) and count($item_type_array) >= 1) {
foreach ($item_type_array as $item_type => $item_handling_class) {
if (class_exists($item_handling_class)) {
if ($item_handling_class::is_kind_of($item_type, $item_value['item_id']) == true and $item_value['pos_id'] == $pos_id and $item_value['pos_id'] !== null and $pos_id !== null) {
$item_instance = $item_handling_class::get_instance_by_item_id($item_value['item_id'], true);
$return_array[$counter]['fulfilled'][$fulfilled_counter]['item_id'] = $item_value['item_id'];
$return_array[$counter]['fulfilled'][$fulfilled_counter]['id'] = $item_instance->get_item_object_id();
$return_array[$counter]['fulfilled'][$fulfilled_counter]['name'] = $item_instance->get_item_object_name();
$item_instance_array[$fulfilled_counter] = $item_instance;
$fulfilled_counter++;
break;
}
}
}
}
}
if ($value['inherit'] == "all" or $force_inherit == true) {
if (is_array($item_instance_array) and count($item_instance_array) >= 1 and $fulfilled_counter >= 1) {
foreach ($item_instance_array as $object_key => $object_value) {
if (is_object($object_value)) {
if ($object_value instanceof ItemHolderInterface) {
$return_array[$counter]['sub_items'][$object_key] = $object_value->get_item_add_information();
}
}
}
}
}
}
} else {
$parent_sample_array = SampleItem::list_sample_id_by_item_id_and_gid_and_parent($this->get_item_id(), $pos_id);
if (is_array($parent_sample_array) and count($parent_sample_array) >= 1) {
foreach ($parent_sample_array as $parent_sample_key => $parent_sample_value) {
$item_instance = new Sample($parent_sample_value);
$return_array[$counter]['fulfilled'][$fulfilled_counter]['item_id'] = $item_instance->get_item_id();
$return_array[$counter]['fulfilled'][$fulfilled_counter]['id'] = $parent_sample_value;
$return_array[$counter]['fulfilled'][$fulfilled_counter]['name'] = $item_instance->get_item_object_name();
$item_instance_array[$fulfilled_counter] = $item_instance;
$fulfilled_counter++;
//.........这里部分代码省略.........
示例6: count_data_search
/**
* @see Sample_WrapperInterface::count_data_search()
* @param string $string
* @param array $sample_id_array
* @param array $item_type_array
* @return integer
*/
public static function count_data_search($string, $sample_id_array, $item_type_array)
{
if (is_array($item_type_array) and count($item_type_array) >= 1) {
$string = strtolower(trim($string));
$string = str_replace("*", "%", $string);
$join_sql = "";
$where_sql = "";
foreach ($item_type_array as $key => $value) {
$handling_class = Item::get_handling_class_by_type($value);
if (class_exists($handling_class)) {
$join_sql .= $handling_class::get_sql_join($value);
if (($return_where_sql = $handling_class::get_sql_where($value)) != null) {
$return_where_sql = str_replace("{STRING}", $string, $return_where_sql);
if ($where_sql == "") {
$where_sql .= $return_where_sql;
} else {
$where_sql .= " OR " . $return_where_sql;
}
}
}
}
return Sample_Wrapper_Access::count_data_search($string, $sample_id_array, $select_sql_array, $join_sql, $where_sql);
} else {
return null;
}
}
示例7: interpret
private function interpret($word)
{
switch ($word) {
case "list":
if (is_array($this->temp)) {
array_push($this->stack, "list");
$this->result = $this->temp;
unset($this->temp);
}
break;
case "typeof":
array_push($this->stack, "typeof");
break;
case "getName":
$item_type_array = Item::list_types();
if (is_array($this->result)) {
$new_result = array();
foreach ($this->result as $key => $value) {
if (is_array($item_type_array) and count($item_type_array) >= 1) {
foreach ($item_type_array as $item_type_key => $item_type_value) {
if (class_exists($item_type_value)) {
if ($item_type_value::is_kind_of($item_type_key, $value)) {
$instance = $item_type_value::get_instance_by_item_id($value);
if (!in_array($instance->get_item_object_name(), $new_result)) {
array_push($new_result, $instance->get_item_object_name());
}
}
}
}
}
}
$this->result = $new_result;
} else {
if (is_array($item_type_array) and count($item_type_array) >= 1) {
foreach ($item_type_array as $key => $value) {
if (class_exists($value)) {
if ($value::is_kind_of($key, $this->stack[count($this->stack) - 1])) {
$instance = $value::get_instance_by_item_id($this->stack[count($this->stack) - 1]);
$this->result = $instance->get_item_object_name();
}
}
}
}
}
break;
case "parents":
$item_type_array = Item::list_types();
if (is_array($item_type_array) and count($item_type_array) >= 1) {
foreach ($item_type_array as $key => $value) {
if (class_exists($value)) {
if ($value::is_kind_of($key, $this->stack[count($this->stack) - 1])) {
$instance = $value::get_instance_by_item_id($this->stack[count($this->stack) - 1]);
$this->temp = $instance->get_item_parents();
}
}
}
}
break;
default:
if (is_numeric($word) or strpos(strtolower($word), "c") === 0) {
if ($this->stack[count($this->stack) - 1] == "typeof") {
if (strpos(strtolower($word), "c") === 0) {
$category_id = (int) str_replace("c", "", $word);
$type_id = null;
} else {
$category_id = null;
$type_id = $word;
}
$handling_class = $this->handling_class;
if (is_array($this->result) and count($this->result) >= 1) {
$new_result = array();
foreach ($this->result as $key => $value) {
if ($handling_class::is_type_or_category($category_id, $type_id, $value) == true) {
array_push($new_result, $value);
}
}
$this->result = $new_result;
}
}
} else {
$this->handling_class = Item::get_handling_class_by_type($word);
$handling_class = $this->handling_class;
if (class_exists($handling_class)) {
if (is_array($this->temp) and count($this->temp) >= 1) {
$new_temp = array();
foreach ($this->temp as $key => $value) {
if ($handling_class::is_kind_of($word, $value) == true) {
array_push($new_temp, $value);
}
}
$this->temp = $new_temp;
} else {
// Too slow
}
}
}
break;
}
if (count($this->string_array) == 0) {
return $this->result;
//.........这里部分代码省略.........