Ejemplo n.º 1
0
        //[ValidateAntiForgeryToken]
        public HttpResponseMessage InstallPackage(string packageUrl)
        {
            Log.Add("install package:" + packageUrl);
            var  zoneId = Env.ZoneMapper.GetZoneId(ActiveModule.PortalID);
            var  appId  = new DnnMapAppToInstance(Log).GetAppIdFromInstance(new DnnContainer(ActiveModule), zoneId);
            bool success;

            // Install package
            // var messages = new List<ExportImportMessage>();
            var helper = new DnnImportExportEnvironment(Log);

            try
            {
                // Increase script timeout to prevent timeouts
                HttpContext.Current.Server.ScriptTimeout = 300;

                success = new ZipFromUrlImport(helper, zoneId, appId, PortalSettings.UserInfo.IsSuperUser, Log)
                          .ImportUrl(packageUrl, ActiveModule.DesktopModule.ModuleName == "2sxc-app");
            }
            catch (Exception ex)
            {
                Exceptions.LogException(ex);
                throw new Exception("An error occurred while installing the app: " + ex.Message, ex);
            }

            Log.Add("install completed with success:" + success);
            return(Request.CreateResponse(success ? HttpStatusCode.OK : HttpStatusCode.InternalServerError, new { success, helper.Messages }));
        }
Ejemplo n.º 2
0
 public ImportFromRemote(IEnvironmentLogger envLogger, ZipFromUrlImport zipImportFromUrl) : base("Bck.Export")
 {
     _envLogger        = envLogger;
     _zipImportFromUrl = zipImportFromUrl;
 }