Example #1
0
 function _validate()
 {
     $errors = array();
     if (!empty($this->lang_file_data) && $this->lang_file_data['error'] == UPLOAD_ERR_NO_FILE) {
         $errors[] = 'Please choose language file';
         return $errors;
     }
     if (!empty($this->lang_file_data) && $this->lang_file_data['error'] == UPLOAD_ERR_INI_SIZE) {
         $errors[] = 'File size exceeds system limit. Please check the file size limits on your hosting or upload another file';
         return $errors;
     }
     if (!SJB_WrappedFunctions::is_uploaded_file($this->temp_file_path)) {
         $errors[] = 'LANG_FILE_UPLOAD_FAILED';
         SJB_Logger::error('LANG_FILE_UPLOAD_FAILED');
     }
     if (!SJB_WrappedFunctions::move_uploaded_file($this->temp_file_path, $this->file_path)) {
         $errors[] = 'UPLOADED_LANG_FILE_CANNOT_BE_MOVED';
         SJB_Logger::error('UPLOADED_LANG_FILE_CANNOT_BE_MOVED');
     }
     $fileHelper = $this->i18n->getFileHelper();
     $languageID = $fileHelper->getLanguageIDForImportFile($this->file_name);
     if ($languageID === false) {
         $errors[] = 'The file format is invalid. Please try another file.';
         SJB_Logger::error('The file format is invalid. Please try another file.');
     }
     $lang_file_data = array('languageId' => $languageID, 'lang_file_path' => $this->file_path);
     $validator = $this->i18n->createImportLanguageValidator($lang_file_data);
     if (!$validator->isValid()) {
         $errors = array_merge($errors, $validator->getErrors());
     }
     $fileSystem = new SJB_FileSystem();
     if (!empty($errors)) {
         $fileSystem->deleteFile($this->file_path);
     }
     return $errors;
 }