/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); this.SetParameter(this.txtDnsServers, DnsServersParameter); this.SetParameter(this.txtMailTo, MailToParameter); this.SetParameter(this.txtPause, PauseBetweenQueriesParameter); this.SetParameter(this.ddlServers, ServerNameParameter); var servers = ES.Services.Servers.GetAllServers(); var osGroup = ES.Services.Servers.GetResourceGroups().First(x => x.GroupName == ResourceGroups.Os); var osProviders = ES.Services.Servers.GetProvidersByGroupId(osGroup.GroupId); var osServers = new List<ServerInfo>(); foreach (var server in servers) { var services = ES.Services.Servers.GetServicesByServerId(server.ServerId); if (services.Any(x => osProviders.Any(p=>p.ProviderId == x.ProviderId))) { osServers.Add(server); } } ddlServers.DataSource = osServers.Select(x => new { Id = x.ServerName, Name = x.ServerName }); ddlServers.DataTextField = "Name"; ddlServers.DataValueField = "Id"; ddlServers.DataBind(); ScheduleTaskParameterInfo parameter = this.FindParameterById(ServerNameParameter); ddlServers.SelectedValue = parameter.ParameterValue; }
/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); this.SetParameter(this.txtSpaceFolder, SpaceFolderParameter); this.SetParameter(this.txtZipFile, ZipFileParameter); }
/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); this.SetParameter(this.txtServerName, ServerNameParameter); this.SetParameter(this.txtExecutablePath, ExecutablePathParameter); this.SetParameter(this.txtExecutableParameters, ExecutableParametersParameter); }
/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); this.SetParameter(this.txtDaysBeforeNotify, DaysBeforeParameter); this.SetParameter(this.txtMailTo, MailToParameter); this.SetParameter(this.cbEnableNotify, EnableNotificationParameter); this.SetParameter(this.cbIncludeNonExistenDomains, IncludeNonExistenDomainsParameter); }
/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); this.SetParameter(this.txtMailFrom, MailFromParameter); this.SetParameter(this.txtMailTo, MailToParameter); this.SetParameter(this.txtMailSubject, MailSubjectParameter); this.SetParameter(this.txtMailBody, MailBodyParameter); }
/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); this.SetParameter(this.txtFilePath, FilePathParameter); this.SetParameter(this.txtServer, ServerParameter); this.SetParameter(this.txtUserName, UserNameParameter); this.SetParameter(this.txtPassword, PasswordParameter); this.SetParameter(this.txtRemoteFolder, RemoteFolderParameter); }
public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); SetParameter(cbExchange, EXCHANGE_REPORT); SetParameter(cbSharePoint, SHAREPOINT_REPORT); SetParameter(cbCRM, CRM_REPORT); SetParameter(cbOrganization, ORGANIZATION_REPORT); SetParameter(txtMail, EMAIL); }
/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); this.SetParameter(this.ddlDatabaseType, DatabaseGroupParameter); this.SetParameter(this.txtDatabaseName, DatabaseNameParameter); this.SetParameter(this.txtBackupFolder, BackupFolderParameter); this.SetParameter(this.txtBackupName, BackupNameParameter); this.SetParameter(this.ddlZipBackup, ZipBackupParameter); }
/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); this.SetParameter(this.txtUrl, UrlParameter); this.SetParameter(this.txtAccessUsername, AccessUsernameParameter); this.SetParameter(this.txtAccessPassword, AccessPasswordParameter); this.SetParameter(this.cbxResponseStatus, UseSendMessageIfResponseStatusParameter); this.SetParameter(this.cbxResponseContains, UseSendMessageIfResponseContainsParameter); this.SetParameter(this.cbxResponseDoesntContain, UseSendMessageIfResponseDoesntContainParameter); this.SetParameter(this.txtResponseStatus, SendMessageIfResponseStatusParameter); this.SetParameter(this.txtResponseContains, SendMessageIfResponseContainsParameter); this.SetParameter(this.txtResponseDoesntContain, SendMessageIfResponseDoesntContainParameter); this.SetParameter(this.txtMailFrom, MailFromParameter); this.SetParameter(this.txtMailTo, MailToParameter); this.SetParameter(this.txtMailSubject, MailSubjectParameter); this.SetParameter(this.txtMailBody, MailBodyParameter); }
/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); this.SetParameter(this.cbxMSSQLOverused, MSSQLOverusedParameter); this.SetParameter(this.cbxMYSQLOverused, MYSQLOverusedParameter); this.SetParameter(this.cbxDoSendWarning, SendWarningEmailParameter); this.SetParameter(this.txtWarningThreshold, WarningUsageThresholdParameter); this.SetParameter(this.cbxDoSendOverused, SendOverusedEmailParameter); this.SetParameter(this.txtOverusedThreshold, OverusedUsageThresholdParameter); this.SetParameter(this.txtWarningMailFrom, WarningMailFromParameter); this.SetParameter(this.txtWarningMailBcc, WarningMailBccParameter); this.SetParameter(this.txtWarningMailSubject, WarningMailSubjectParameter); this.SetParameter(this.txtWarningMailBody, WarningMailBodyParameter); this.SetParameter(this.txtOverusedMailBody, OverusedMailBodyParameter); this.SetParameter(this.txtOverusedMailFrom, OverusedMailFromParameter); this.SetParameter(this.txtOverusedMailBcc, OverusedMailBccParameter); this.SetParameter(this.txtOverusedMailSubject, OverusedMailSubjectParameter); }
/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); this.SetParameter(this.cbxDoSuspend, SuspendOverusedParameter); this.SetParameter(this.cbxSuspendWhenDiskSpaceOverused, SuspendWhenDiskSpaceOverusedParameter); this.SetParameter(this.cbxSuspendWhenBandwidthOverused, SuspendWhenBandwidthOverusedParameter); this.SetParameter(this.cbxDoSendWarning, SendWarningEmailParameter); this.SetParameter(this.txtWarningThreshold, WarningUsageThresholdParameter); this.SetParameter(this.cbxDoSendSuspension, SendSuspensionEmailParameter); this.SetParameter(this.txtSuspensionThreshold, SuspensionUsageThresholdParameter); this.SetParameter(this.txtWarningMailFrom, WarningMailFromParameter); this.SetParameter(this.txtWarningMailBcc, WarningMailBccParameter); this.SetParameter(this.txtWarningMailSubject, WarningMailSubjectParameter); this.SetParameter(this.txtWarningMailBody, WarningMailBodyParameter); this.SetParameter(this.txtSuspensionMailBody, SuspensionMailBodyParameter); this.SetParameter(this.txtSuspensionMailFrom, SuspensionMailFromParameter); this.SetParameter(this.txtSuspensionMailBcc, SuspensionMailBccParameter); this.SetParameter(this.txtSuspensionMailSubject, SuspensionMailSubjectParameter); }
/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); if (PanelSecurity.SelectedUser.Role == UserRole.Administrator && PanelSecurity.PackageId < 2) ddlDestination.Items.Remove(ddlDestination.Items.FindByValue("1")); if (PanelSecurity.LoggedUser.Role != UserRole.Administrator) ddlDestination.Items.Remove(ddlDestination.Items.FindByValue("2")); if (PanelSecurity.SelectedUser.Role != UserRole.Administrator) chkDeleteBackup.Visible = false; string modeValue = ""; string filePrefix = ""; if (PanelSecurity.PackageId > 0) { // load a single package //PackageInfo package = ES.Services.Packages.GetPackage(PanelSecurity.PackageId); PackageInfo[] packages = ES.Services.Packages.GetMyPackages(PanelSecurity.SelectedUser.UserId); foreach (PackageInfo package in packages) ddlSpace.Items.Add(new ListItem(package.PackageName, package.PackageId.ToString())); modeValue = ddlSpace.SelectedValue; filePrefix = "SpaceBackup"; } else if (PanelRequest.ServiceId > 0) { ddlDestination.Items.Remove(ddlDestination.Items.FindByValue("1")); ServiceInfo service = ES.Services.Servers.GetServiceInfo(PanelRequest.ServiceId); modeValue = service.ServiceName; filePrefix = "ServiceBackup"; } else if (PanelRequest.ServerId > 0) { ddlDestination.Items.Remove(ddlDestination.Items.FindByValue("1")); ServerInfo server = ES.Services.Servers.GetServerById(PanelRequest.ServerId); modeValue = server.ServerName; filePrefix = "ServerBackup"; } else if (PanelSecurity.SelectedUserId > 0) { // load user spaces PackageInfo[] packages = ES.Services.Packages.GetMyPackages(PanelSecurity.SelectedUserId); foreach (PackageInfo package in packages) ddlSpace.Items.Add(new ListItem(package.PackageName, package.PackageId.ToString())); modeValue = PanelSecurity.SelectedUser.Username; filePrefix = "UserBackup"; } ToggleFormControls(); InitFolderBrowser(); this.SetParameter(this.txtBackupFileName, BackupNameParameter); if (String.IsNullOrEmpty(this.txtBackupFileName.Text)) { // backup file txtBackupFileName.Text = String.Format("{0}-{1}-{2}.wspak", filePrefix, Regex.Replace(modeValue, "[^\\w]", "_"), DateTime.Now.ToString("ddMMyyyy", System.Globalization.CultureInfo.InvariantCulture)); } ScheduleTaskParameterInfo storePackageId = this.FindParameterById(StorePackageIdParameter); if (String.IsNullOrEmpty(storePackageId.ParameterValue)) { // Select server folder as destination. this.ddlDestination.SelectedIndex = 1; this.ToggleFormControls(); } Utils.SelectListItem(this.ddlSpace, storePackageId.ParameterValue); ScheduleTaskParameterInfo storePackageFolder = this.FindParameterById(StorePackageFolderParameter); this.spaceFolder.SelectedFile = storePackageFolder.ParameterValue; this.SetParameter(this.txtServerPath, StoreServerFolderParameter); this.SetParameter(this.chkDeleteBackup, DeleteTempBackupParameter); }
/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); this.SetParameter(this.ddlSuspendOverusedSpaces, SuspendOverusedSpacesParameter); }
/// <summary> /// Gets text parameter value from drop down list control. /// </summary> /// <param name="control">Control to get value from.</param> /// <param name="parameterName">Paramter name.</param> /// <returns>Parameter.</returns> protected ScheduleTaskParameterInfo GetParameter(DropDownList control, string parameterName) { ScheduleTaskParameterInfo parameter = new ScheduleTaskParameterInfo(); parameter.ParameterId = parameterName; parameter.ParameterValue = control.SelectedValue; return parameter; }
/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public override void SetParameters(ScheduleTaskParameterInfo[] parameters) { base.SetParameters(parameters); this.SetParameter(this.txtDaysBeforeNotify, DaysBeforeParameter); }
/// <summary> /// Gets text parameter value from textbox control. /// </summary> /// <param name="control">Control to get value from.</param> /// <param name="parameterName">Paramter name.</param> /// <returns>Parameter.</returns> protected ScheduleTaskParameterInfo GetParameter(TextBox control, string parameterName) { ScheduleTaskParameterInfo parameter = new ScheduleTaskParameterInfo(); parameter.ParameterId = parameterName; parameter.ParameterValue = (control.Text.Length > 1000) ? control.Text.Substring(0, 1000) : control.Text; return parameter; }
/// <summary> /// Gets checked parameter value from textbox control. /// </summary> /// <param name="control">Control to get value from.</param> /// <param name="parameterName">Paramter name.</param> /// <returns>Parameter.</returns> protected ScheduleTaskParameterInfo GetParameter(CheckBox control, string parameterName) { ScheduleTaskParameterInfo parameter = new ScheduleTaskParameterInfo(); parameter.ParameterId = parameterName; parameter.ParameterValue = control.Checked.ToString(); return parameter; }
/// <summary> /// Gets scheduler task parameters from view. /// </summary> /// <returns>Parameters list filled from view.</returns> public override ScheduleTaskParameterInfo[] GetParameters() { ScheduleTaskParameterInfo backupName = this.GetParameter(this.txtBackupFileName, BackupNameParameter); ScheduleTaskParameterInfo storePackageId = this.GetParameter(this.ddlSpace, StorePackageIdParameter); ScheduleTaskParameterInfo storePackageFolder = new ScheduleTaskParameterInfo(); storePackageFolder.ParameterId = StorePackageFolderParameter; storePackageFolder.ParameterValue = this.spaceFolder.SelectedFile; ScheduleTaskParameterInfo storeServerFolder = this.GetParameter(this.txtServerPath, StoreServerFolderParameter); ScheduleTaskParameterInfo deleteTempBackup = this.GetParameter(this.chkDeleteBackup, DeleteTempBackupParameter); return new ScheduleTaskParameterInfo[5] { backupName, storePackageId, storePackageFolder, storeServerFolder, deleteTempBackup }; }
/// <summary> /// Sets scheduler task parameters on view. /// </summary> /// <param name="parameters">Parameters list to be set on view.</param> public virtual void SetParameters(ScheduleTaskParameterInfo[] parameters) { input = new List<ScheduleTaskParameterInfo>(parameters); }
private static string BuildParametersXml(ScheduleTaskParameterInfo[] parameters) { XmlDocument doc = new XmlDocument(); XmlElement nodeProps = doc.CreateElement("parameters"); if (parameters != null) { foreach (ScheduleTaskParameterInfo parameter in parameters) { XmlElement nodeProp = doc.CreateElement("parameter"); nodeProp.SetAttribute("id", parameter.ParameterId); nodeProp.SetAttribute("value", parameter.ParameterValue); nodeProps.AppendChild(nodeProp); } } return nodeProps.OuterXml; }
private void SaveTask() { // gather form parameters ScheduleInfo sc = new ScheduleInfo(); sc.ScheduleId = PanelRequest.ScheduleID; sc.ScheduleName = Server.HtmlEncode(txtTaskName.Text.Trim()); sc.TaskId = ddlTaskType.SelectedValue; sc.PackageId = PanelSecurity.PackageId; sc.ScheduleTypeId = ddlSchedule.SelectedValue; sc.FromTime = timeFromTime.SelectedValue; sc.ToTime = timeToTime.SelectedValue; sc.StartTime = timeStartTime.SelectedValue; sc.Interval = intInterval.Interval; // check maximum interval // load context PackageContext cntx = PackagesHelper.GetCachedPackageContext(PackageId); if(cntx.Quotas.ContainsKey(Quotas.OS_MINIMUMTASKINTERVAL)) { int minInterval = cntx.Quotas[Quotas.OS_MINIMUMTASKINTERVAL].QuotaAllocatedValue; if (minInterval != -1 && sc.Interval < (minInterval * 60)) sc.Interval = (minInterval * 60); } // run once if (ddlSchedule.SelectedIndex == 3) { DateTime tm = timeStartTime.SelectedValue; DateTime dt = DateTime.Parse(txtStartDate.Text); DateTime startTime = new DateTime(dt.Year, dt.Month, dt.Day, tm.Hour, tm.Minute, tm.Second); sc.StartTime = startTime; } sc.WeekMonthDay = Utils.ParseInt(txtWeekDay.Text, 0); if (ddlSchedule.SelectedIndex == 2) sc.WeekMonthDay = Utils.ParseInt(txtMonthDay.Text, 0); sc.Enabled = chkEnabled.Checked; sc.PriorityId = ddlPriority.SelectedValue; sc.HistoriesNumber = 0; sc.MaxExecutionTime = intMaxExecutionTime.Interval; // gather parameters List<ScheduleTaskParameterInfo> parameters = new List<ScheduleTaskParameterInfo>(); foreach (GridViewRow row in gvTaskParameters.Rows) { ParameterEditor txtValue = (ParameterEditor)row.FindControl("txtValue"); if (txtValue == null) continue; string prmId = (string)gvTaskParameters.DataKeys[row.RowIndex][0]; ScheduleTaskParameterInfo parameter = new ScheduleTaskParameterInfo(); parameter.ParameterId = prmId; parameter.ParameterValue = txtValue.Value; parameters.Add(parameter); } sc.Parameters = parameters.ToArray(); // Gather parameters from view. if (this.configurationView != null) { sc.Parameters = this.configurationView.GetParameters(); } // save if (PanelRequest.ScheduleID == 0) { // add new schedule try { int result = ES.Services.Scheduler.AddSchedule(sc); if (result < 0) { ShowResultMessage(result); return; } } catch (Exception ex) { ShowErrorMessage("SCHEDULE_ADD_TASK", ex); return; } } else { // update existing try { int result = ES.Services.Scheduler.UpdateSchedule(sc); if (result < 0) { ShowResultMessage(result); return; } } catch (Exception ex) { ShowErrorMessage("SCHEDULE_UPDATE_TASK", ex); return; } } // redirect RedirectSpaceHomePage(); }