function do_create()
 {
     global $feedback;
     $request =& HTTPRequest::instance();
     // Sanity check
     if (!$request->get('group_id') || !$request->get('keyword') || !$request->get('link')) {
         exit_error($GLOBALS['Language']->getText('global', 'error'), $GLOBALS['Language']->getText('project_reference', 'missing_parameter'));
     }
     $force = $request->get('force');
     if (!user_is_super_user()) {
         $force = false;
     }
     $reference_manager =& ReferenceManager::instance();
     if ($request->get('service_short_name') == 100) {
         // none
         $service_short_name = "";
     } else {
         $service_short_name = $request->get('service_short_name');
     }
     $ref = new Reference(0, $request->get('keyword'), $request->get('description'), $request->get('link'), $request->get('scope'), $service_short_name, $request->get('nature'), $request->get('is_used'), $request->get('group_id'));
     if ($ref->getGroupId() == 100 && $ref->isSystemReference()) {
         // Add reference to ALL active projects!
         $result = $reference_manager->createSystemReference($ref, $force);
         if (!$result) {
             exit_error($GLOBALS['Language']->getText('global', 'error'), $GLOBALS['Language']->getText('project_reference', 'create_fail'));
         } else {
             $feedback .= " " . $GLOBALS['Language']->getText('project_reference', 'system_r_create_success');
         }
     } else {
         $result = $reference_manager->createReference($ref, $force);
         if (!$result) {
             exit_error($GLOBALS['Language']->getText('global', 'error'), $GLOBALS['Language']->getText('project_reference', 'create_fail'));
         } else {
             $feedback .= " " . $GLOBALS['Language']->getText('project_reference', 'r_create_success') . " ";
         }
     }
 }