Site revamp

Hey beautiful people, ckknight here.

I've been working on the revamp of CurseForge for a long time now, and I've gotten to the point where I'm comfortable launching it as the main site.

This is the largest change to happen to the codebase since WowAce moved from its old technology to the new CurseForge-based one.

Apart from the following, many, many bugs were fixed in the process.

  • There are gradients and rounded corners now. This provides a feeling of weight to the widgets on the page. (also: I'm pretty sure this makes us Web 2.0)
  • New color scheme for WowAce and CurseForge (though they do borrow some shades from the old).
  • Widgets are more spread out than before, allowing an easier eye-travel path.
  • Streamlined pages where every page of the same type (e.g. details, listing, main page, edit) have the same feel, rather than differing from page-to-page.
  • Many various layout fixes.
  • Improved form layout, as you can see on http://www.wowace.com/create-project/
    • the most important field (Project name) is larger
    • icons show where they make sense, e.g. on the categories and languages.
    • Many-to-many editing pages are far, far easier to use. Examples would include project membership assignments.
  • Tab-based navigational interface instead of a pseudo-tabbed interface or dropdowns.
  • Visible user actions in the upper-right corner of every page, this replaces any dropdowns that the user might experience.
  • Easy to access, but hidden by default, admin actions, below user actions. This would appear only if a user has special rights to an object.
  • Listings: (good example: http://www.wowace.com/projects/pitbull4/tickets/)
    • Much more advanced filtering system
      • Icons in some filters
      • More advanced filters in most cases
      • Date-based filters
      • Per-page specification (if you are an author or QA person and want to see all the tickets on one page, you can. This is limited to authors so that the database doesn't become overloaded unnecessarily.)
      • Bulk editing is a lot cleaner and easier. This is used for ticket management.
    • Better visibility of sorting and pagination
    • Heavy use of icons for graphical feedback.
    • Create links on the top-right. e.g. On the projects listing, "Create project" shows up. On a tickets listing, "Post a ticket" shows up.
  • Use of openable widgets, e.g. post a comment. Instead of seeing a big white box before all comments, you click "Post a comment" first.
  • Contests system, for if we have code contests (which we just finished one), or image-based contests (if we want a logo contest or something along those lines). (http://www.wowace.com/contests/)
  • Theme system, which handles the styles of a site, where each site has a separate theme, but users can create their own themes and post them for others to use. (http://www.wowace.com/themes/)
    • This is very powerful and will allow custom theming of sub-sites (e.g. atlasmod.com or support.curse.com) very easily.
  • Greater consistency for posting. Previously, the "Preview" of a post might look very different from the final result, now, they look exactly the same in both situations.
  • Due to the hidden admin actions, more actions can be placed inside. On a project, the mainline repository is far more accessible because of this. Many authors had issues figuring out what was possible before, but this alleviates most worries.
  • Categories have all been given icons. This was mostly in anticipation for the upcoming Curse Client 4.0, but it's also adopted on the new CurseForge as well. Everywhere a category would show, its icon shows now. (Eventually, Curse.com will sync these icons as well.)
  • Comments
    • banning options have been added to make it easier to fight The War on Spam.
    • direct linking of comments now provide links that will work regardless of pagination.
  • Users now have all their IP addresses tracked, rather than just one. This will allow us to better track gaming of the system, but mostly for spammers.
  • Sites have much better management, so that if we want to launch a new site based on CurseForge tech or change an existing site, this is very viable. This will become more prevalent later, if we launch a non-addon site (since CurseForge's technology is a very good project management system), a ticketing-only site (perhaps for support.curse.com or potentially other sites), or for authors to host a site with us based on one or more of their projects (e.g. atlasmod.com).
  • Implemented a data caching system. This should make page loads quite a bit faster overall, but their shouldn't be any horrible invalidation issues (here's hoping).
  • Set up for localization of the whole site. Every string is properly wrapped, but it doesn't hook into the localization app yet. That is low-priority and a few months off, after some more important things are taken care of.
  • Implement CCIP support (used by Curse Client 4.0). On files pages, there is a "4.0 Install" button in the top-right. Once CC 3.0 supports CCIP, the standard psyn links will be replaced with CCIP links.
  • Add icons to projects, as specified by the project owner.
  • When hovering over images that have been shrunk down, show the full image in a popup. (e.g. http://www.wowace.com/projects/)
  • When making a large comment, the textarea size will expand as you make more lines.
  • For search boxes, add an eyeglass icon as well as a grayed out "Search" text.
  • More Semantic HTML, which should help Search Engine Optimization (SEO) a bit.