Ejemplo n.º 1
0
 public function execute(CommandContext $context)
 {
     // Check for report ID
     $reportId = $context->get('reportId');
     if (!isset($reportId) || is_null($reportId)) {
         throw new InvalidArgumentException('Missing report id.');
     }
     PHPWS_Core::initModClass('hms', 'ReportFactory.php');
     // Load the report to get its class
     try {
         $report = ReportFactory::getReportById($reportId);
     } catch (InvalidArgumentException $e) {
         NQ::simple('hms', hms\NotificationView::SUCCESS, 'Report canceled.');
         $context->goBack();
     }
     $db = new PHPWS_DB('hms_report');
     $db->addWhere('id', $reportId);
     $result = $db->delete();
     if (PHPWS_Error::logIfError($result)) {
         throw new DatabaseException($result->toString());
     }
     NQ::simple('hms', hms\NotificationView::SUCCESS, 'Report canceled.');
     $cmd = CommandFactory::getCommand('ShowReportDetail');
     $cmd->setReportClass($report->getClass());
     $cmd->redirect();
 }
Ejemplo n.º 2
0
/**
 * unregisters deleted keys from menu
 *
 * @author Matthew McNaney <mcnaney at gmail dot com>
 * @version $Id$
 */
function menu_unregister_key(Key $key)
{
    PHPWS_Core::initModClass('menu', 'Menu_Link.php');
    if (empty($key) || empty($key->id)) {
        return FALSE;
    }
    $db = new PHPWS_DB('menu_links');
    $db->addWhere('key_id', $key->id);
    $result = $db->delete();
    if (PHPWS_Error::isError($result)) {
        PHPWS_Error::log($result);
    }
    $db2 = new PHPWS_DB('menu_assoc');
    $db2->addWhere('key_id', $key->id);
    $result = $db2->delete();
    if (PHPWS_Error::isError($result)) {
        PHPWS_Error::log($result);
    }
    $db3 = new PHPWS_DB('menus');
    $db3->addWhere('assoc_key', $key->id);
    $db3->addValue('assoc_key', 0);
    $db3->addValue('assoc_url', null);
    $db3->update();
    return true;
}
Ejemplo n.º 3
0
 public function delete()
 {
     $db = new PHPWS_DB('analytics_tracker');
     $db->addWhere('id', $this->id);
     $result = $db->delete();
     if (PHPWS_Error::logIfError($result)) {
         return $result;
     }
 }
Ejemplo n.º 4
0
/**
 * unregisters deleted keys from search
 *
 * @author Matthew McNaney <mcnaney at gmail dot com>
 * @version $Id$
 */
function search_unregister_key(Key $key)
{
    if (empty($key->id)) {
        return FALSE;
    }
    $db = new PHPWS_DB('search');
    $db->addWhere('key_id', (int) $key->id);
    return $db->delete();
}
Ejemplo n.º 5
0
/**
 * @author Matthew McNaney <mcnaney at gmail dot com>
 * @version $Id$
 */
function calendar_uninstall(&$content)
{
    PHPWS_Core::initModClass('calendar', 'Schedule.php');
    // Need functions to remove old event tables
    $db = new PHPWS_DB('calendar_schedule');
    $schedules = $db->getObjects('Calendar_Schedule');
    if (PHPWS_Error::isError($schedules)) {
        return $schedules;
    } elseif (empty($schedules)) {
        $result = PHPWS_DB::dropTable('calendar_schedule');
        if (PHPWS_Error::isError($result)) {
            return $result;
        }
        $result = PHPWS_DB::dropTable('calendar_notice');
        if (PHPWS_Error::isError($result)) {
            return $result;
        }
        $result = PHPWS_DB::dropTable('calendar_suggestions');
        if (PHPWS_Error::isError($result)) {
            return $result;
        }
        return true;
    }
    $error = false;
    foreach ($schedules as $sch) {
        $result = $sch->delete();
        if (PHPWS_Error::isError($result)) {
            PHPWS_Error::log($result);
            $error = true;
        }
    }
    $result = PHPWS_DB::dropTable('calendar_schedule');
    if (PHPWS_Error::isError($result)) {
        return $result;
    }
    $result = PHPWS_DB::dropTable('calendar_notice');
    if (PHPWS_Error::isError($result)) {
        return $result;
    }
    $result = PHPWS_DB::dropTable('calendar_suggestions');
    if (PHPWS_Error::isError($result)) {
        return $result;
    }
    if (PHPWS_DB::isTable('converted')) {
        $db2 = new PHPWS_DB('converted');
        $db2->addWhere('convert_name', array('schedule', 'calendar'));
        $db2->delete();
        $content[] = dgettext('calendar', 'Removed convert flag.');
    }
    if (!$error) {
        $content[] = dgettext('calendar', 'Calendar tables removed.');
    } else {
        $content[] = dgettext('calendar', 'Some errors occurred when uninstalling Calendar.');
    }
    return true;
}
Ejemplo n.º 6
0
 /**
  * Deletes this item from the queue
  */
 public function delete()
 {
     $db = new PHPWS_DB('hms_banner_queue');
     $db->addWhere('id', $this->id);
     $result = $db->delete();
     if (PHPWS_Error::logIfError($result)) {
         throw new DatabaseException($result->toString());
     }
     return TRUE;
 }
Ejemplo n.º 7
0
 public function delete()
 {
     $db = new PHPWS_DB('hms_movein_time');
     $db->addWhere('id', $this->id);
     $result = $db->delete();
     if (!$result || PHPWS_Error::logIfError($result)) {
         return false;
     }
     return true;
 }
Ejemplo n.º 8
0
 public function delete()
 {
     $db = new PHPWS_DB('hms_roommate');
     $db->addWhere('id', $this->id);
     $result = $db->delete();
     if (PHPWS_Error::logIfError($result)) {
         throw new DatabaseException($result->toString());
     }
     $this->id = 0;
     return true;
 }
Ejemplo n.º 9
0
 public function delete()
 {
     $db = new PHPWS_DB('checkin_reasons');
     $db->addWhere('id', $this->id);
     $result = !PHPWS_Error::logIfError($db->delete());
     if ($result) {
         $db = new PHPWS_DB('checkin_rtos');
         $db->addWhere('reason_id', $this->id);
         return !PHPWS_Error::logIfError($db->delete());
     }
     return false;
 }
Ejemplo n.º 10
0
 public function delete()
 {
     $db = new PHPWS_DB('hms_summer_application');
     $db->addWhere('id', $this->id);
     $result = $db->delete();
     if (!$result || PHPWS_Error::logIfError($result)) {
         return $result;
     }
     if (!parent::delete()) {
         return false;
     }
     return TRUE;
 }
 /**
  * Deletes the passed in EmergencyContact from the database.
  * @param EmergencyContact $contact
  * @throws InvalidArgumentException
  * @throws Exception
  */
 public static function delete(EmergencyContact $contact)
 {
     $contactId = $contact->getId();
     if (is_null($contactId) || !isset($contactId)) {
         throw new \InvalidArgumentException('Missing contact id.');
     }
     $db = new \PHPWS_DB('intern_emergency_contact');
     $db->addWhere('id', $contactId);
     $result = $db->delete();
     if (\PHPWS_Error::logIfError($result)) {
         throw new \Exception($result->toString());
     }
     return true;
 }
Ejemplo n.º 12
0
/**
 * @author Matthew McNaney <mcnaney at gmail dot com>
 * @version $Id$
 */
function rss_unregister($module, &$content)
{
    $db = new PHPWS_DB('rssfeeds');
    $db->addWhere('module', $module);
    $result = $db->delete();
    if (PHPWS_Error::isError($result)) {
        PHPWS_Error::log($result);
        $content[] = dgettext('rss', 'An error occurred trying to unregister this module from RSSFeeds.');
        return FALSE;
    } else {
        $content[] = dgettext('rss', 'Module unregistered from RSSFeeds.');
        return TRUE;
    }
}
Ejemplo n.º 13
0
function purgeProperties()
{
    $last_purge = \PHPWS_Settings::get('properties', 'last_purge') + 86400;
    $current_time = time();
    if ($last_purge < $current_time) {
        \PHPWS_Settings::set('properties', 'last_purge', $current_time);
        \PHPWS_Settings::save('properties');
        $db = new PHPWS_DB('properties');
        $db->addWhere('timeout', time(), '<');
        $db->addValue('active', 0);
        $db->update();
        $db = new PHPWS_DB('prop_roommate');
        $db->addWhere('timeout', time(), '<');
        $db->delete();
    }
}
Ejemplo n.º 14
0
 public function delete()
 {
     if (!Current_User::allow('hms', 'remove_rlc_members')) {
         PHPWS_Core::initModClass('hms', 'exception/PermissionException.php');
         throw new PermissionException('You do not have permission to remove RLC members.');
     }
     if (!isset($this->id)) {
         return FALSE;
     }
     $db = new PHPWS_DB('hms_learning_community_assignment');
     $db->addWhere('id', $this->id);
     $result = $db->delete();
     if (PHPWS_Error::logIfError($result)) {
         return FALSE;
     }
     $this->id = 0;
     return TRUE;
 }
Ejemplo n.º 15
0
 /**
  * Queues a Remove Assignment
  *
  * NOTE: If the queue contains a Create Assignment for the same
  * user to the same room, this will NOT queue a room assignment,
  * but rather will delete the original assignment, UNLESS the
  * $force_queue flag is set.  The $force_queue flag being true will
  * queue a removal no matter what.
  *
  * MORE NOTE: If this requires immediate processing because banner
  * commits are enabled, the it will be sent straight to Banner,
  * and so the force_queue flag will be ignored.
  */
 public static function queueRemoveAssignment(Student $student, $term, HMS_Residence_Hall $hall, HMS_Bed $bed, $refund)
 {
     $entry = new BannerQueueItem(0, BANNER_QUEUE_REMOVAL, $student, $term, $hall, $bed, null, null, $refund);
     if (BannerQueue::processImmediately($term)) {
         return $entry->process();
     }
     // Otherwise, look for an corresponding assignment
     $db = new PHPWS_DB('hms_banner_queue');
     $db->addWhere('type', BANNER_QUEUE_ASSIGNMENT);
     $db->addWhere('asu_username', $student->getUsername());
     $db->addWhere('building_code', $hall->getBannerBuildingCode());
     $db->addWhere('bed_code', $bed->getBannerId());
     $db->addWhere('term', $term);
     $result = $db->count();
     if (PHPWS_Error::logIfError($result)) {
         throw new DatabaseException($result->toString());
     }
     if ($result == 0) {
         return $entry->save();
     } else {
         return $db->delete();
     }
 }
Ejemplo n.º 16
0
 public function removeUser($username, $classname = null, $instanceId = null)
 {
     $db = new PHPWS_DB('users');
     $db->addWhere('username', $username);
     $result = $db->select('row');
     if (PHPWS_Error::logIfError($result) || is_null($result['id'])) {
         return false;
     }
     $user_id = $result['id'];
     $db = new PHPWS_DB('hms_user_role');
     $db->addWhere('user_id', $user_id);
     $db->addWhere('role', $this->id);
     if (!is_null($classname)) {
         $db->addWhere('class', strtolower($classname));
     }
     if (!is_null($instanceId)) {
         $db->addWhere('instance', $instanceId);
     }
     $result = $db->delete();
     if (PHPWS_Error::logIfError($result)) {
         throw new DatabaseException($result->toString());
     }
     return true;
 }
Ejemplo n.º 17
0
 public static function postMeta()
 {
     $values['page_title'] = strip_tags($_POST['page_title']);
     $values['meta_keywords'] = strip_tags($_POST['meta_keywords']);
     $values['meta_description'] = strip_tags($_POST['meta_description']);
     if (isset($_POST['index'])) {
         $index = 1;
     } else {
         $index = 0;
     }
     if (isset($_POST['follow'])) {
         $follow = 1;
     } else {
         $follow = 0;
     }
     PHPWS_Settings::set('layout', 'use_key_summaries', (int) isset($_POST['use_key_summaries']));
     PHPWS_Settings::save('layout');
     $values['meta_robots'] = $index . $follow;
     if (isset($_POST['key_id'])) {
         $key_id = (int) $_POST['key_id'];
     }
     if (isset($key_id)) {
         $values['key_id'] = $key_id;
         $db = new PHPWS_DB('layout_metatags');
         $db->addWhere('key_id', $key_id);
         $db->delete();
         if (isset($_POST['reset'])) {
             return true;
         }
         $db->reset();
         $db->addValue($values);
         return $db->insert();
     } else {
         $db = new PHPWS_DB('layout_config');
         $db->addValue($values);
         return $db->update();
     }
 }
Ejemplo n.º 18
0
 public function saveDependencies()
 {
     if (!$this->_dependency) {
         return true;
     }
     $db = new PHPWS_DB('dependencies');
     $db->addWhere('source_mod', $this->title);
     $db->delete();
     $db->reset();
     $dep_list = $this->getDependencies();
     if (empty($dep_list)) {
         return null;
     }
     foreach ($dep_list['MODULE'] as $stats) {
         $db->addValue('source_mod', $this->title);
         $db->addValue('depended_on', $stats['TITLE']);
         $db->addValue('version', $stats['VERSION']);
         $result = $db->insert();
         if (PHPWS_Error::isError($result)) {
             return $result;
         }
     }
 }
Ejemplo n.º 19
0
 public static function resetDefaultBoxes()
 {
     $db = new PHPWS_DB('layout_box');
     $db->addWhere('theme', Layout::getDefaultTheme());
     $result = $db->delete();
     if (PHPWS_Error::isError($result)) {
         PHPWS_Error::log($result);
     }
 }
Ejemplo n.º 20
0
 /**
  * Unregisters a module by pulling current keys and
  * deleting them individually. Although this takes longer
  * than simply wiping the table, it cleans up old associations. Function
  * also removes the module from the phpws_key_register table.
  * Returns true is all is well, false if there was a problem cleaning
  * up the associations, and an error object if a major problem occurred.
  */
 public static function unregisterModule($module)
 {
     $error_free = true;
     $db1 = new PHPWS_DB('phpws_key');
     $db1->addWhere('module', $module);
     $result = $db1->getObjects('Key');
     if (PHPWS_Error::isError($result)) {
         return $result;
     }
     if (!empty($result)) {
         foreach ($result as $key) {
             $result = $key->delete();
             if (!$result) {
                 $error_free = false;
             }
         }
     }
     $db2 = new PHPWS_DB('phpws_key_register');
     $db2->addWhere('module', $module);
     $result = $db2->delete();
     if (PHPWS_Error::isError($result)) {
         return $result;
     }
     return $error_free;
 }
Ejemplo n.º 21
0
 public function save()
 {
     if (empty($this->key_id) || empty($this->keywords)) {
         return FALSE;
     }
     $db = new PHPWS_DB('search');
     $db->addWhere('key_id', $this->key_id);
     $db->delete();
     $db->reset();
     $key = new Key($this->key_id);
     $db->addValue('key_id', $key->id);
     $db->addValue('module', $key->module);
     $db->addValue('created', $key->create_date);
     if (is_array($this->keywords)) {
         $keywords = implode(' ', $this->keywords);
     } else {
         $keywords = $this->keywords;
     }
     $db->addValue('keywords', $keywords);
     return $db->insert();
 }
Ejemplo n.º 22
0
 /**
  * Unregisters a module's settings
  */
 public static function unregister($module)
 {
     $db = new PHPWS_DB('mod_settings');
     $db->addWhere('module', $module);
     return $db->delete();
 }
Ejemplo n.º 23
0
 public function deleteAssoc()
 {
     $db = new PHPWS_DB('fc_file_assoc');
     $db->addWhere('file_type', FC_MEDIA);
     $db->addWhere('file_id', $this->id);
     return $db->delete();
 }
Ejemplo n.º 24
0
 public static function lockBlock($block_id, $key_id)
 {
     $block_id = (int) $block_id;
     $key_id = (int) $key_id;
     unset($_SESSION['Pinned_Blocks'][$block_id]);
     $values['block_id'] = $block_id;
     $values['key_id'] = $key_id;
     $db = new PHPWS_DB('block_pinned');
     $db->addWhere($values);
     $result = $db->delete();
     $db->addValue($values);
     return $db->insert();
 }
Ejemplo n.º 25
0
 public function delete()
 {
     if (!$this->id) {
         throw new \Exception('Missing contact id');
     }
     $c_db = new \PHPWS_DB('prop_contacts');
     $c_db->addWhere('id', $this->id);
     $result = $c_db->delete();
     if (\PEAR::isError($result)) {
         \PHPWS_Error::log($result);
         throw new \Exception('Could not delete contact from database.');
     }
     $p_db = new \PHPWS_DB('properties');
     $p_db->addWhere('contact_id', $this->id);
     $result = $p_db->delete();
     if (\PEAR::isError($result)) {
         \PHPWS_Error::log($result);
         throw new \Exception('Could not delete contact properties from database.');
     }
     $i_db = new \PHPWS_DB('prop_photo');
     $i_db->addWhere('cid', $this->id);
     $result = $i_db->delete();
     if (\PEAR::isError($result)) {
         \PHPWS_Error::log($result);
         throw new \Exception('Could not delete contact photos from database.');
     }
     $dir = 'images/properties/c' . $this->id;
     \PHPWS_File::rmdir($dir);
     return true;
 }
Ejemplo n.º 26
0
 /**
  * Deletes a branch from the hub's database
  */
 public function delete()
 {
     $db = new PHPWS_DB('branch_sites');
     $db->addWhere('id', $this->id);
     $result = $db->delete();
     if (PHPWS_Error::isError($result)) {
         PHPWS_Error::log($result);
         return false;
     }
     return true;
 }
Ejemplo n.º 27
0
 public function delete()
 {
     if ($this->id) {
         $db = new \PHPWS_DB('properties');
         $db->addWhere('id', $this->id);
         if (\PEAR::isError($db->delete())) {
             throw new \Exception('Error occurred during deletion.');
         }
     }
 }
Ejemplo n.º 28
0
 public function delete()
 {
     if (is_null($this->id) || !isset($this->id)) {
         throw new InvalidArgumentException('Invalid bed id.');
     }
     $db = new PHPWS_DB('hms_bed');
     $db->addWhere('id', $this->id);
     $result = $db->delete();
     if (!$result || PHPWS_Error::logIfError($result)) {
         throw new DatabaseException($result->toString());
     }
     return true;
 }
Ejemplo n.º 29
0
 public function kill()
 {
     $theme_var = $this->getThemeVar();
     $theme = $this->getTheme();
     $db = new PHPWS_DB('layout_box');
     $db->addWhere('id', $this->getId());
     $result = $db->delete();
     if (PHPWS_Error::isError($result)) {
         return $result;
     }
     Layout_Box::reorderBoxes($theme, $theme_var);
 }
Ejemplo n.º 30
0
 public function unpinFolder()
 {
     if (!isset($_REQUEST['folder_id']) || !isset($_REQUEST['key_id'])) {
         return;
     }
     $folder_id = (int) $_REQUEST['folder_id'];
     $key_id = (int) $_REQUEST['key_id'];
     $db = new PHPWS_DB('filecabinet_pins');
     $db->addWhere('folder_id', $folder_id);
     $db->addWhere('key_id', $key_id);
     $db->delete();
 }