This is a refactoring task. Currently everything is in one big module, which is not optimal. It assumes that HITs are hosted on the Drupal sites, and therefore requires themekey integration, views mode, roles, rules integration, block visibilty, etc. These are not needed if we want to host HITs on Mturk, and use iframe to link back to the Drupal site. Therefore, we should extract those functionality into a sub-module "mturk_host" so that users can selectively choose to install it or not.

Of course, the benefits to host HITs of the Drupal site is to be able to control how the contents are presented to Mturk workers. For example, you can choose to show a leaderboard, or, you can add blocks to Mturk workers. These things are not available if you host HITs on Amazon.

Comments

danithaca’s picture

Title: Extract sub-module "mturk_builtin" » Extract sub-module "mturk_host"
markwk’s picture

Yes, just looking at this module (which shows a ton of potential, great work!) and I agree that this module is not very optimal in terms of all the code *squished* into a single module. It would be best to see a much lighter API type module for the basic calls and general classes, then trying to move the actual working solutions into submodules. For example, from what I can tell you have a "working solution" or use case for categorizing nodes. This is a cool example but it creates problems for someone (like me!) who wants to create a different kind of mechanical turk project from a drupal site but without enabling or using this code.

Anyways, great work overall. Any plans to work on this code again in terms of the clean up effort?

markwk’s picture

Issue summary: View changes

change "mturk_builtin" to "mturk_host"