Skip to content
Snippets Groups Projects
Select Git revision
  • d65aa81c2a43e5f6649cf222be0fa291ce3b8755
  • master default
  • disable-new-requests
  • fix-bulletin-view-missing-notes-error
  • add-missing-queue-managers
  • projects-task-53
  • projects-task-51
  • projects-task-43
  • projects-task-24
  • projects-task-31
  • projects-task-32
  • projects-task-8
  • project-setup-docs
  • projects-task-28
  • projects-task-27
  • projects-task-9
  • projects-task-7
  • mass-update-course-codes-in-sections
  • wdn-four
  • learning-outcomes
  • additional-bulletin-pages
  • svn-redesign
  • svn-popups
  • svn-trunk
  • svn-performance
  • svn-tim
26 results

ApprovalActionMajorRouterModel.php

Blame
  • ApprovalActionMajorRouterModel.php 4.04 KiB
    <?php
    
    class Requests_ApprovalActionMajorRouterModel extends Requests_ApprovalActionModel
    {
        protected $_majors = array();
    
        public static function find($id)
        {
            $db = Zend_Registry::get('db');
    
            $select = new Zend_Db_Select($db);
            $select->from(array('a' => 'creqApprovalActions'));
            $select->join(array('d' => 'creqApprovalActionsMajorRouter'), 'a.approvalActionId = d.approvalActionId');
            if (Unl_Util::isArray($id)) {
                $select->where('a.approvalActionId IN(?)', $id);
            } else {
                $select->where('a.approvalActionId = ?', $id);
            }
    
            $records = $db->query($select)->fetchAll();
            $objects = new Unl_Model_Collection(__CLASS__);
            foreach ($records as $record) {
                $object = Unl_Model_Registry::getInstance()->getOrAdd(new self($record));
                $objectId = $object->getId();
                $objects[$objectId] = $object;
            }
    
            if (Unl_Util::isArray($objects)) {
                return $objects;
            } else {
                return array_pop($objects);
            }
    
        }
    
        static public function fetchNew()
        {
            $data = array(
                'approvalActionId'    => NULL,
                'name'                => '',
                'approvalChain'       => NULL,
                'className'           => '',
                'participatingRoles'  => array(),
                'editingRoles'        => array()
            );
    
            $new = new self($data);
            $new->_setClean();
    
            $new->_data['className'] = 'ApprovalActionMajorRouter';
    
            return $new;
        }
    
        static public function save($models)
        {
            $modelsToInsert = new Unl_Model_Collection(__CLASS__);
            $modelsToUpdate = new Unl_Model_Collection(__CLASS__);
    
            if (!Unl_Util::isArray($models)) {
                $model = $models;
                $models = new Unl_Model_Collection(__CLASS__);
                $models[$model->getId()] = $model;
            }
    
            foreach ($models as $model) {
                if ($model->_cleanData['approvalActionId'] && $model->getId()) {
                    if ($model->_cleanData != $model->_data) {
                        $modelsToUpdate[] = $model;
                    }