<?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_categpdtos"] ) ) {
			$lookupTableLinks["tb_categpdtos"] = array();
		}
		if( !isset( $lookupTableLinks["tb_categpdtos"]["tb_produtos.categoria"] )) {
			$lookupTableLinks["tb_categpdtos"]["tb_produtos.categoria"] = array();
		}
		$lookupTableLinks["tb_categpdtos"]["tb_produtos.categoria"]["edit"] = array("table" => "tb_produtos", "field" => "categoria", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_componentes"] ) ) {
			$lookupTableLinks["tb_componentes"] = array();
		}
		if( !isset( $lookupTableLinks["tb_componentes"]["tb_mcalculo.componente"] )) {
			$lookupTableLinks["tb_componentes"]["tb_mcalculo.componente"] = array();
		}
		$lookupTableLinks["tb_componentes"]["tb_mcalculo.componente"]["edit"] = array("table" => "tb_mcalculo", "field" => "componente", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_materiais"] ) ) {
			$lookupTableLinks["tb_materiais"] = array();
		}
		if( !isset( $lookupTableLinks["tb_materiais"]["tb_mcalculo.material"] )) {
			$lookupTableLinks["tb_materiais"]["tb_mcalculo.material"] = array();
		}
		$lookupTableLinks["tb_materiais"]["tb_mcalculo.material"]["edit"] = array("table" => "tb_mcalculo", "field" => "material", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_custominuto"] ) ) {
			$lookupTableLinks["tb_custominuto"] = array();
		}
		if( !isset( $lookupTableLinks["tb_custominuto"]["tb_mcalculo.divisao"] )) {
			$lookupTableLinks["tb_custominuto"]["tb_mcalculo.divisao"] = array();
		}
		$lookupTableLinks["tb_custominuto"]["tb_mcalculo.divisao"]["edit"] = array("table" => "tb_mcalculo", "field" => "divisao", "page" => "edit");
		if( !isset( $lookupTableLinks["dbw_mkps"] ) ) {
			$lookupTableLinks["dbw_mkps"] = array();
		}
		if( !isset( $lookupTableLinks["dbw_mkps"]["tb_mcalculo.Lucro"] )) {
			$lookupTableLinks["dbw_mkps"]["tb_mcalculo.Lucro"] = array();
		}
		$lookupTableLinks["dbw_mkps"]["tb_mcalculo.Lucro"]["edit"] = array("table" => "tb_mcalculo", "field" => "Lucro", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_fornecedores"] ) ) {
			$lookupTableLinks["tb_fornecedores"] = array();
		}
		if( !isset( $lookupTableLinks["tb_fornecedores"]["tb_materiais.fornecedor"] )) {
			$lookupTableLinks["tb_fornecedores"]["tb_materiais.fornecedor"] = array();
		}
		$lookupTableLinks["tb_fornecedores"]["tb_materiais.fornecedor"]["edit"] = array("table" => "tb_materiais", "field" => "fornecedor", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_metricas"] ) ) {
			$lookupTableLinks["tb_metricas"] = array();
		}
		if( !isset( $lookupTableLinks["tb_metricas"]["tb_materiais.metrica"] )) {
			$lookupTableLinks["tb_metricas"]["tb_materiais.metrica"] = array();
		}
		$lookupTableLinks["tb_metricas"]["tb_materiais.metrica"]["edit"] = array("table" => "tb_materiais", "field" => "metrica", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_clientes"] ) ) {
			$lookupTableLinks["tb_clientes"] = array();
		}
		if( !isset( $lookupTableLinks["tb_clientes"]["tb_pedidos.clienteID"] )) {
			$lookupTableLinks["tb_clientes"]["tb_pedidos.clienteID"] = array();
		}
		$lookupTableLinks["tb_clientes"]["tb_pedidos.clienteID"]["edit"] = array("table" => "tb_pedidos", "field" => "clienteID", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_produtos"] ) ) {
			$lookupTableLinks["tb_produtos"] = array();
		}
		if( !isset( $lookupTableLinks["tb_produtos"]["tb_peditens.pdtoID"] )) {
			$lookupTableLinks["tb_produtos"]["tb_peditens.pdtoID"] = array();
		}
		$lookupTableLinks["tb_produtos"]["tb_peditens.pdtoID"]["edit"] = array("table" => "tb_peditens", "field" => "pdtoID", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_negociado"] ) ) {
			$lookupTableLinks["tb_negociado"] = array();
		}
		if( !isset( $lookupTableLinks["tb_negociado"]["tb_peditens.v_unit"] )) {
			$lookupTableLinks["tb_negociado"]["tb_peditens.v_unit"] = array();
		}
		$lookupTableLinks["tb_negociado"]["tb_peditens.v_unit"]["edit"] = array("table" => "tb_peditens", "field" => "v_unit", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_componentes"] ) ) {
			$lookupTableLinks["tb_componentes"] = array();
		}
		if( !isset( $lookupTableLinks["tb_componentes"]["dbw_precocalc.componente"] )) {
			$lookupTableLinks["tb_componentes"]["dbw_precocalc.componente"] = array();
		}
		$lookupTableLinks["tb_componentes"]["dbw_precocalc.componente"]["edit"] = array("table" => "dbw_precocalc", "field" => "componente", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_materiais"] ) ) {
			$lookupTableLinks["tb_materiais"] = array();
		}
		if( !isset( $lookupTableLinks["tb_materiais"]["dbw_precocalc.material"] )) {
			$lookupTableLinks["tb_materiais"]["dbw_precocalc.material"] = array();
		}
		$lookupTableLinks["tb_materiais"]["dbw_precocalc.material"]["edit"] = array("table" => "dbw_precocalc", "field" => "material", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_custominuto"] ) ) {
			$lookupTableLinks["tb_custominuto"] = array();
		}
		if( !isset( $lookupTableLinks["tb_custominuto"]["dbw_precocalc.divisao"] )) {
			$lookupTableLinks["tb_custominuto"]["dbw_precocalc.divisao"] = array();
		}
		$lookupTableLinks["tb_custominuto"]["dbw_precocalc.divisao"]["edit"] = array("table" => "dbw_precocalc", "field" => "divisao", "page" => "edit");
		if( !isset( $lookupTableLinks["dbw_mkps"] ) ) {
			$lookupTableLinks["dbw_mkps"] = array();
		}
		if( !isset( $lookupTableLinks["dbw_mkps"]["dbw_precocalc.markup"] )) {
			$lookupTableLinks["dbw_mkps"]["dbw_precocalc.markup"] = array();
		}
		$lookupTableLinks["dbw_mkps"]["dbw_precocalc.markup"]["edit"] = array("table" => "dbw_precocalc", "field" => "markup", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_clientes"] ) ) {
			$lookupTableLinks["tb_clientes"] = array();
		}
		if( !isset( $lookupTableLinks["tb_clientes"]["tb_orcamento_producao.cliente"] )) {
			$lookupTableLinks["tb_clientes"]["tb_orcamento_producao.cliente"] = array();
		}
		$lookupTableLinks["tb_clientes"]["tb_orcamento_producao.cliente"]["edit"] = array("table" => "tb_orcamento_producao", "field" => "cliente", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_produtos"] ) ) {
			$lookupTableLinks["tb_produtos"] = array();
		}
		if( !isset( $lookupTableLinks["tb_produtos"]["tb_orcamento_producao.pdto"] )) {
			$lookupTableLinks["tb_produtos"]["tb_orcamento_producao.pdto"] = array();
		}
		$lookupTableLinks["tb_produtos"]["tb_orcamento_producao.pdto"]["edit"] = array("table" => "tb_orcamento_producao", "field" => "pdto", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_categ_despesas"] ) ) {
			$lookupTableLinks["tb_categ_despesas"] = array();
		}
		if( !isset( $lookupTableLinks["tb_categ_despesas"]["tb_despesas.categoria"] )) {
			$lookupTableLinks["tb_categ_despesas"]["tb_despesas.categoria"] = array();
		}
		$lookupTableLinks["tb_categ_despesas"]["tb_despesas.categoria"]["edit"] = array("table" => "tb_despesas", "field" => "categoria", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_contas_desp"] ) ) {
			$lookupTableLinks["tb_contas_desp"] = array();
		}
		if( !isset( $lookupTableLinks["tb_contas_desp"]["tb_despesas.conta"] )) {
			$lookupTableLinks["tb_contas_desp"]["tb_despesas.conta"] = array();
		}
		$lookupTableLinks["tb_contas_desp"]["tb_despesas.conta"]["edit"] = array("table" => "tb_despesas", "field" => "conta", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_categ_despesas"] ) ) {
			$lookupTableLinks["tb_categ_despesas"] = array();
		}
		if( !isset( $lookupTableLinks["tb_categ_despesas"]["w_despesas.categoria"] )) {
			$lookupTableLinks["tb_categ_despesas"]["w_despesas.categoria"] = array();
		}
		$lookupTableLinks["tb_categ_despesas"]["w_despesas.categoria"]["edit"] = array("table" => "w_despesas", "field" => "categoria", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_contas_desp"] ) ) {
			$lookupTableLinks["tb_contas_desp"] = array();
		}
		if( !isset( $lookupTableLinks["tb_contas_desp"]["w_despesas.conta"] )) {
			$lookupTableLinks["tb_contas_desp"]["w_despesas.conta"] = array();
		}
		$lookupTableLinks["tb_contas_desp"]["w_despesas.conta"]["edit"] = array("table" => "w_despesas", "field" => "conta", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_produtos"] ) ) {
			$lookupTableLinks["tb_produtos"] = array();
		}
		if( !isset( $lookupTableLinks["tb_produtos"]["w_faturados.pdtoID"] )) {
			$lookupTableLinks["tb_produtos"]["w_faturados.pdtoID"] = array();
		}
		$lookupTableLinks["tb_produtos"]["w_faturados.pdtoID"]["edit"] = array("table" => "w_faturados", "field" => "pdtoID", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_negociado"] ) ) {
			$lookupTableLinks["tb_negociado"] = array();
		}
		if( !isset( $lookupTableLinks["tb_negociado"]["w_faturados.v_unit"] )) {
			$lookupTableLinks["tb_negociado"]["w_faturados.v_unit"] = array();
		}
		$lookupTableLinks["tb_negociado"]["w_faturados.v_unit"]["edit"] = array("table" => "w_faturados", "field" => "v_unit", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_produtos"] ) ) {
			$lookupTableLinks["tb_produtos"] = array();
		}
		if( !isset( $lookupTableLinks["tb_produtos"]["w_nao_faturados.pdtoID"] )) {
			$lookupTableLinks["tb_produtos"]["w_nao_faturados.pdtoID"] = array();
		}
		$lookupTableLinks["tb_produtos"]["w_nao_faturados.pdtoID"]["edit"] = array("table" => "w_Nao_faturados", "field" => "pdtoID", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_negociado"] ) ) {
			$lookupTableLinks["tb_negociado"] = array();
		}
		if( !isset( $lookupTableLinks["tb_negociado"]["w_nao_faturados.v_unit"] )) {
			$lookupTableLinks["tb_negociado"]["w_nao_faturados.v_unit"] = array();
		}
		$lookupTableLinks["tb_negociado"]["w_nao_faturados.v_unit"]["edit"] = array("table" => "w_Nao_faturados", "field" => "v_unit", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_componentes"] ) ) {
			$lookupTableLinks["tb_componentes"] = array();
		}
		if( !isset( $lookupTableLinks["tb_componentes"]["w_resumo_calculo.componente"] )) {
			$lookupTableLinks["tb_componentes"]["w_resumo_calculo.componente"] = array();
		}
		$lookupTableLinks["tb_componentes"]["w_resumo_calculo.componente"]["edit"] = array("table" => "w_resumo_calculo", "field" => "componente", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_materiais"] ) ) {
			$lookupTableLinks["tb_materiais"] = array();
		}
		if( !isset( $lookupTableLinks["tb_materiais"]["w_resumo_calculo.material"] )) {
			$lookupTableLinks["tb_materiais"]["w_resumo_calculo.material"] = array();
		}
		$lookupTableLinks["tb_materiais"]["w_resumo_calculo.material"]["edit"] = array("table" => "w_resumo_calculo", "field" => "material", "page" => "edit");
		if( !isset( $lookupTableLinks["tb_custominuto"] ) ) {
			$lookupTableLinks["tb_custominuto"] = array();
		}
		if( !isset( $lookupTableLinks["tb_custominuto"]["w_resumo_calculo.divisao"] )) {
			$lookupTableLinks["tb_custominuto"]["w_resumo_calculo.divisao"] = array();
		}
		$lookupTableLinks["tb_custominuto"]["w_resumo_calculo.divisao"]["edit"] = array("table" => "w_resumo_calculo", "field" => "divisao", "page" => "edit");
		if( !isset( $lookupTableLinks["dbw_mkps"] ) ) {
			$lookupTableLinks["dbw_mkps"] = array();
		}
		if( !isset( $lookupTableLinks["dbw_mkps"]["w_resumo_calculo.markup"] )) {
			$lookupTableLinks["dbw_mkps"]["w_resumo_calculo.markup"] = array();
		}
		$lookupTableLinks["dbw_mkps"]["w_resumo_calculo.markup"]["edit"] = array("table" => "w_resumo_calculo", "field" => "markup", "page" => "edit");
}

?>