Skip to content
Christopher Bloom edited this page Nov 20, 2013 · 89 revisions

Downfallguild.org is moving from Drupal 6 to Drupal 7! This project will help manage that.

It’s time to make downfallguild.org realize a lot more of it’s potential. We're moving to Drupal 7 and the primary goal is to migrate content, refactor functionality and simplify across the board.

Approach

After trying to do a straight upgrade on the existing site, it was determined we'd port content into a fresh Drupal 7 install instead. Mainly using the Migrate, Migrate D2D, and Features, we can build up a much cleaner platform - and remove 5 years of cruft and fluff.

  • The custom migrate module is migratedf
  • The custom features module is migratedf_features

Useful commands

  • Use rsync (from within local/htdocs/downfal/d6) to PULL FROM REMOTE: rsync -zvr [email protected]:webapps/downfall_drupal/ ./
  • Zip all and hidden files from downfall dir to temp proj folder on server (after ssh in): tar cvzf ~/projects/df-up/df_files.tar.gz ~/webapps/downfall_drupal/

Important links

Migration Outline

See the list here for D2D migrations (bottom).

  1. Input formats - DONE
  2. Role migration - DONE
  3. User migration - DONE
  4. File migration - DONE
  5. User Picture migration - DONE
  6. Taxonomy term migration - DONE
  7. Node migration
    • Blogs - DONE
    • Pages - DONE, merged to Article
    • Stories - DONE, merged to Article
    • Guild apps - DONE, includes image field mapping (POSSIBLY move to Media module for images once it's working below)
    • Forum Posts - DONE, a little re-org is necessary (at term level).
      • Migrate module has a shitty time with line 1234ish (if (!$destids)) ..., comment out to continue
    • Events - DONE, both old types merged into new Event type
    • Book pages - DONE, All content comes over BUT Hierarchy is not, fix query to set.
    • Images (nodes from Image module)
      • setting the d6files symlink is very important
      • The image_assist embeds are now handled with a parent class that filters to media json
      • Remove all the Image "gallery grid, preview, thumbnail" file entries (after full migration)
    • Organic Groups (raids)
      • UPDATE 10/9/2013: Just make a migration that runs a query, creates nodes, assigns users/content. Should probably run first.
      • THIS REQUIRES UPGRADING OG IN D6 TO THE LATEST VERSION
      • We have to copy the og d6 tables to the DRUPAL 7 database, possibly, og_migrate_api() in og.module.
      • D6 tables it's looking for: demo_d6 > d6_og, demo_og_ui > d6_og_ui, demo_og_ancestry > d6_og_ancestry
      • Basically, OG migrate is looking for tables IN our database, it's not connecting to external database. Might be able to get around this with more experiments.
      • Must delete og rows in field_config_instance, otherwise, can't enable og after uninstalling
  8. Comment migration - ALL COMMENTS NEED image_assist solved first (so all Image migrated)
    • Blog
    • Pages
    • Stories
    • Guild apps
    • Forums posts
    • Events
    • Book pages - A lot of nodes do not exist, fixing above
    • Images
    • Organic groups
  9. Menu migration

Desired Features

  1. Rotating Kill Posts on the front page (so no raid feels "topped")
  2. Better way to show new posts and latest topics on the front page
  3. Showing who in guild streams and who is online
  4. Notification for officers when there's a new app

Design inspiration

  1. Huge list: http://bashooka.com/inspiration/flat-web-ui-design/
  2. Paragon does guild sites perfectly: http://www.paragon.fi/media
  3. Manaflask, does Ensidia: http://manaflask.com/en/
  4. Method Guild: http://www.methodwow.com/
  5. Blood Legion guild: http://www.bloodlegion.com/ (check out that "needs" widget)
  6. WoWInsider: notice the way they use the context images for stuff. gives it that "texture"
  7. MacroWoW has good texture and wow-feel: http://macro-wow.com/
  8. Dribble
  9. Our light, textured style: http://thewirecutter.com/
  10. Great usage of fonts. http://blog.shipmentapp.com/
  11. FED http://paper.li/neutralthoughts/1353674004
  12. Peacock http://peacock.st/
  13. This fucking insanity: http://std.li/pastel/home.html#home
  14. holy jesus tits https://diy.org/skills/rocketeer
  15. rewrite http://readwrite.com/
  16. CloudFlare's control panel UI is quite nice.
  17. Black Pixel: http://blackpixel.com
  18. Kaleidoscope app: http://kaleidoscopeapp.com
  19. Font combinations: futura/museoslab - http://ifontyou.com/combos/79
  20. Thinkshout's whitespace with semi-contained "sidebar": http://thinkshout.com/blog/2012/01/lev/entity-registrations
  21. A really good font, and really good design elements. http://designmodo.com/flat-free/
  22. Great typography, good white layout: http://lhmdesign.com/neptune/
  23. A site that could be defined as "perfect" http://forecast.io
  24. If we want to go the "hexagon" route: http://blog.ansacopeland.com/chatter/2013/3/25/hover-friendly-hexagons
  25. I really like the way this header behaves (as well as the whitespace): http://singlebrook.com/blog/creating-custom-beans-in-drupal-part-1
  26. http://www.webdesignerdepot.com/ - a lot of content, whitespace, light color but with great design.
  27. GRADIENTZ!! http://css3ps.com/
  28. Downfall history timeline: http://tympanus.net/codrops/2013/05/02/vertical-timeline/
  29. Flat UI: http://designmodo.github.io/Flat-UI/, PRO: http://designmodo.com/flat/
  30. Mashable has the perfect layout: http://mashable.com/2013/05/31/bill-nye-qa/?cid=Mash-Product-RSS-Pheedo-All-Partial
  31. More really good layout/design from ink: http://ink.sapo.pt/
  32. Great flat, content-focused layout: http://listverse.com/2013/01/03/10-deadliest-world-events-in-human-history/
  33. Font we should totally use: http://www.fontsquirrel.com/fonts/source-sans-pro
  34. I really like the Lato font used body text here: http://thomashunter.name/blog/the-javascript-event-loop-presentation/
  35. clearinghouse of great design: http://www.dtelepathy.com/blog/inspiration/40-innovative-ui-concepts-dribbble
  36. http://getfireshell.com/
Clone this wiki locally