I would like to be able to turn the submissions into an online program. I've mucked around and made it so that people don't upload documents; it's all CCK fields, so it's just a matter of being able to display the nodes. However, it looks like there is no way to add viewing permissions to anonymous or authenticated viewers.

At the very least, is there a code snippet I could change that opens up the permissions?

Comments

manez’s picture

I know this is probably way too late, but for the sake of anyone searching, here's my solution for the feature above:

To "publish" existing papers that have been accepted (make them viewable to everyone, not just the author/conference manager):

In conference.admin.inc

Change line 377 to:
db_query( $sql ."n.nid, 0, 'conference_all', 1, 0, 0 FROM {node} n LEFT JOIN {conference_decision} d ON n.nid = d.pnid WHERE ((type != '%s') AND (type != '%s')) OR ((type = '%s') AND (d.decision = 1))", $ctype_paper, $ctype_review, $ctype_paper );

Then update permissions table.

To handle new/edited decisions as they happen:

In conference.module, function conference_manage_decision_make_submit

Change case 1 from:

db_query("UPDATE {node_access} SET grant_update = 1, grant_delete = 0, grant_view = 1 WHERE nid = %d and realm = 'conference'", $form_state['values']['pnid']);
      $mail_type = 'accept_notify_author';
      break;

to:

db_query("UPDATE {node_access} SET grant_update = 1, grant_delete = 0, grant_view = 1 WHERE nid = %d and realm = 'conference'", $form_state['values']['pnid']);
      db_query( "DELETE FROM {node_access} WHERE (nid = %d AND realm = 'conference_all')", $form_state['values']['pnid']);
      db_query("INSERT INTO {node_access} (nid, gid, realm, grant_view, grant_update, grant_delete) VALUES (%d, 0, 'conference_all', 1, 0, 0)", $form_state['values']['pnid']);
      $mail_type = 'accept_notify_author';
      break;