コード例 #1
0
 public function upload()
 {
     // Construct the needed variables
     $upload = JRequest::getVar('xml', null, 'files');
     // Check whether this is a valid download
     if (empty($upload) || empty($upload['name']) || empty($upload['tmp_name']) || empty($upload['size'])) {
         $this->setRedirect('index.php?option=com_magebridge&view=config&task=import', JText::_('File upload failed on system level'), 'error');
         return false;
     }
     // Check for empty content
     $xmlString = @file_get_contents($upload['tmp_name']);
     if (empty($xmlString)) {
         $this->setRedirect('index.php?option=com_magebridge&view=config&task=import', JText::_('Empty file upload'), 'error');
         return false;
     }
     $xml = @simplexml_load_string($xmlString);
     if (!$xml) {
         $this->setRedirect('index.php?option=com_magebridge&view=config&task=import', JText::_('Invalid XML-configuration'), 'error');
         return false;
     }
     $config = array();
     foreach ($xml->children() as $parameter) {
         $name = (string) $parameter->name;
         $value = (string) $parameter->value;
         if (!empty($name)) {
             $config[$name] = $value;
         }
     }
     if (empty($config)) {
         $this->setRedirect('index.php?option=com_magebridge&view=config&task=import', JText::_('Nothing to import'), 'error');
         return false;
     }
     MagebridgeModelConfig::store($config);
     $this->setRedirect('index.php?option=com_magebridge&view=config', JText::_('Imported configuration succesfully'));
     return true;
 }