Ok, here is where i am stuck right now:) :

1. We've extrended farFU:
<cfproperty
                name="language" type="string" default="" hint="The application 
name
that the friendly URL is a part of. Useful for subsites."
                ftSeq="9" >

2.:In setSystemFU function we've changed:
<cfif not StructKeyExists(stLocal.stObj,"status") OR
stLocal.stObj.status EQ "approved">

                                <!--- Get the current system fu object for a 
given refobjectid ---
>
                                <cfset stLocal.stCurrentSystemObject =
getSystemObject(refObjectID="#arguments.objectid#") />

                                <!--- Generate the new system FU for the 
current object --->
                                <cfset stLocal.newFriendlyURL =
getSystemFU(objectID="#arguments.objectid#",
typename="#arguments.typename#") />

                                <cfif 
structIsEmpty(stLocal.stCurrentSystemObject)>
                                <cfset languageList="armenian,russian,english"/>
                                        <!--- See if their is a current default 
object --->
                                        <cfset stLocal.stCurrentDefaultObject =
getDefaultFUObject(refObjectID="#arguments.objectid#") />
                                <cfloop list="#languageList#" index="i">
                                        <!--- No System FU object currently set 
--->
                                        <cfset 
stLocal.stCurrentSystemObject.objectid =
application.fc.utils.createJavaUUID() />
                                        <cfset 
stLocal.stCurrentSystemObject.refObjectID =
arguments.objectid />
                                        <cfset 
stLocal.stCurrentSystemObject.fuStatus = 1 />
                                        <cfset 
stLocal.stCurrentSystemObject.redirectionType = "none" />
                                        <cfset 
stLocal.stCurrentSystemObject.redirectTo = "default" />
                    <cfset stLocal.stCurrentSystemObject.language =
#i# />
                                        <cfset 
stLocal.stCurrentSystemObject.friendlyURL =
getUniqueFU(friendlyURL="#left(stLocal.newFriendlyURL,245)#") />

                                        <!--- If no default object, set this as 
the default --->
                                        <cfif 
structIsEmpty(stLocal.stCurrentDefaultObject)>
                                                <cfset 
stLocal.stCurrentSystemObject.bDefault = 1 />
                                        </cfif>
                                        <cftry>
                                        <cfset stLocal.stResult =
setData(stProperties="#stLocal.stCurrentSystemObject#") />
                                        <cfcatch type="any">
        
<cfoutput><p>#getUniqueFU(friendlyURL="#stLocal.newFriendlyURL#")#</
p></cfoutput>
                                                <cfdump var="#stLocal#" 
expand="false" label="stLocal" /
><cfabort showerror="debugging" />
                                        </cfcatch>
                                        </cftry>
                    </cfloop>
                                <cfelse>
                                        <cfset stLocal.newFriendlyURL =
getUniqueFU(friendlyURL="#left(stLocal.newFriendlyURL,245)#",
FUID="#stLocal.stCurrentSystemObject.objectid#") />
                                        <cfif stLocal.newFriendlyURL NEQ
stLocal.stCurrentSystemObject.friendlyURL>
                                                <!--- NEED TO ARCHIVE OLD 
SYSTEM OBJECT AND UPDATE --->
                                                <cfset stLocal.stResult =
archiveFU(objectid="#stLocal.stCurrentSystemObject.objectid#") />
                                                <cfset 
stLocal.stCurrentSystemObject.friendlyURL =
stLocal.newFriendlyURL />
                                                <cfset stLocal.stResult =
setData(stProperties="#stLocal.stCurrentSystemObject#") />
                                        </cfif>
                                </cfif>


3. In getSystemFU we've added:
<cfargument name="language" required="false" default="" type="string"
hint="Content item FU Language.">

<cfset stMetaProps =  structNew()>
                <cfset stMetaProps.language = #arguments.language#>

                <skin:view typename="#stobj.typename#" 
objectid="#stobj.objectid#"
webskin="displaySystemFU" r_html="systemFU" alternateHTML=""
stParam="#stMetaProps#">

4. under my ctArticle webskins in displaySystemFU.cfm i've added:

<cfparam name="articleTitle" default="#stObj.title#"/>
<cfparam name="stParam.language" default="russian">
<cfif #stParam.language#  eq 'armenian'>
<cfset articleTitle=#stObj.title_armenian#/>
<cfelseif  #stParam.language# eq 'russian'>
<cfset articleTitle=#stObj.title_russian#/>
<cfelse>
<cfset articleTitle=#stObj.title#/>
</cfif>

<cfset friendlyURLString =
"/article/#DateFormat(stObj.publishDate,'yyyy')#-
#DateFormat(stObj.publishDate,'mm')#-
#DateFormat(stObj.publishDate,'dd')#-#articleTitle#">

It works fine and generate language based FUs, but...when it comes to
non-latin characters in titles of articles it does not process them
and does not insert them to DB:
/article/2010-06-12- (armenian)
/article/2010-06-12-the-committee-on-state-revenues-of-armenia-found-
unlicensed-manufacture-beverages-search-actions-carried-out-by-armenia-
sotrudnikamizolotoy-stock-is-concentrated-in-the-dome (english)

While trying to debug, we've add some <cflog statements to check on
progress, and we've mentioned that it is trying to create something
out of non-lating chars, but replacing them with questionmarks, and
does not further process them.

I cant understand whats wrong with this code.







-- 
You received this message cos you are subscribed to "farcry-dev" Google group.
To post, email: [email protected]
To unsubscribe, email: [email protected]
For more options: http://groups.google.com/group/farcry-dev
--------------------------------
Follow us on Twitter: http://twitter.com/farcry

Reply via email to