Advertisement
fabiobozzo

setCategorieHomeModello

Jun 30th, 2015
498
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <cffunction name="setCategorieHomeModello" returntype="void" access="public">
  2.         <cfargument type="string" name="categorieHome" required="true" />
  3.         <cfargument type="numeric" name="marchioid" required="true" />
  4.         <cfargument type="numeric" name="tipologia" required="true" />
  5.         <cfargument type="string" name="nome" required="true" />
  6.  
  7.         <cfif APPLICATION.Utenti.canViewFunzioniRiservate(ruoli=THIS.ruoliAbilitati)>
  8.             <cftransaction>
  9.                 <cfquery name="LOCAL.q">
  10.                     SELECT
  11.                         *
  12.                     FROM
  13.                         ottica_categorie_modelli_home
  14.                     WHERE
  15.                         marchioid = <cfqueryparam cfsqltype="cf_sql_integer" value="#ARGUMENTS.marchioid#" />
  16.                         AND tipologia = <cfqueryparam cfsqltype="cf_sql_integer" value="#ARGUMENTS.tipologia#" />
  17.                         AND nome = <cfqueryparam cfsqltype="cf_sql_varchar" value="#ARGUMENTS.nome#" />
  18.                 </cfquery>
  19.                 <cfset LOCAL.ordinamento = {} />
  20.                 <cfset LOCAL.ordinamento[ARGUMENTS.marchioid] = {} />
  21.                 <cfset LOCAL.ordinamento[ARGUMENTS.marchioid][ARGUMENTS.tipologia] = {} />
  22.                 <cfset LOCAL.ordinamento[ARGUMENTS.marchioid][ARGUMENTS.tipologia][ARGUMENTS.nome] = {} />
  23.                 <cfloop query="LOCAL.q">                   
  24.                     <cfset LOCAL.ordinamento[LOCAL.q.marchioid][LOCAL.q.tipologia][LOCAL.q.nome][LOCAL.q.id_categoria] = LOCAL.q.ordine />
  25.                 </cfloop>
  26.                 <cfquery>
  27.                     DELETE FROM
  28.                         ottica_categorie_modelli_home
  29.                     WHERE
  30.                         marchioid = <cfqueryparam cfsqltype="cf_sql_integer" value="#ARGUMENTS.marchioid#" />
  31.                         AND tipologia = <cfqueryparam cfsqltype="cf_sql_integer" value="#ARGUMENTS.tipologia#" />
  32.                         AND nome = <cfqueryparam cfsqltype="cf_sql_varchar" value="#ARGUMENTS.nome#" />
  33.                 </cfquery>
  34.                 <cfloop list="#ARGUMENTS.categorieHome#" index="LOCAL.catId">
  35.                     <cfset LOCAL.setOrdine = 999 />
  36.                     <cfif structKeyExists(LOCAL.ordinamento,ARGUMENTS.marchioid) AND
  37.                         structKeyExists(LOCAL.ordinamento[ARGUMENTS.marchioid],ARGUMENTS.tipologia) AND
  38.                         structKeyExists(LOCAL.ordinamento[ARGUMENTS.marchioid][ARGUMENTS.tipologia],ARGUMENTS.nome) AND
  39.                         structKeyExists(LOCAL.ordinamento[ARGUMENTS.marchioid][ARGUMENTS.tipologia][ARGUMENTS.nome],LOCAL.catId)>
  40.                             <cfset LOCAL.setOrdine = LOCAL.ordinamento[ARGUMENTS.marchioid][ARGUMENTS.tipologia][ARGUMENTS.nome][LOCAL.catId] />
  41.                     </cfif>
  42.                     <cfquery>
  43.                         INSERT INTO
  44.                             ottica_categorie_modelli_home
  45.                         SET
  46.                             id_categoria = <cfqueryparam cfsqltype="cf_sql_integer" value="#LOCAL.catId#" />,
  47.                             marchioid = <cfqueryparam cfsqltype="cf_sql_integer" value="#ARGUMENTS.marchioid#" />,
  48.                             tipologia = <cfqueryparam cfsqltype="cf_sql_integer" value="#ARGUMENTS.tipologia#" />,
  49.                             nome = <cfqueryparam cfsqltype="cf_sql_varchar" value="#ARGUMENTS.nome#" />,
  50.                             ordine = <cfqueryparam cfsqltype="cf_sql_integer" value="#LOCAL.setOrdine#" />
  51.                     </cfquery>
  52.                 </cfloop>
  53.             </cftransaction>
  54.         </cfif>
  55.     </cffunction>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement