History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: FC-712
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Unassigned
Reporter: Chris Roth
Votes: 1
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
FarCry Core Framework

Rebuild Friendly URLs Deletes FUs applied ot dmHTML

Created: 03/Mar/07 02:58 AM   Updated: 20/Nov/08 09:35 AM
Component/s: Libs (FAPI, etc)
Affects Version/s: FarCry 4.0 (Gonzalas), FarCry 5.0 (Fortress), 4.0.10, 4.0.11, 5.0.1, 5.0.2
Fix Version/s: FarCry 5.1

Time Tracking:
Not Specified

Environment: VMware based Windows 2003 Server, IIS6, CFMX 7.02


 Description  « Hide
I has set some friendly's on some dhtml objects...

I noticed that some of my pages were using object ids and though.. Oh
I'll rebuild FUs.

When i was working on one of my dmHtmls, the "extra" friendly URL I
had created was gone :(

I ran it on dmhtmls... I did notice that the "extra" FUs I have
created on dmNavigations were untouched.
I figured my added FUs to an object would be left untouched by the
rebuild fu function but they were not.


 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Duncan Edwards - 28/May/08 01:18 AM
Steps to reproduce the issue:
1. Create add an additional FU on a dmHTML object using the manage FU
function.
2. Check that the new additional FU has been saved to the database.
3. Run Rebuild FU function from Farcry admin for dmHTML objects.
4. Check that the new additional FU still exists in the database. It
doesn't.

The problem seems to stem from what i
assume to be a typo in the "fRebuildFriendlyURLs" method in Farcry
\farcry_core\packages\types\types.cfc. The query which deletes old
friendly urls for this type:
                <!--- delete old friendly url for this type --->
                <cfquery name="stLocal.qDelete" datasource="#application.dsn#">
                DELETE
                FROM #application.dbowner#reffriendlyURL
                WHERE refobjectid IN (SELECT objectid FROM
#application.dbowner##arguments.typeName#)
                </cfquery>
Should, i assume, actually be a NOT, therefore:
                <!--- delete old friendly url for this type --->
                <cfquery name="stLocal.qDelete" datasource="#application.dsn#">
                DELETE
                FROM #application.dbowner#reffriendlyURL
                WHERE refobjectid NOT IN (SELECT objectid FROM
#application.dbowner##arguments.typeName#)
                </cfquery>

Geoff Bowers - 20/Nov/08 09:35 AM
Friendly URLs have been refactored in 5.1. All FUs should be archived indefinitely (plus a bunch of other great features).