<?php

/**
* getLookupMainTableSettings - tests whether the lookup link exists between the tables
*
*  returns array with ProjectSettings class for main table if the link exists in project settings.
*  returns NULL otherwise
*/
function getLookupMainTableSettings($lookupTable, $mainTableShortName, $mainField, $desiredPage = "")
{
	global $lookupTableLinks;
	if(!isset($lookupTableLinks[$lookupTable]))
		return null;
	if(!isset($lookupTableLinks[$lookupTable][$mainTableShortName.".".$mainField]))
		return null;
	$arr = &$lookupTableLinks[$lookupTable][$mainTableShortName.".".$mainField];
	$effectivePage = $desiredPage;
	if(!isset($arr[$effectivePage]))
	{
		$effectivePage = PAGE_EDIT;
		if(!isset($arr[$effectivePage]))
		{
			if($desiredPage == "" && 0 < count($arr))
			{
				$effectivePage = $arr[0];
			}
			else
				return null;
		}
	}
	return new ProjectSettings($arr[$effectivePage]["table"], $effectivePage);
}

/** 
* $lookupTableLinks array stores all lookup links between tables in the project
*/
function InitLookupLinks()
{
	global $lookupTableLinks;

	$lookupTableLinks = array();

		if( !isset( $lookupTableLinks["tb_especiaçidades"] ) ) {
			$lookupTableLinks["tb_especiaçidades"] = array();
		}
		if( !isset( $lookupTableLinks["tb_especiaçidades"]["tb_consultas.especialidade"] )) {
			$lookupTableLinks["tb_especiaçidades"]["tb_consultas.especialidade"] = array();
		}
		$lookupTableLinks["tb_especiaçidades"]["tb_consultas.especialidade"]["edit"] = array("table" => "tb_consultas", "field" => "especialidade", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_centros_clinicos"] ) ) {
			$lookupTableLinks["tb_centros_clinicos"] = array();
		}
		if( !isset( $lookupTableLinks["tb_centros_clinicos"]["tb_consultas.local"] )) {
			$lookupTableLinks["tb_centros_clinicos"]["tb_consultas.local"] = array();
		}
		$lookupTableLinks["tb_centros_clinicos"]["tb_consultas.local"]["edit"] = array("table" => "tb_consultas", "field" => "local", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_medicos"] ) ) {
			$lookupTableLinks["tb_medicos"] = array();
		}
		if( !isset( $lookupTableLinks["tb_medicos"]["tb_consultas.medico"] )) {
			$lookupTableLinks["tb_medicos"]["tb_consultas.medico"] = array();
		}
		$lookupTableLinks["tb_medicos"]["tb_consultas.medico"]["edit"] = array("table" => "tb_consultas", "field" => "medico", "page" => "edit");
		if( !isset( $lookupTableLinks["tipos_exames"] ) ) {
			$lookupTableLinks["tipos_exames"] = array();
		}
		if( !isset( $lookupTableLinks["tipos_exames"]["exames.tipo"] )) {
			$lookupTableLinks["tipos_exames"]["exames.tipo"] = array();
		}
		$lookupTableLinks["tipos_exames"]["exames.tipo"]["edit"] = array("table" => "exames", "field" => "tipo", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_laborartorios"] ) ) {
			$lookupTableLinks["tb_laborartorios"] = array();
		}
		if( !isset( $lookupTableLinks["tb_laborartorios"]["tb_agenda_exame.laboratorio"] )) {
			$lookupTableLinks["tb_laborartorios"]["tb_agenda_exame.laboratorio"] = array();
		}
		$lookupTableLinks["tb_laborartorios"]["tb_agenda_exame.laboratorio"]["edit"] = array("table" => "tb_agenda_exame", "field" => "laboratorio", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_lista medicamentos"] ) ) {
			$lookupTableLinks["tb_lista medicamentos"] = array();
		}
		if( !isset( $lookupTableLinks["tb_lista medicamentos"]["tb_medicamentos.medicamento"] )) {
			$lookupTableLinks["tb_lista medicamentos"]["tb_medicamentos.medicamento"] = array();
		}
		$lookupTableLinks["tb_lista medicamentos"]["tb_medicamentos.medicamento"]["edit"] = array("table" => "tb_medicamentos", "field" => "medicamento", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_farmacias"] ) ) {
			$lookupTableLinks["tb_farmacias"] = array();
		}
		if( !isset( $lookupTableLinks["tb_farmacias"]["tb_peco_medicamento.Fornecedor"] )) {
			$lookupTableLinks["tb_farmacias"]["tb_peco_medicamento.Fornecedor"] = array();
		}
		$lookupTableLinks["tb_farmacias"]["tb_peco_medicamento.Fornecedor"]["edit"] = array("table" => "tb_peco_medicamento", "field" => "Fornecedor", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_catgitens_consumo"] ) ) {
			$lookupTableLinks["tb_catgitens_consumo"] = array();
		}
		if( !isset( $lookupTableLinks["tb_catgitens_consumo"]["tb_itens_higiene.categoria"] )) {
			$lookupTableLinks["tb_catgitens_consumo"]["tb_itens_higiene.categoria"] = array();
		}
		$lookupTableLinks["tb_catgitens_consumo"]["tb_itens_higiene.categoria"]["edit"] = array("table" => "tb_itens_higiene", "field" => "categoria", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_itens_consumo"] ) ) {
			$lookupTableLinks["tb_itens_consumo"] = array();
		}
		if( !isset( $lookupTableLinks["tb_itens_consumo"]["tb_itens_higiene.item"] )) {
			$lookupTableLinks["tb_itens_consumo"]["tb_itens_higiene.item"] = array();
		}
		$lookupTableLinks["tb_itens_consumo"]["tb_itens_higiene.item"]["edit"] = array("table" => "tb_itens_higiene", "field" => "item", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_catgitens_consumo"] ) ) {
			$lookupTableLinks["tb_catgitens_consumo"] = array();
		}
		if( !isset( $lookupTableLinks["tb_catgitens_consumo"]["tb_itens_consumo.categoria"] )) {
			$lookupTableLinks["tb_catgitens_consumo"]["tb_itens_consumo.categoria"] = array();
		}
		$lookupTableLinks["tb_catgitens_consumo"]["tb_itens_consumo.categoria"]["edit"] = array("table" => "tb_itens_consumo", "field" => "categoria", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_movimento"] ) ) {
			$lookupTableLinks["tb_movimento"] = array();
		}
		if( !isset( $lookupTableLinks["tb_movimento"]["tb_cbanc_movimentos.origem"] )) {
			$lookupTableLinks["tb_movimento"]["tb_cbanc_movimentos.origem"] = array();
		}
		$lookupTableLinks["tb_movimento"]["tb_cbanc_movimentos.origem"]["edit"] = array("table" => "tb_cbanc_movimentos", "field" => "origem", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_cbanc_movimentos"] ) ) {
			$lookupTableLinks["tb_cbanc_movimentos"] = array();
		}
		if( !isset( $lookupTableLinks["tb_cbanc_movimentos"]["tb_cbanc_movimentos.Regdoc"] )) {
			$lookupTableLinks["tb_cbanc_movimentos"]["tb_cbanc_movimentos.Regdoc"] = array();
		}
		$lookupTableLinks["tb_cbanc_movimentos"]["tb_cbanc_movimentos.Regdoc"]["edit"] = array("table" => "tb_cbanc_movimentos", "field" => "Regdoc", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_movimento"] ) ) {
			$lookupTableLinks["tb_movimento"] = array();
		}
		if( !isset( $lookupTableLinks["tb_movimento"]["resumo_movimentos.origem"] )) {
			$lookupTableLinks["tb_movimento"]["resumo_movimentos.origem"] = array();
		}
		$lookupTableLinks["tb_movimento"]["resumo_movimentos.origem"]["edit"] = array("table" => "Resumo_movimentos", "field" => "origem", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_lista medicamentos"] ) ) {
			$lookupTableLinks["tb_lista medicamentos"] = array();
		}
		if( !isset( $lookupTableLinks["tb_lista medicamentos"]["tb_estoque_medic.medicamento"] )) {
			$lookupTableLinks["tb_lista medicamentos"]["tb_estoque_medic.medicamento"] = array();
		}
		$lookupTableLinks["tb_lista medicamentos"]["tb_estoque_medic.medicamento"]["edit"] = array("table" => "tb_estoque_medic", "field" => "medicamento", "page" => "edit");
}

?>