Ejemplo n.º 1
0
 case 'create':
     // Record new Invitation
 // Record new Invitation
 case 'create_new':
     // Record Invitation and create new
 // Record Invitation and create new
 case 'create_copy':
     // Record Invitation and create similar
     // Insert new invitation code...:
     $edited_Invitation = new Invitation();
     // Check that this action request is not a CSRF hacked request:
     $Session->assert_received_crumb('invitation');
     // Check permission:
     $current_User->check_perm('users', 'edit', true);
     // load data from request
     if ($edited_Invitation->load_from_Request()) {
         // We could load data from form without errors:
         // While inserting into DB, ID property of Invitation object will be set to autogenerated ID
         // So far as we set ID manualy, we need to preserve this value
         // When assignment of wrong value will be fixed, we can skip this
         $entered_invitation_id = $edited_Invitation->ID;
         // Insert in DB:
         $DB->begin();
         // because of manual assigning ID,
         // member function Invitation::dbexists() is overloaded for proper functionality
         $duplicated_invitation_ID = $edited_Invitation->dbexists('ivc_code', $edited_Invitation->get('code'));
         if ($duplicated_invitation_ID) {
             // We have a duplicate entry:
             param_error('ivc_ID', sprintf(T_('This invitation code already exists. Do you want to <a %s>edit the existing invitation code</a>?'), 'href="?ctrl=invitations&amp;action=edit&amp;ivc_ID=' . $duplicated_invitation_ID . '"'));
         } else {
             $edited_Invitation->dbinsert();