Advertisement
Guest User

compo

a guest
Jul 16th, 2015
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 14.74 KB | None | 0 0
  1. <cfcomponent extends="farcry.core.packages.types.types" displayname="Products"
  2. hint="Products for the site"
  3. bSchedule="true" bFriendly="true" fualias="products"
  4. bObjectBroker="true">
  5. <cfproperty
  6. name="Name" type="string" hint="Product Name." required="no" default=""
  7. ftseq="1" ftfieldset="Main Details" ftwizardStep="Main Details" ftlabel="Name" ftvalidation="required" />
  8. <cfproperty
  9. name="Sku" type="string" hint="SKU number." required="no" default=""
  10. ftseq="4" ftfieldset="Main Details" ftwizardStep="Main Details" ftlabel="Sku" />
  11. <cfproperty
  12. name="ListPrice" type="string" required="no" default=""
  13. ftseq="6" ftfieldset="Main Details" ftwizardStep="Main Details" ftlabel="List Price" ftstyle="width:100px;" />
  14. <cfproperty
  15. name="AskingPrice" type="string" required="no" default=""
  16. ftseq="7" ftfieldset="Main Details" ftwizardStep="Main Details" ftlabel="Asking Price" ftstyle="width:100px;" />
  17. <cfproperty
  18. name="SalePrice" type="string" required="no" default=""
  19. ftseq="8" ftfieldset="Main Details" ftwizardStep="Main Details" ftlabel="Sale Price" ftstyle="width:100px;" />
  20. <cfproperty
  21. name="Weight" type="string" hint="Product Weight." required="no" default=""
  22. ftseq="9" ftfieldset="Main Details" ftwizardStep="Main Details" ftlabel="Weight" ftstyle="width:100px;" />
  23.  
  24. <cfproperty
  25. name="aManuf" type="uuid" required="no" default=""
  26. ftseq="10" ftfieldset="Main Details" ftwizardStep="Main Details" ftlabel="Manufacturer"
  27. ftJoin="manufacturer" bSyncStatus="true" ftJoinAllowDuplicates="false" />
  28. <cfproperty ftseq="11" ftfieldset="Main Details" ftwizardStep="Main Details" name="modelCat" type="longchar"
  29. hint="categorisation." required="no" default="" fttype="category" ftAlias="productcats"
  30. ftlabel="Category" />
  31. <cfproperty ftseq="12" ftfieldset="Main Details" ftwizardStep="Main Details" name="prodSize" type="longchar"
  32. hint="categorisation." required="no" default="" fttype="category" ftAlias="size"
  33. ftlabel="Size" />
  34. <cfproperty ftseq="13" ftfieldset="Main Details" ftwizardStep="Main Details" name="prodFlavor" type="longchar"
  35. hint="categorisation." required="no" default="" fttype="category" ftAlias="flavor"
  36. ftlabel="Flavor" />
  37. <cfproperty
  38. name="available" type="boolean" required="no" default=""
  39. ftseq="14" ftfieldset="Main Details" ftwizardStep="Main Details" ftlabel="Available" />
  40. <cfproperty
  41. name="Featured" type="boolean" required="no" default=""
  42. ftseq="15" ftfieldset="Main Details" ftwizardStep="Main Details" ftlabel="Featured Product" />
  43.  
  44. <cfproperty
  45. name="Quantity" type="string" hint="Product Quantity." required="no" default=""
  46. ftseq="17" ftfieldset="Addtinonal Details" ftwizardStep="Addtinonal Details" ftlabel="Quantity" />
  47.  
  48. <cfproperty
  49. name="displayMethod" type="string" hint="Display method to render." required="yes" default="displayPageStandard"
  50. ftseq="20" ftfieldset="Addtinonal Details" ftwizardStep="Addtinonal Details" ftlabel="Content Template"
  51. fttype="webskin" ftprefix="displayPage" />
  52.  
  53. <cfproperty
  54. name="publishDate" type="date" hint="The date that a news object is sent live and appears on the public website" required="no" default=""
  55. ftseq="22" ftfieldset="Publishing Details" ftwizardStep="Addtinonal Details" ftlabel="Go Live Date"
  56. ftType="datetime" ftDefaultType="Evaluate" ftDefault="now()" ftDateFormatMask="dd mmm yyyy" ftTimeFormatMask="hh:mm tt" ftToggleOffDateTime="false" />
  57. <cfproperty
  58. name="expiryDate" type="date" hint="The date that a news object is removed from the web site" required="no" default=""
  59. ftseq="23" ftfieldset="Publishing Details" ftwizardStep="Addtinonal Details" ftlabel="Expire Product Date"
  60. ftType="datetime" ftDefaultType="Evaluate" ftDefault="DateAdd('yyyy', 200, now())" ftDateFormatMask="dd mmm yyyy" ftTimeFormatMask="hh:mm tt" ftToggleOffDateTime="true" />
  61.  
  62. <cfproperty
  63. name="teaserImage" type="UUID" hint="Teaser image to display." required="no" default=""
  64. ftseq="30" ftfieldset="Product Body" ftwizardStep="Product Body" ftlabel="Teaser Image"
  65. fttype="uuid" ftjoin="dmImage"
  66. fthelptitle="Teaser Requirements"
  67. fthelpsection="Teaser images can only be selected from the pool of associated media images. You must add to the media library before selecting." />
  68. <cfproperty
  69. name="Teaser" type="longchar" hint="Teaser text." required="no" default=""
  70. ftseq="31" ftfieldset="Product Body" ftwizardStep="Product Body" ftlabel="Story Teaser" />
  71. <cfproperty
  72. name="Body" type="longchar" hint="Main body of content." required="no" default=""
  73. ftseq="32" ftfieldset="Product Body" ftwizardStep="Product Body" ftlabel="Comparison"
  74. ftType="RichText"
  75. ftImageArrayField="aObjectIDs" ftImageTypename="dmImage" ftImageField="StandardImage"
  76. ftTemplateTypeList="dmImage,dmfile,dmflash,dmNavigation,dmHTML"
  77. ftTemplateWebskinPrefixList="insertHTML" />
  78. <cfproperty
  79. name="Description" type="longchar" hint="Main body of content." required="no" default=""
  80. ftseq="33" ftfieldset="Product Body" ftwizardStep="Product Body" ftlabel="Description"
  81. ftType="RichText"
  82. ftImageArrayField="aObjectIDs" ftImageTypename="dmImage" ftImageField="StandardImage"
  83. ftTemplateTypeList="dmImage,dmfile,dmflash,dmNavigation,dmHTML"
  84. ftTemplateWebskinPrefixList="insertHTML" />
  85. <cfproperty
  86. name="Benefits" type="longchar" hint="Main body of content." required="no" default=""
  87. ftseq="34" ftfieldset="Product Body" ftwizardStep="Product Body" ftlabel="Benefits"
  88. ftType="RichText"
  89. ftImageArrayField="aObjectIDs" ftImageTypename="dmImage" ftImageField="StandardImage"
  90. ftTemplateTypeList="dmImage,dmfile,dmflash,dmNavigation,dmHTML"
  91. ftTemplateWebskinPrefixList="insertHTML" />
  92. <cfproperty
  93. name="Ingredients" type="longchar" hint="Main body of content." required="no" default=""
  94. ftseq="35" ftfieldset="Product Body" ftwizardStep="Product Body" ftlabel="Ingredients"
  95. ftType="RichText"
  96. ftImageArrayField="aObjectIDs" ftImageTypename="dmImage" ftImageField="StandardImage"
  97. ftTemplateTypeList="dmImage,dmfile,dmflash,dmNavigation,dmHTML"
  98. ftTemplateWebskinPrefixList="insertHTML" />
  99. <cfproperty
  100. name="RecommendedUse" type="longchar" hint="Main body of content." required="no" default=""
  101. ftseq="36" ftfieldset="Product Body" ftwizardStep="Product Body" ftlabel="Usage"
  102. ftType="RichText"
  103. ftImageArrayField="aObjectIDs" ftImageTypename="dmImage" ftImageField="StandardImage"
  104. ftTemplateTypeList="dmImage,dmfile,dmflash,dmNavigation,dmHTML"
  105. ftTemplateWebskinPrefixList="insertHTML" />
  106. <cfproperty
  107. name="ProdLabel" type="longchar" hint="Main body of content." required="no" default=""
  108. ftseq="37" ftfieldset="Product Body" ftwizardStep="Product Body" ftlabel="Prod Label"
  109. ftType="RichText"
  110. ftImageArrayField="aObjectIDs" ftImageTypename="dmImage" ftImageField="StandardImage"
  111. ftTemplateTypeList="dmImage,dmfile,dmflash,dmNavigation,dmHTML"
  112. ftTemplateWebskinPrefixList="insertHTML" />
  113. <cfproperty
  114. name="Advantages" type="longchar" hint="Main body of content." required="no" default=""
  115. ftseq="38" ftfieldset="Product Body" ftwizardStep="Product Body" ftlabel="Advantages"
  116. ftType="RichText"
  117. ftImageArrayField="aObjectIDs" ftImageTypename="dmImage" ftImageField="StandardImage"
  118. ftTemplateTypeList="dmImage,dmfile,dmflash,dmNavigation,dmHTML"
  119. ftTemplateWebskinPrefixList="insertHTML" />
  120.  
  121. <cfproperty
  122. name="weight" type="string" hint="" required="no" default=""
  123. ftseq="40" ftfieldset="Main Details" ftwizardStep="Model Details" ftlabel="Year" ftstyle="width:25px;" />
  124. <cfproperty
  125. name="aModelIds" type="array" hint="Models that match main battery type." required="no" default=""
  126. ftseq="47" ftfieldset="Main Details" ftwizardStep="Model Details" ftlabel="Models"
  127. ftJoin="mdwModel" bSyncStatus="true" ftJoinAllowDuplicates="false" />
  128. <cfproperty
  129. name="aObjectIds" type="array" hint="Mixed media content for this content." required="no" default=""
  130. ftseq="50" ftfieldset="Main Details" ftwizardStep="Model Details" ftlabel="Attached Media Library"
  131. ftJoin="dmImage" bSyncStatus="true" ftJoinAllowDuplicates="false" />
  132.  
  133. <cfproperty
  134. name="fuName" type="string" hint="" required="no" default=""
  135. ftseq="200" ftfieldset="Main Details" ftwizardStep="Model Details" ftlabel="Friendly Name" />
  136.  
  137.  
  138. <!--- system attribute --->
  139.  
  140.  
  141. <cffunction name="AfterSave" access="public" output="false" returntype="void">
  142. <cfargument name="stProperties" required="yes" type="struct" hint="A structure containing the contents of the properties that were saved to the object.">
  143.  
  144.  
  145.  
  146. <cfset var oProd=createobject("component",application.stCOAPI.product.packagepath)>
  147. <cfset var tmp=application.fc.lib.objectbroker.init(bFlush=true)>
  148. <!--->
  149. <cfset var nullObj=oProd.indexItem(stProperties.objectid)>
  150. --->
  151. </cffunction>
  152.  
  153. <cffunction name="indexItem" access="public" output="false" returntype="void">
  154. <cfargument name="objectid" required="yes" type="string">
  155. <cfthread action="run" name="prod_#createuuid()#" objectid="#arguments.objectid#">
  156. <cfset var q=querynew("meh")>
  157. <cfquery datasource="battery_farcry" name="q" >
  158. SELECT objectid
  159. FROM product
  160. where objectid="#objectid#"
  161. </cfquery>
  162.  
  163. <cfset var oProd=createobject("component",application.stCOAPI.product.packagepath)>
  164. <cfset var oModel=createobject("component",application.stCOAPI.mdwModel.packagepath)>
  165. <cfset var oManuf=createobject("component",application.stCOAPI.manufacturer.packagepath)>
  166. <cfset var oCat=createobject("component",application.stCOAPI.dmcategory.packagepath)>
  167. <cfset var curLoc=ExpandPath('/import')>
  168. <cfset var i=0>
  169. <cfset var qryNewPrd=querynew('objectid,
  170. prodName,
  171. prodVolt,
  172. prodAmp,
  173. prodWeight,
  174. prodConnect,
  175. prodComp,
  176. prodDantonaDet,
  177. prodDimension,
  178. prodYear,
  179. manufName,
  180. catName,
  181. modelName,
  182. modelDet,
  183. modelDet2,
  184. modelYear,
  185. modelCC,
  186. modelWeight,
  187. combineName,
  188. combineManufName,
  189. combineManufProd')>
  190.  
  191. <cfloop query="q" >
  192. <cfset var stProd=oProd.getData(q.objectid)>
  193. <cfset var aMod=arraynew(1)>
  194. <cfset var myXML="">
  195.  
  196.  
  197. <cfif arraylen(stProd.amodelids)>
  198. <cfloop from="1" to="#arraylen(stProd.amodelids)#" index="i">
  199. <cftry>
  200. <cfset var stModel=oModel.getData(stProd.amodelids[i])>
  201. <cfset var stManuf=oManuf.getData(stModel.aManuf)>
  202. <cfset var stCat=oCat.getData(stModel.modelCat)>
  203. <cfscript>
  204. QueryAddRow(qryNewPrd,1);
  205. querysetcell(qryNewPrd,"objectid",'#stModel.objectid#~#stprod.objectid#');
  206. querysetcell(qryNewPrd,"prodName","#replace(stProd.name,'&','&amp;','ALL')#");
  207. querysetcell(qryNewPrd,"prodVolt",'#stProd.volts#');
  208. querysetcell(qryNewPrd,"prodAmp",'#stProd.amps#');
  209. querysetcell(qryNewPrd,"prodWeight",'#stProd.weight#');
  210. querysetcell(qryNewPrd,"prodConnect","#replace(stProd.connector,'&','&amp;','ALL')#");
  211. querysetcell(qryNewPrd,"prodComp","#replace(stProd.composition,'&','&amp;','ALL')#");
  212. querysetcell(qryNewPrd,"prodDantonaDet","#REReplaceNoCase(stprod.dantonaDetail,'[\r\n]',"",'all')#");
  213. querysetcell(qryNewPrd,"prodDimension","#stprod.dimension#");
  214. querysetcell(qryNewPrd,"prodYear","#stprod.year#");
  215. querysetcell(qryNewPrd,"manufName","#replace(stManuf.name,'&','&amp;','ALL')#");
  216. querysetcell(qryNewPrd,"catName","#replace(stCat.CATEGORYLABEL,'&','&amp;','ALL')#");
  217. querysetcell(qryNewPrd,"modelName","#replace(stmodel.modelname,'&','&amp;','ALL')#");
  218. querysetcell(qryNewPrd,"modelDet","#replace(stmodel.details1,'&','&amp;','ALL')#");
  219. querysetcell(qryNewPrd,"modelDet2","#replace(stmodel.details2,'&','&amp;','ALL')#");
  220. querysetcell(qryNewPrd,"modelYear","#stmodel.year#");
  221. querysetcell(qryNewPrd,"modelCC","#stmodel.cc#");
  222. querysetcell(qryNewPrd,"modelWeight","#stmodel.weight#");
  223. querysetcell(qryNewPrd,"combineName","#replace(stManuf.name,'&','&amp;','ALL')# #replace(stmodel.modelname,'&','&amp;','ALL')# #replace(stProd.name,'&','&amp;','ALL')#");
  224. querysetcell(qryNewPrd,"combineManufName","#replace(stManuf.name,'&','&amp;','ALL')# #replace(stmodel.modelname,'&','&amp;','ALL')#");
  225. querysetcell(qryNewPrd,"combineManufProd","#replace(stManuf.name,'&','&amp;','ALL')# #replace(stProd.name,'&','&amp;','ALL')#");
  226. </cfscript>
  227. <cfcatch></cfcatch>
  228. </cftry>
  229. </cfloop>
  230.  
  231.  
  232. </cfif>
  233.  
  234. </cfloop>
  235.  
  236.  
  237.  
  238.  
  239.  
  240. <cfindex
  241. collection="new_battery"
  242. action="update"
  243. query="qryNewPrd"
  244. type="custom"
  245. key="objectid"
  246. body="objectid,prodName,prodVolt,prodAmp,prodWeight,prodConnect,prodComp,prodDantonaDet,prodDimension,prodYear,manufName,catName,modelName,modelDet,modelDet2,modelYear,modelCC,modelWeight,combineName,combineManufName"
  247. title="combineName"
  248. custom1="combineName"
  249. custom2="combineNameManuf"
  250. custom3="combineManufProd"
  251. custom4="prodName"
  252. />
  253.  
  254. <cffile action="write" file="#curLoc#/xmlDoc.txt" output="<add>">
  255.  
  256. <cfloop query="q">
  257. <cfset stProd=oProd.getData(q.objectid)>
  258. <cfset aMod=arraynew(1)>
  259. <cfset myXML="">
  260.  
  261. <cftry>
  262. <cfif arraylen(stProd.amodelids)>
  263. <cfloop from="1" to="#arraylen(stProd.amodelids)#" index="i">
  264. <cfset stModel=oModel.getData(stProd.amodelids[i])>
  265. <cfset stManuf=oManuf.getData(stModel.aManuf)>
  266. <cfset stCat=oCat.getData(stModel.modelCat)>
  267. <cfsavecontent variable="myXML">
  268. <cfoutput>
  269. <doc>
  270. <field name="id">#stModel.objectid#</field>
  271. <field name="prodName">#replace(stProd.name,'&','&amp;','ALL')#</field>
  272. <field name="prodVolts">#stProd.volts#</field>
  273. <field name="prodAmps">#stProd.amps#</field>
  274. <field name="prodWeight">#stProd.weight#</field>
  275. <field name="prodConnector">#replace(stProd.connector,'&','&amp;','ALL')#</field>
  276. <field name="prodComposition">#replace(stProd.composition,'&','&amp;','ALL')#</field>
  277. <field name="prodDantonaDetail">#REReplaceNoCase(stprod.dantonaDetail,"[\r\n]","",'all')#</field>
  278. <field name="prodDantonaBat">#stprod.dantonaBat#</field>
  279. <field name="prodDimension">#stprod.dimension#</field>
  280. <field name="prodYear">#stprod.year#</field>
  281. <field name="manufName">#replace(stManuf.name,'&','&amp;','ALL')#</field>
  282. <field name="catName">#replace(stCat.CATEGORYLABEL,'&','&amp;','ALL')#</field>
  283. <field name="modelName">#replace(stmodel.modelname,'&','&amp;','ALL')#</field>
  284. <field name="modelDetails1">#replace(stmodel.details1,'&','&amp;','ALL')#</field>
  285. <field name="modelDetails2">#replace(stmodel.details2,'&','&amp;','ALL')#</field>
  286. <field name="modelYear">#stmodel.year#</field>
  287. <field name="modelCC">#stmodel.cc#</field>
  288. <field name="modelWeight">#stmodel.weight#</field>
  289. </doc>
  290. </cfoutput>
  291. </cfsavecontent>
  292. <cffile action="append" file="#curLoc#/xmlDoc.txt" output="#myXML#">
  293.  
  294. </cfloop>
  295.  
  296. </cfif>
  297. <cfcatch><cfdump var="#cfcatch#"></cfcatch>
  298. </cftry>
  299. </cfloop>
  300. <cffile action="append" file="#curLoc#/xmlDoc.txt" output="</add>">
  301. <cfset var meh="">
  302. <cfhttp url="http://#cgi.http_host#/import/uploadXML.cfm" method="post" result="meh">
  303. </cfthread>
  304. </cffunction>
  305. </cfcomponent>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement