Пример #1
0
 public static function getModel($model)
 {
     // make sure VM is loaded:
     if (!class_exists('VmConfig')) {
         require JPATH_ADMINISTRATOR . DS . 'components' . DS . 'com_virtuemart' . DS . 'helpers' . DS . 'config.php';
         VmConfig::loadConfig();
     }
     if (empty(OPCmini::$modelCache)) {
         OPCmini::$modelCache = array();
     }
     if (!empty(OPCmini::$modelCache[$model])) {
         return OPCmini::$modelCache[$model];
     }
     if (!class_exists('VirtueMartModel' . ucfirst($model))) {
         require JPATH_VM_ADMINISTRATOR . DS . 'models' . DS . strtolower($model) . '.php';
     }
     if (method_exists('VmModel', 'getModel')) {
         $Omodel = VmModel::getModel($model);
         OPCmini::$modelCache[$model] = $Omodel;
         return $Omodel;
     } else {
         // this section loads models for VM2.0.0 to VM2.0.4
         $class = 'VirtueMartModel' . ucfirst($model);
         if (class_exists($class)) {
             if ($class == 'VirtueMartModelUser') {
                 //require_once(JPATH_SITE.DS.'components'.DS.'com_onepage'.DS.'overrides'.DS.'user.php');
                 //$class .= 'Override';
                 $Omodel = new VirtueMartModelUser();
                 return $Omodel;
                 $Omodel->setMainTable('virtuemart_vmusers');
             }
             $Omodel = new $class();
             OPCmini::$modelCache[$model] = $Omodel;
             return $Omodel;
         } else {
             echo 'Class not found: ' . $class;
             $app = JFactory::getApplication()->close();
         }
     }
     echo 'Model not found: ' . $model;
     $app = JFactory::getApplication()->close();
     //return new ${'VirtueMartModel'.ucfirst($model)}();
 }