private void SaveItem() { _pickListView = getPickListHeader(null); _isPickListLocalized = !string.IsNullOrWhiteSpace(_pickListView.DefaultLanguage); if (string.IsNullOrEmpty(txtItemText.Text)) { throw new ValidationException(GetLocalResourceObject("error_InvalidItemName").ToString()); } if (_isPickListLocalized && string.IsNullOrEmpty(txtCode.Text)) { throw new ValidationException(GetLocalResourceObject("error_InvalidItemCode").ToString()); } var keyChanged = false; if (_pickListItemView == null && !string.IsNullOrEmpty(hdPickListItemId.Value) && !string.IsNullOrEmpty(hdPickListId.Value)) { _pickListItemView = EntityFactory.GetByCompositeId(typeof(IPickListItemView), new[] { "PickListItemId", "PickListId" }, new object[] { hdPickListItemId.Value, hdPickListId.Value }) as IPickListItemView; } if (_pickListItemView != null) { keyChanged = !string.Equals(_pickListItemView.Code, txtCode.Text) || !string.Equals(_pickListItemView.LanguageCode, cboLanguage.SelectedValue); } PickListHelper.DialogTypes dtMode = PickListHelper.StringToDialogTypes(hdMode.Value); if (keyChanged || (string.IsNullOrEmpty(hdPickListItemId.Value) && dtMode == PickListHelper.DialogTypes.Add) || dtMode == PickListHelper.DialogTypes.Localize) { var order = Convert.ToInt32(txtOrder.Text); PickList pl = PickList.AddNewPickListItem(hdPickListId.Value, txtItemText.Text, txtCode.Text, txtFilter.Text, cboLanguage.SelectedValue, order, string.Empty); if (chkIsDefaultItem.Checked) { PickList.SetAsDefaultItemCode(hdPickListId.Value, pl.ItemId); } } else { PickList pl = PickList.GetPickListItemById(hdPickListId.Value, hdPickListItemId.Value); pl.Shorttext = txtCode.Text; pl.Text = txtItemText.Text; var orderValue = Convert.ToInt32(txtOrder.Text); pl.Id = orderValue; pl.Filter = txtFilter.Text; pl.LanguageCode = cboLanguage.SelectedValue; PickList.SavePickListItem(pl); if (chkIsDefaultItem.Checked && string.IsNullOrEmpty(hdIsDefault.Value)) { PickList.SetAsDefaultItemCode(hdPickListId.Value, pl.ItemId); } if (!chkIsDefaultItem.Checked && !string.IsNullOrEmpty(hdIsDefault.Value)) { PickList.SetAsDefaultItemCode(hdPickListId.Value, string.Empty); } } var picklistService = ApplicationContext.Current.Services.Get <IPickListService>(true); picklistService.ClearPickListCache(); var refresher = PageWorkItem.Services.Get <IPanelRefreshService>(); refresher.RefreshAll(); }
protected void grdPicklistItems_RowCommand(object sender, GridViewCommandEventArgs e) { if (e == null || string.IsNullOrWhiteSpace(e.CommandName)) { return; } PickListHelper.DialogTypes commandName = PickListHelper.StringToDialogTypes(e.CommandName); switch (commandName) { case PickListHelper.DialogTypes.Edit: var editRowIndex = Convert.ToInt32(e.CommandArgument); if (DialogService != null) { DialogService.SetSpecs(285, 600, "AddEditPickListItem"); DialogService.DialogParameters.Clear(); DialogService.DialogParameters.Add("MODE", PickListHelper.DialogTypes.Edit); DialogService.DialogParameters.Add("PickListId", grdPicklistItems.DataKeys[editRowIndex].Values[1].ToString()); DialogService.DialogParameters.Add("PickListItemId", grdPicklistItems.DataKeys[editRowIndex].Values[0].ToString()); DialogService.ShowDialog(); } break; case PickListHelper.DialogTypes.Delete: var deleteRowIndex = Convert.ToInt32(e.CommandArgument); var selectedItem = PickList.GetPickListItemById( grdPicklistItems.DataKeys[deleteRowIndex].Values[1].ToString(), grdPicklistItems.DataKeys[deleteRowIndex].Values[0].ToString()); var isDefaultLanguage = PickList.IsItemADefaultLanguageItem(selectedItem); if (isDefaultLanguage) { PickList.DeletePickListItemsByCode(selectedItem); } else { PickList.DeletePickList(selectedItem); } var picklistService = ApplicationContext.Current.Services.Get <IPickListService>(true); picklistService.ClearPickListCache(); var refresher = PageWorkItem.Services.Get <IPanelRefreshService>(); refresher.RefreshAll(); break; case PickListHelper.DialogTypes.Localize: string[] ids = e.CommandArgument.ToString().Split(';'); if (DialogService != null) { DialogService.SetSpecs(285, 600, "AddEditPickListItem"); DialogService.DialogParameters.Clear(); DialogService.DialogParameters.Add("MODE", PickListHelper.DialogTypes.Localize); DialogService.DialogParameters.Add("PickListId", ids[0]); DialogService.DialogParameters.Add("PickListItemId", ids[1]); DialogService.ShowDialog(); } break; } }
public override Sage.Platform.Application.UI.ISmartPartInfo GetSmartPartInfo(Type smartPartInfoType) { var tinfo = new ToolsSmartPartInfo(); switch (PickListHelper.StringToDialogTypes(_mode)) { case PickListHelper.DialogTypes.Edit: tinfo.Description = GetLocalResourceObject("DialogTitleEdit").ToString(); tinfo.Title = GetLocalResourceObject("DialogTitleEdit").ToString(); break; case PickListHelper.DialogTypes.Localize: tinfo.Description = GetLocalResourceObject("DialogTitleLocalize").ToString(); tinfo.Title = GetLocalResourceObject("DialogTitleLocalize").ToString(); break; default: tinfo.Description = GetLocalResourceObject("DialogTitleAdd").ToString(); tinfo.Title = GetLocalResourceObject("DialogTitleAdd").ToString(); break; } foreach (Control c in Controls) { var cont = c as SmartPartToolsContainer; if (cont != null) { switch (cont.ToolbarLocation) { case SmartPartToolsLocation.Right: foreach (Control tool in cont.Controls) { tinfo.RightTools.Add(tool); } break; case SmartPartToolsLocation.Center: foreach (Control tool in cont.Controls) { tinfo.CenterTools.Add(tool); } break; case SmartPartToolsLocation.Left: foreach (Control tool in cont.Controls) { tinfo.LeftTools.Add(tool); } break; } } } return(tinfo); }
protected void btnSaveNew_Click(object sender, EventArgs e) { //save dialog form SaveItem(); PickListHelper.DialogTypes dtMode = PickListHelper.StringToDialogTypes(hdMode.Value); var isLocalized = dtMode == PickListHelper.DialogTypes.Localize; // clean up service values DialogService.DialogParameters.Remove("MODE"); if (!isLocalized) { DialogService.DialogParameters.Remove("PickListItemId"); } // set service to add mode DialogService.DialogParameters.Add("MODE", isLocalized ? PickListHelper.DialogTypes.Localize : PickListHelper.DialogTypes.Add); // close the current dialog to refresh the dialog title, tools, and controls Page.ClientScript.RegisterOnSubmitStatement(typeof(Page), "closePage", "window.onunload = CloseWindow();"); // bring up the new dialog DialogService.ShowDialog(); }
private void LoadView() { _inDefaultLanguage = false; if (_pickListItemView != null) { _inDefaultLanguage = _inDefaultLanguage || _pickListView.DefaultLanguage == _pickListItemView.LanguageCode; txtCode.Text = _pickListItemView.Code; txtItemText.Text = _pickListItemView.Text; txtOrder.Text = _pickListItemView.OrderSeq.ToString(); txtFilter.Text = _pickListItemView.Filter; SetDefaultFlag(); } else { txtCode.Text = string.Empty; txtItemText.Text = string.Empty; txtOrder.Text = _pickListView != null?Convert.ToString(PickList.GetNextOrderNumber(_pickListView.Id.ToString())) : "-1"; txtFilter.Text = string.Empty; chkIsDefaultItem.Checked = false; } switch (PickListHelper.StringToDialogTypes(_mode)) { case PickListHelper.DialogTypes.Add: cboLanguage.Text = _isPickListLocalized ? _pickListView.DefaultLanguage.ToLowerInvariant() : string.Empty; txtCode.Enabled = true; txtOrder.Enabled = true; txtFilter.Enabled = true; cboLanguage.Enabled = !_isPickListLocalized; chkIsDefaultItem.Enabled = true; break; case PickListHelper.DialogTypes.Localize: cboLanguage.Text = Request.Cookies["SLXLanguageSetting"].Value ?? _pickListView.DefaultLanguage.ToLowerInvariant(); txtCode.Enabled = false; txtOrder.Enabled = false; txtFilter.Enabled = false; cboLanguage.Enabled = _isPickListLocalized; chkIsDefaultItem.Enabled = false; break; default: var defaultLanguage = _isPickListLocalized ? "en" : string.Empty; if (_pickListItemView != null && _pickListItemView.LanguageCode != null) { defaultLanguage = _pickListItemView.LanguageCode; } else if (Request != null && Request.Cookies["SLXLanguageSetting"] != null && !string.IsNullOrWhiteSpace(Request.Cookies["SLXLanguageSetting"].Value)) { defaultLanguage = Request.Cookies["SLXLanguageSetting"].Value; } else if (_pickListView != null && _pickListView.DefaultLanguage != null) { defaultLanguage = _pickListView.DefaultLanguage; } if (!string.IsNullOrWhiteSpace(defaultLanguage)) { if (!cboLanguage.Items.Contains(new ListItem(defaultLanguage))) { cboLanguage.Items.Add(new ListItem(defaultLanguage)); } cboLanguage.SelectedValue = defaultLanguage; } else { cboLanguage.SelectedIndex = 0; } txtCode.Enabled = !_isPickListLocalized || _inDefaultLanguage; txtOrder.Enabled = !_isPickListLocalized || _inDefaultLanguage; txtFilter.Enabled = !_isPickListLocalized || _inDefaultLanguage; cboLanguage.Enabled = true; chkIsDefaultItem.Enabled = !_isPickListLocalized || _inDefaultLanguage; break; } if (!cboLanguage.Enabled) { cboLanguage.Attributes.Add("disabled", ""); } else { cboLanguage.Attributes.Remove("disabled"); } txtItemText.Focus(); }