| [5] | 1 | <cfsetting enablecfoutputonly=true> |
|---|
| 2 | <cfprocessingdirective pageencoding="utf-8"> |
|---|
| 3 | <!--- |
|---|
| 4 | Name : pod.cfm |
|---|
| 5 | Author : Scott Pinkston |
|---|
| 6 | Created : October 13, 2006 |
|---|
| 7 | Last Updated : |
|---|
| 8 | History : initial |
|---|
| 9 | ---> |
|---|
| 10 | |
|---|
| 11 | <cfset dir = expandPath("../includes/pods")> |
|---|
| 12 | |
|---|
| 13 | <!--- |
|---|
| 14 | Check for adding pods, return to the pods page after processing |
|---|
| 15 | ----> |
|---|
| 16 | <cfif structKeyExists(form,"newPod") and len(form.newpod)> |
|---|
| 17 | |
|---|
| 18 | <cfset newPodTitle = form.newPod> |
|---|
| 19 | <cfset form.newPod = reReplace(form.newPod," ","_","ALL")> |
|---|
| 20 | <cfset form.newPod = reReplace(form.newPod,",","","ALL")> |
|---|
| 21 | <cfset form.newPod = reReplace(form.newPod,"'","","ALL")> |
|---|
| 22 | <cfset form.newPod = rereplace(form.newPod,".cfm","","ALL")> |
|---|
| 23 | |
|---|
| 24 | <cfif fileExists(dir & "/" & form.newPod & ".cfm") > |
|---|
| 25 | |
|---|
| 26 | <cffile action="write" output="#form.newPodText#" file="#dir#/#form.newPod#.cfm" nameconflict="overwrite"> |
|---|
| 27 | |
|---|
| 28 | <cfelse> |
|---|
| 29 | |
|---|
| 30 | <cfset form.newPodText = reReplace(form.newPodText,"__PAGENAME__","#form.newPod#.cfm")> |
|---|
| 31 | <cfset form.newPodText = reReplace(form.newPodText,"__PAGENAME__","#form.newPod#")> |
|---|
| 32 | <cfset form.newPodText = reReplace(form.newPodText,"__TITLE__","#newPodTitle#")> |
|---|
| 33 | |
|---|
| 34 | <cffile action="write" output="#form.newPodText#" file="#dir#/#form.newPod#.cfm"> |
|---|
| 35 | </cfif> |
|---|
| 36 | |
|---|
| 37 | <cflocation url="pods.cfm" addtoken="no"> |
|---|
| 38 | </cfif> |
|---|
| 39 | |
|---|
| 40 | <!--- |
|---|
| 41 | Sorting the forms based on code from this thread: |
|---|
| 42 | http://www.houseoffusion.com/groups/CF-Talk/thread.cfm/threadid:32626 |
|---|
| 43 | ---> |
|---|
| 44 | |
|---|
| 45 | <cfscript> |
|---|
| 46 | function sortForm(f) { |
|---|
| 47 | var sortArray = arrayNew(2); |
|---|
| 48 | var stForm = Duplicate(f); |
|---|
| 49 | var keys = structKeyArray(stForm); |
|---|
| 50 | var sortedKeys = ""; |
|---|
| 51 | |
|---|
| 52 | for (i=1; i LTE arrayLen(keys); i=i+1) { |
|---|
| 53 | if (NOT isNumeric(stForm[keys[i]])) { |
|---|
| 54 | structDelete(stForm, keys[i]); |
|---|
| 55 | } |
|---|
| 56 | } |
|---|
| 57 | |
|---|
| 58 | sortedKeys = structSort(stForm, 'numeric'); |
|---|
| 59 | for (i=1; i LTE arrayLen(sortedKeys); i=i+1) { |
|---|
| 60 | sortArray[arrayLen(sortArray)+1][1] = sortedKeys[i]; |
|---|
| 61 | sortArray[arrayLen(sortArray)][2] = stForm[sortedKeys[i]]; |
|---|
| 62 | } |
|---|
| 63 | return sortArray; |
|---|
| 64 | } |
|---|
| 65 | </cfscript> |
|---|
| 66 | |
|---|
| 67 | <!--- sort the form data ----> |
|---|
| 68 | <cfset formSorted = sortForm(form)> |
|---|
| 69 | |
|---|
| 70 | <cfif structKeyExists(form,"showpods")> |
|---|
| 71 | <cfset metadata = structNew()> |
|---|
| 72 | <cfset metadata.pods = structNew()> |
|---|
| 73 | |
|---|
| 74 | <cfloop from="1" to="#arraylen(formSorted)#" index="i"> |
|---|
| 75 | <cfif listContainsNoCase(form.showpods,formSorted[i][1])> |
|---|
| 76 | <cfset metadata.pods[formSorted[i][1]] = i> |
|---|
| 77 | </cfif> |
|---|
| 78 | </cfloop> |
|---|
| 79 | |
|---|
| 80 | <!--- update metadata ---> |
|---|
| 81 | <cfset application.pod.updateInfo(dir, metadata)> |
|---|
| 82 | </cfif> |
|---|
| 83 | |
|---|
| 84 | <cflocation url="pods.cfm" addtoken="no"> |
|---|