. * */ OC_Util::checkAdminUser(); OC_Util::checkAppEnabled('user_migrate'); // Import? if (isset($_POST['user_import'])) { $root = OC::$SERVERROOT . "/"; $importname = "owncloud_import_" . date("y-m-d_H-i-s"); // Save data dir for later $datadir = OC_Config::getValue( 'datadirectory' ); // Copy the uploaded file $from = $_FILES['owncloud_import']['tmp_name']; $to = get_temp_dir().'/'.$importname.'.zip'; if( !move_uploaded_file( $from, $to ) ){ OC_Log::write( 'user_migrate', "Failed to copy the uploaded file", OC_Log::ERROR ); exit(); } if( !$appsstatus = OC_Migrate::import( $to, 'user' ) ){ die( 'failed to to import' ); } else { // Check import status foreach( $appsstatus as $app => $status ){ if( $status != 'true' ){ // It failed for some reason if( $status == 'notsupported' ){ $notsupported[] = $app; } else if( !$status ){ $failed[] = $app; } } } // Any problems? if( isset( $notsupported ) || isset( $failed ) ){ if( count( $failed ) > 0 ){ die( 'Some apps failed to import. View the log please.' ); } else if( count( $notsupported ) > 0 ){ die( 'Some apps were not found in this owncloud instance and therefore could not be installed' ); } } } } else { // fill template $tmpl = new OC_Template('user_migrate', 'admin'); return $tmpl->fetchPage(); }