public static int InstallFrontPage(int siteItemId, string username, string password) { // check account int accountCheck = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive); if (accountCheck < 0) return accountCheck; // load site item WebSite siteItem = (WebSite)PackageController.GetPackageItem(siteItemId); if (siteItem == null) return BusinessErrorCodes.ERROR_WEB_SITE_PACKAGE_ITEM_NOT_FOUND; // check package int packageCheck = SecurityContext.CheckPackage(siteItem.PackageId, DemandPackage.IsActive); if (packageCheck < 0) return packageCheck; // place log record TaskManager.StartTask("WEB_SITE", "INSTALL_FP", siteItem.Name); TaskManager.ItemId = siteItemId; TaskManager.WriteParameter("FrontPage username", username); try { WebServer web = new WebServer(); ServiceProviderProxy.Init(web, siteItem.ServiceId); // load original site //WebSite origSite = GetWebSite(siteItemId); // install FP bool success = web.InstallFrontPage(siteItem.SiteId, username, password); if (!success) { TaskManager.WriteWarning("Account exists"); return BusinessErrorCodes.ERROR_FP_ACCOUNT_EXISTS; } // update site with FP account siteItem.FrontPageAccount = username; siteItem.FrontPagePassword = CryptoUtils.Encrypt(password); PackageController.UpdatePackageItem(siteItem); // restore original site //UpdateWebSite(origSite); return 0; } catch (Exception ex) { throw TaskManager.WriteError(ex); } finally { TaskManager.CompleteTask(); } }