Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Topic Tags: no tags for this item
Traelin
#1 Posted : Thursday, March 29, 2012 8:29:23 AM(UTC)


Rank: Guru

Joined: 12/24/2011(UTC)
Posts: 194
Man

Thanks: 11 times
Was thanked: 9 time(s) in 8 post(s)
Dave,

I've been making a bunch of changes to the v4.0 Atomo solution. One of the changes is subtle yet a lot more work than I thought, LOL. I am standardizing breadcrumbs across all Sueetie features such that the branding is unified.

If you're interested, I can send you my latest solution when I'm done. The Gallery Server Pro changes I've made are a pain and I don't want anyone else to have to duplicate the effort.
Dave Burke
#2 Posted : Thursday, March 29, 2012 9:22:04 AM(UTC)


Rank: Administration

Joined: 12/7/2008(UTC)
Posts: 1,263
Man
United States

Thanks: 36 times
Was thanked: 69 time(s) in 68 post(s)
Traelin,

Breadcrumbs is a tantalizing feature for sure, and it will be interesting to see your approach since each application has a different breadcrumb content logic. Marketplace, for instance, has a great breadcrumb function which is category-based. The Forum, obviously, forums. Blogs? Media, I guess gallery -> album, sub-albums -> media item. Wiki uses the navigation history with dropdowns of all linked wiki pages on that page (which is a very cool bonus feature).

Will the site be online?

If there's interest in a global breadcrumb control, I promise to take a look! That would spare you additional work when v4.next comes out! Procedurally speaking, you could pull the modified projects, zip them and upload to a folder in the Sueetie Library at http://sueetie.com/media/library.aspx (I'll add you to a media upload group when the time comes), that would probably be the most efficient.

Keep us posted,
-Dave

Traelin
#3 Posted : Thursday, March 29, 2012 4:02:30 PM(UTC)


Rank: Guru

Joined: 12/24/2011(UTC)
Posts: 194
Man

Thanks: 11 times
Was thanked: 9 time(s) in 8 post(s)
Agreed, I am too absent-minded to not have breadcrumbs. I need that trail. You're absolutely correct, each application has its own way of doing it. Forums were easy because I tweaked PageLinks.cs...but I had to get YAF.Controls to do it. GSP I could have made it easier than I did, and just created a class to register a client script. In fact I wish I had but I didn't.

I'm starting on Blogs which should be very easy. I can send it to you whenever I finish it and you can trash it or keep it, but I just hate to see you or anyone else have to do the same thing again. It's painful.

Yes, the site will be online, but not for months as I brand and consolidate it with some other work I have. The one thing I'd love to have time to work on is Lucene integration with my separate database. It wouldn't be as straightforward because of how I'm structuring the resultset.

More to come!
Traelin
#4 Posted : Friday, April 6, 2012 6:14:27 PM(UTC)


Rank: Guru

Joined: 12/24/2011(UTC)
Posts: 194
Man

Thanks: 11 times
Was thanked: 9 time(s) in 8 post(s)
Just wanted to let you all know that I have the breadcrumbs completely working the way I want for the Media Gallery and Forums -- the two most difficult apps to breadcrumb by far for the way I want to do it.
Dave Burke
#5 Posted : Saturday, April 7, 2012 1:58:32 AM(UTC)


Rank: Administration

Joined: 12/7/2008(UTC)
Posts: 1,263
Man
United States

Thanks: 36 times
Was thanked: 69 time(s) in 68 post(s)
Traelin,

Continuing to be curious about your Breadcrumbs mod, I would have thought that the three areas to which breadcrumbs could be applied would be Grouped CMS Pages (simply group name -> page name), Media (gallery -> album -> subalbum -> media) and Blogs (Blog Name -> Category -> Blog Post.) Walls with enforced taxonomies (like The Edge could have a Wall -> Taxonomy -> Post Title.) I would have thought we're all set with Marketplace, Wiki and Forum.

How did you change the Forum Breadcrumb logic?

Thanks,
Dave
Traelin
#6 Posted : Saturday, April 7, 2012 3:05:09 PM(UTC)


Rank: Guru

Joined: 12/24/2011(UTC)
Posts: 194
Man

Thanks: 11 times
Was thanked: 9 time(s) in 8 post(s)
Dave, using brevity, here's what I changed in terms of UI:

1. GSP Admin titling, such that it reads "Media Gallery Admin: <action here> | <site name>" in the page title.
2. GSP Task titling, such that it reads "Media Gallery: <album name> Album - <album name> Album - ... - <action here> | <site name>" in the page title.
3. GSP Admin breadcrumbing I believe all I did was Link(Site Home) -> Link(Gallery Home) -> <action here>.
4. GSP Task breadcrumbing == Link(Site Home) -> Link(Gallery Home) -> Link(<album if any> Album) -> <action here>. (I wanted users to easily be able to navigate back to anywhere in the workflow without clicking Back, or using the main menu.)
5. GSP album breadcrumbing only had one change I believe, which was Link(<album name> Album) -> Media Objects whenever the user clicked on a media object in an album.

Explaining how I *planned* on handling the above differs greatly from the rabbit hole in which I fell, which is to say really convoluted for my tastes, in terms of maintenance. I handled the core logic in albummenu's code behind but I also created client scripts via managers on some of the Admin and Task pages using the same logic (i.e. cut-paste).

Forum breadcrumbing is harder to explain, but suffice it to say it now does what I want, albeit I hate its maintenance potential as much as the above. I would have to send you the project whenever I get the chance so you can see what I mean. Forum page titling I revamped as well using PageTitleForumModule.cs, but unfortunately that primarily helped me with Admin and Moderation pages, not all other pages.

In PageLinks.cs in YAF.Controls I only had to make the following change to persist it to the client:
writer.Write("<script type=\"text/javascript\" language=\"javascript\">var _crumbsAry = new Array();");
//writer.WriteLine(@"<div id=""{0}"" class=""yafPageLink"">".FormatWith(this.ClientID));

//bool bFirst = true;

foreach (DataRow row in linkDataTable.Rows)
{
//if (!bFirst)
//{
// writer.WriteLine(@"<span class=""linkSeperator"">&nbsp;&#187;&nbsp;</span>");
//}
//else
//{
// bFirst = false;
//}

string title = this.HtmlEncode(row["Title"].ToString().Trim());
string url = row["URL"].ToString().Trim();

if (url.IsNotSet())
{
// If the current breadcrumb is "All Forums", we want to display the top level
// forum name, which should be "Forums Home" or something similar, so that users
// don't get confused.
if (title == boardsTitle)
{
writer.Write("_crumbsAry.push(\"{0}\",\"{1}\");".FormatWith(homeTitle, ""));
}
else
{
writer.Write("_crumbsAry.push(\"{0}\",\"{1}\");".FormatWith(title, ""));
}
//writer.WriteLine(@"<span class=""currentPageLink"">{0}</span>".FormatWith(title));
}
else
{
// If the current breadcrumb is "All Forums", we want to display the top level
// forum name, which should be "Forums Home" or something similar, so that users
// don't get confused.
if (title == boardsTitle)
{
writer.Write("_crumbsAry.push(\"{0}\",\"{1}\");".FormatWith(homeTitle, url));
}
else
{
writer.Write("_crumbsAry.push(\"{0}\",\"{1}\");".FormatWith(title, url));
}
//writer.WriteLine(@"<a href=""{0}"">{1}</a>".FormatWith(url, title));
}
}

writer.WriteLine("</script>");

Like I said above, I personally think I could extend the pages to handle titling and breadcrumbing instead of the hacky way I did it just as a proof of concept. But it works perfectly for me and at the very least it can give one an idea of how to accomplish it with slick changes later. I attached some sample images that hopefully encapsulates what I was thinking?

Edited by user Saturday, April 7, 2012 3:16:29 PM(UTC)  | Reason: Added some commentary and images.

Traelin attached the following image(s):
GSP Breadcrumb Sample.png (223kb) downloaded 8 time(s).
YAF Sample Breadcrumb.png (213kb) downloaded 9 time(s).

You cannot view/download attachments. Try to login or register.
Dave Burke
#7 Posted : Sunday, April 8, 2012 5:19:35 AM(UTC)


Rank: Administration

Joined: 12/7/2008(UTC)
Posts: 1,263
Man
United States

Thanks: 36 times
Was thanked: 69 time(s) in 68 post(s)
Traelin,

Sometimes these things take much more coding than we anticipate. I very much hope you left your own "breadcrumbs" in the source so you can easily apply your changes to Sueetie v4.1 and what follows.

Thanks for the screenshots. I particularly like the GSP trail. Very useful!

Good luck (and Happy Easter)!
-Dave
Traelin
#8 Posted : Sunday, April 8, 2012 5:52:39 AM(UTC)


Rank: Guru

Joined: 12/24/2011(UTC)
Posts: 194
Man

Thanks: 11 times
Was thanked: 9 time(s) in 8 post(s)
Oh yes, indeed if I didn't comment code I would get lost. We always learned in undergrad and grad school that commenting is vital for O&M; however, I have to use it given my absent-mindedness. Once I get the site breadcrumbing with a universal UI, then I can move on to branding as well as moving some stuff around on the pages. This is not to say that upgrading would be a necessarily fluid process for me; I would need to first get 4.0 the way I want it and then use a sandbox to build out later versions.

One thing I'd like is an equivalent ACT-to-jQuery DropDownExtender, such that I can implement a search textbox similar to yours but one that would allow the user to select a site search or numismatic DB search via radio options. One probably exists but right now I need to focus on one task at a time. :)
Traelin
#9 Posted : Wednesday, April 18, 2012 12:40:13 PM(UTC)


Rank: Guru

Joined: 12/24/2011(UTC)
Posts: 194
Man

Thanks: 11 times
Was thanked: 9 time(s) in 8 post(s)
Dave, I tailored the breadcrumbs for the Media Gallery (as well as everything else except Wiki thus far). If you want a copy of the project, I can send it to you and you can do with it as you please. I figure it's the least I can do for you for your hard work.
Dave Burke
#10 Posted : Wednesday, April 18, 2012 1:00:14 PM(UTC)


Rank: Administration

Joined: 12/7/2008(UTC)
Posts: 1,263
Man
United States

Thanks: 36 times
Was thanked: 69 time(s) in 68 post(s)
Traelin,

That's very good of you. I wish the Analytics Points system was online so you could be adequately rewarded! :-)

I know we're not going to get it into the queue with so many other To-Do's for v4.1. I can't wait to see it in action, though, and I'm sure others want to see it, too. You'll probably get hit with source requests then.

Thanks!
Dave
Rss Feed  Atom Feed
Users browsing this topic
Guest
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.

Powered by YAF 1.9.6.1 | YAF © 2003-2013, Yet Another Forum.NET
This page was generated in 0.209 seconds.
Follow Sueetie on Twitter
Copyright © 2008-2012 Sueetie LLC. All rights reserved.