debug("detected upload_max_filesize: $upload_max_filesize"); print('

' . $mod_strings['MSG_INCREASE_UPLOAD_MAX_FILESIZE'] . ' ' . get_cfg_var('cfg_file_path') . "

\n"); } // // process "run" commands // if( isset( $_REQUEST['run'] ) && ($_REQUEST['run'] != "") ){ $run = $_REQUEST['run']; if( $run == "upload" ){ $perform = false; if(isset($_REQUEST['release_id']) && $_REQUEST['release_id'] != ""){ require_once('ModuleInstall/PackageManager.php'); $pm = new PackageManager(); $tempFile = $pm->download('','',$_REQUEST['release_id']); $perform = true; $base_filename = urldecode($tempFile); } elseif(!empty($_REQUEST['load_module_from_dir'])) { //copy file to proper location then call performSetup copy($_REQUEST['load_module_from_dir'].'/'.$_REQUEST['upgrade_zip_escaped'], "upload://".$_REQUEST['upgrade_zip_escaped']); $perform = true; $base_filename = urldecode( $_REQUEST['upgrade_zip_escaped'] ); } else { if( empty( $_FILES['upgrade_zip']['tmp_name'] ) ){ echo $mod_strings['ERR_UW_NO_UPLOAD_FILE']; } else{ $upload = new UploadFile('upgrade_zip'); if(!$upload->confirm_upload() || strtolower(pathinfo($upload->get_stored_file_name(), PATHINFO_EXTENSION)) != 'zip' || !$upload->final_move($upload->get_stored_file_name()) ) { unlinkTempFiles(); sugar_die("Invalid Package"); } else { $tempFile = "upload://".$upload->get_stored_file_name(); $perform = true; $base_filename = urldecode( $_REQUEST['upgrade_zip_escaped'] ); } } } if($perform) { $manifest_file = extractManifest( $tempFile ); if(is_file($manifest_file)) { //SCAN THE MANIFEST FILE TO MAKE SURE NO COPIES OR ANYTHING ARE HAPPENING IN IT $ms = new ModuleScanner(); $fileIssues = $ms->scanFile($manifest_file); if(!empty($fileIssues)){ echo '

' . $mod_strings['ML_MANIFEST_ISSUE'] . '


'; $ms->displayIssues(); die(); } require_once( $manifest_file ); validate_manifest( $manifest ); $upgrade_zip_type = $manifest['type']; // exclude the bad permutations if( $view == "module" ) { if ($upgrade_zip_type != "module" && $upgrade_zip_type != "theme" && $upgrade_zip_type != "langpack") { unlinkTempFiles(); die($mod_strings['ERR_UW_NOT_ACCEPTIBLE_TYPE']); } } elseif( $view == "default" ) { if($upgrade_zip_type != "patch" ) { unlinkTempFiles(); die($mod_strings['ERR_UW_ONLY_PATCHES']); } } $base_filename = pathinfo($tempFile, PATHINFO_BASENAME); mkdir_recursive( "$base_upgrade_dir/$upgrade_zip_type" ); $target_path = "$base_upgrade_dir/$upgrade_zip_type/$base_filename"; $target_manifest = remove_file_extension( $target_path ) . "-manifest.php"; if( isset($manifest['icon']) && $manifest['icon'] != "" ){ $icon_location = extractFile( $tempFile ,$manifest['icon'] ); copy($icon_location, remove_file_extension( $target_path )."-icon.".pathinfo($icon_location, PATHINFO_EXTENSION)); } if(rename( $tempFile , $target_path )) { copy( $manifest_file, $target_manifest ); $GLOBALS['ML_STATUS_MESSAGE'] = $base_filename.$mod_strings['LBL_UW_UPLOAD_SUCCESS']; } else{ $GLOBALS['ML_STATUS_MESSAGE'] = $mod_strings['ERR_UW_UPLOAD_ERROR']; } } else { unlinkTempFiles(); die($mod_strings['ERR_UW_NO_MANIFEST']); } } } else if( $run == $mod_strings['LBL_UW_BTN_DELETE_PACKAGE'] ){ if(!empty ($_REQUEST['install_file']) ){ die($mod_strings['ERR_UW_NO_UPLOAD_FILE']); } $delete_me = hashToFile($delete_me); $checkFile = strtolower($delete_me); if(substr($delete_me, -4) != ".zip" || substr($delete_me, 0, 9) != "upload://" || strpos($checkFile, "..") !== false || !file_exists($checkFile)) { die("File is not a zipped archive."); } if(unlink($delete_me)) { // successful deletion? echo "Package $delete_me has been removed.
"; } else { die("Problem removing package $delete_me."); } } } if( $view == "module") { print( getClassicModuleTitle($mod_strings['LBL_MODULE_NAME'], array($mod_strings['LBL_MODULE_LOADER_TITLE']), false) ); } else { print( getClassicModuleTitle($mod_strings['LBL_MODULE_NAME'], array($mod_strings['LBL_MODULE_NAME'],$mod_strings['LBL_UPGRADE_WIZARD_TITLE']), false) ); } // upload link if(!empty($GLOBALS['sugar_config']['use_common_ml_dir']) && $GLOBALS['sugar_config']['use_common_ml_dir'] && !empty($GLOBALS['sugar_config']['common_ml_dir'])){ //rrs $form = '
'; $form .= '
'.$mod_strings['LBL_MODULE_UPLOAD_DISABLE_HELP_TEXT'].'
'; $form .=''; if ($handle = opendir($GLOBALS['sugar_config']['common_ml_dir'])) { while (false !== ($filename = readdir($handle))) { if($filename == '.' || $filename == '..' || !preg_match("#.*\.zip\$#", $filename)) { continue; } $form .= ''; } } $form .= '
'.$mod_strings['LBL_ML_NAME'].''.$mod_strings['LBL_ML_ACTION'].'
'.$filename.'
'; //rrs }else{ $form =<<
{$uploaddLabel}
eoq; } $hidden_fields = ""; $hidden_fields .= ""; $form2 = PackageManagerDisplay::buildPackageDisplay($form, $hidden_fields, $form_action, array('module')); $form3 =<<\n"); print( "\n" ); ?> */ $GLOBALS['log']->info( "Upgrade Wizard view"); ?>