public WBQueryClause(WBColumn column, Comparators comparator, Object value) { Column = column; Comparator = comparator; Value = value; switch (Comparator) { case Comparators.Equals: { break; } case Comparators.NotEquals: { break; } case Comparators.LessThan: { break; } case Comparators.LessThanEquals: { break; } case Comparators.GreaterThan: { break; } case Comparators.GreaterThanEquals: { break; } case Comparators.IsNull: { break; } case Comparators.IsNotNull: { break; } default: throw new NotImplementedException("The selected comparator has not been implemented yet."); } UseDescendants = false; }
public WBDynamicFormattedIconTemplateField(String formatString, List <WBColumn> columns, bool useLowerCaseIconURL, WBColumn linkURLDataColumn) { LinkURLDataColumn = linkURLDataColumn; FormatString = formatString; Columns = columns; UseLowerCaseIconURL = useLowerCaseIconURL; }
protected void DocumentsForSubject_Sorting(object sender, GridViewSortEventArgs e) { WBLogging.Debug("In DocumentsForSubject_Sorting with e.SortExpression = " + e.SortExpression); SortExpression = e.SortExpression; sortColumn = WBColumn.GetKnownColumnByInternalName(SortExpression); if (GridViewSortDirection == SortDirection.Ascending) { GridViewSortDirection = SortDirection.Descending; ascending = false; WBLogging.Debug("In gridView_Sorting setting to descending"); } else { GridViewSortDirection = SortDirection.Ascending; ascending = true; WBLogging.Debug("In gridView_Sorting setting to ascending"); } // If we're re-sorting the data let's start back on page 0: DocumentsForSubject.PageIndex = 0; RefreshBoundDocumentsList(); }
protected void gridView_Sorting(object sender, GridViewSortEventArgs e) { WBLogging.Debug("In gridView_Sorting with e.SortExpression = " + e.SortExpression); string sortExpression = e.SortExpression; ViewState["SortExpression"] = sortExpression; sortColumn = WBColumn.GetKnownColumnByInternalName(sortExpression); if (GridViewSortDirection == SortDirection.Ascending) { GridViewSortDirection = SortDirection.Descending; ascending = false; WBLogging.Debug("In gridView_Sorting setting to descending"); } else { GridViewSortDirection = SortDirection.Ascending; ascending = true; WBLogging.Debug("In gridView_Sorting setting to ascending"); } // If we're re-sorting the data let's start back on page 0: gridView.PageIndex = 0; }
private void checkSortState() { String sortExpression = ViewState["SortExpression"].WBxToString(); sortColumn = WBColumn.GetKnownColumnByInternalName(sortExpression); if (GridViewSortDirection == SortDirection.Ascending) ascending = true; else ascending = false; }
public void AddExtraMetadata(WBColumn column, Object value) { if (value is DateTime) { this.ExtraMetadataDictionary[column.InternalName] = SPUtility.CreateISO8601DateTimeFromSystemDateTime((DateTime)value); } else { this.ExtraMetadataDictionary[column.InternalName] = value.WBxToString(); } }
public Object this[WBColumn column] { get { return(Metadata[column]); } set { Metadata[column] = value; } }
public bool HasValue(WBColumn column) { if (IsSPListItem) { return(_listItem.WBxHasValue(column)); } if (IsSPListItemVersion) { return(_listItemVersion.WBxHasValue(column)); } return(IsUsingColumn(column) && !IsNullOrEmpty(column)); }
public bool IsUsingColumn(WBColumn column) { if (IsSPListItem) { return(_listItem.WBxExists(column)); } if (IsSPListItemVersion) { return(_listItemVersion.WBxExists(column)); } return(_usedColumns.Contains(column)); }
private void checkSortState() { sortColumn = WBColumn.GetKnownColumnByInternalName(SortExpression); if (GridViewSortDirection == SortDirection.Ascending) { ascending = true; } else { ascending = false; } }
private bool LoadDefaultView() { SPWeb web = SPContext.Current.Web; String selectedViewStyle = web.WBxGetProperty("wbf-wbexplorer-view-style"); if (String.IsNullOrEmpty(selectedViewStyle)) { return(false); } SelectedViewStyle = selectedViewStyle; SetSortColumn(WBColumn.GetKnownColumnByInternalName(web.WBxGetProperty("wbf-wbexplorer-sort-column"))); ascending = web.WBxGetBoolProperty("wbf-wbexplorer-sort-ascending"); if (ascending) { GridViewSortDirection = SortDirection.Ascending; } else { GridViewSortDirection = SortDirection.Descending; } SelectedWorkBoxStatusFilter = web.WBxGetProperty("wbf-wbexplorer-status-filter"); SelectedInvolvementFilter = web.WBxGetProperty("wbf-wbexplorer-involvement-filter"); SelectedRecordsTypeGUID = web.WBxGetProperty("wbf-wbexplorer-records-type-guid"); StatusCheckBox.Checked = web.WBxGetBoolProperty("wbf-wbexplorer-status-check-box"); RecordsTypeCheckBox.Checked = web.WBxGetBoolProperty("wbf-wbexplorer-records-type-check-box"); LastModifiedCheckBox.Checked = web.WBxGetBoolProperty("wbf-wbexplorer-last-modified-check-box"); LastVisitedCheckBox.Checked = web.WBxGetBoolProperty("wbf-wbexplorer-last-visited-check-box"); DateCreatedCheckBox.Checked = web.WBxGetBoolProperty("wbf-wbexplorer-date-created-check-box"); ReferenceDateCheckBox.Checked = web.WBxGetBoolProperty("wbf-wbexplorer-reference-date-check-box"); ReferenceIDCheckBox.Checked = web.WBxGetBoolProperty("wbf-wbexplorer-reference-id-check-box"); OwningTeamCheckBox.Checked = web.WBxGetBoolProperty("wbf-wbexplorer-owning-team-check-box"); InvolvedTeamsCheckBox.Checked = web.WBxGetBoolProperty("wbf-wbexplorer-involved-teams-check-box"); VisitingTeamsCheckBox.Checked = web.WBxGetBoolProperty("wbf-wbexplorer-visiting-teams-check-box"); InvolvedIndividualsCheckBox.Checked = web.WBxGetBoolProperty("wbf-wbexplorer-involved-individuals-check-box"); VisitingIndividualsCheckBox.Checked = web.WBxGetBoolProperty("wbf-wbexplorer-visiting-individuals-check-box"); return(true); }
public List <SPUser> GetMultiUserColumn(WBColumn column) { switch (BackingType) { case BackingTypes.SPListItem: { return(_listItem.WBxGetMultiUserColumn(column)); } case BackingTypes.SPListItemVersion: { return(_listItemVersion.WBxGetMultiUserColumn(column)); } default: throw new NotImplementedException("The backing type selected has no implementation for GetMultiUserColumn"); } }
public WBItem(Dictionary <String, String> values) { _listItem = null; _listItemVersion = null; _dictionary = new Dictionary <WBColumn, Object>(); BackingType = BackingTypes.Dictionary; if (values != null) { foreach (String internalColumnName in values.Keys) { WBColumn column = WBColumn.GetKnownColumnByInternalName(internalColumnName); if (column == null) { throw new Exception("In WBItem(Dictionary<,>): Not yet handling situation when an unknown internal name is used: " + internalColumnName); } this[column] = values[internalColumnName]; } } _valuesHaveChanged = false; }
// Urm... this should be a property surely!! :) protected void SetSortColumn(WBColumn column) { ViewState["SortExpression"] = column.InternalName; sortColumn = column; OrderBy.WBxSafeSetSelectedValue(column.InternalName); }
private void addColumnAsOption(DropDownList dropDownList, WBColumn column) { dropDownList.Items.Add(new ListItem(column.PrettyName, column.InternalName)); }
public void OrderByDescending(WBColumn column) { OrderBy(column, false); }
public void OrderBy(WBColumn column, bool ascending) { this._orderByColumn = column; this._ascending = ascending; }
protected override void Render(HtmlTextWriter writer) { //WBTaxonomy recordsTypes = WBTaxonomy.GetRecordsTypes(SPContext.Current.Site); WBTaxonomy seriesTags = WBTaxonomy.GetSeriesTags(SPContext.Current.Site); WBTerm seriesTag = null; if (SeriesTag != null && SeriesTag != "") { Term seriesTagTerm = seriesTags.GetSelectedTermByPath(SeriesTag); if (seriesTagTerm != null) { seriesTag = new WBTerm(seriesTags, seriesTagTerm); } } WBQuery query = new WBQuery(); //query.AddEqualsFilter(WBColumn.RecordsType, workBox.RecordsType); if (seriesTag != null) { query.AddEqualsFilter(WBColumn.SeriesTag, seriesTag); } if (ReferenceID != null && ReferenceID != "") { query.AddEqualsFilter(WBColumn.ReferenceID, ReferenceID); } // if (FilterByOwningTeam) // query.AddEqualsFilter(WBColumn.OwningTeam, workBox.OwningTeam); if (sortColumn != null) { WBLogging.Debug("Sorting in Render with sortColumn: " + sortColumn.DisplayName); } else { WBLogging.Debug("SortColumn was null - so sorting by declared record date."); sortColumn = WBColumn.DeclaredRecord; ascending = false; } if (sortColumn != null) { query.OrderBy(sortColumn, ascending); } query.AddViewColumn(WBColumn.Name); query.AddViewColumn(WBColumn.FileTypeIcon); query.AddViewColumn(WBColumn.EncodedAbsoluteURL); query.AddViewColumn(WBColumn.ReferenceDate); query.AddViewColumn(WBColumn.ProtectiveZone); query.AddViewColumn(WBColumn.DeclaredRecord); WBFarm farm = WBFarm.Local; using (SPSite site = new SPSite(farm.ProtectedRecordsLibraryUrl)) { using (SPWeb web = site.OpenWeb()) { SPList recordsLibrary = web.GetList(farm.ProtectedRecordsLibraryUrl); DataTable dataTable = recordsLibrary.WBxGetDataTable(site, query, MaxNumDocuments); gridView.DataSource = dataTable; gridView.Columns.Clear(); gridView.Columns.Add(WBUtils.DynamicIconTemplateField(WBColumn.FileTypeIcon, WBColumn.EncodedAbsoluteURL)); gridView.Columns.Add(WBUtils.HyperLinkField(WBColumn.Name, WBColumn.EncodedAbsoluteURL, sortColumn, ascending)); gridView.Columns.Add(WBUtils.BoundField(WBColumn.ReferenceDate, sortColumn, ascending)); gridView.Columns.Add(WBUtils.BoundField(WBColumn.ProtectiveZone, sortColumn, ascending)); gridView.Columns.Add(WBUtils.BoundField(WBColumn.DeclaredRecord, sortColumn, ascending)); gridView.DataBind(); } } base.Render(writer); }
public void AddIsNullFilter(WBColumn column) { _clauses.Add(new WBQueryClause(column, WBQueryClause.Comparators.IsNull, "")); }
public void AddEqualsFilter(WBColumn column, Object value) { _clauses.Add(new WBQueryClause(column, WBQueryClause.Comparators.Equals, value)); }
public void AddFilter(WBColumn column, WBQueryClause.Comparators comparator, Object value) { _clauses.Add(new WBQueryClause(column, comparator, value)); }
public void AddViewColumn(WBColumn column) { _viewColumns.Add(column); }
protected override void Render(HtmlTextWriter writer) { WorkBox workBox = WorkBox.GetIfWorkBox(SPContext.Current); if (workBox == null) { errorLiteral.Text = "<i>(You can only use this web part in a work box)</i>"; } else { WBTaxonomy recordsTypes = WBTaxonomy.GetRecordsTypes(SPContext.Current.Site); WBTaxonomy seriesTags = WBTaxonomy.GetSeriesTags(recordsTypes); WBTerm thisSeries = workBox.SeriesTag(seriesTags); WBQuery query = new WBQuery(); query.AddEqualsFilter(WBColumn.RecordsType, workBox.RecordsType); if (FilterBySeriesTag) { query.AddEqualsFilter(WBColumn.SeriesTag, workBox.SeriesTag(seriesTags)); } if (FilterByReferenceID) { query.AddEqualsFilter(WBColumn.ReferenceID, workBox.ReferenceID); } // if (FilterByOwningTeam) // query.AddEqualsFilter(WBColumn.OwningTeam, workBox.OwningTeam); if (sortColumn != null) { WBLogging.Debug("Sorting in Render with sortColumn: " + sortColumn.DisplayName); } else { WBLogging.Debug("Sorting Render - sortColumn was null"); } if (sortColumn != null) { query.OrderBy(sortColumn, ascending); } query.AddViewColumn(WBColumn.Title); query.AddViewColumn(WBColumn.WorkBoxURL); query.AddViewColumn(WBColumn.ReferenceDate); query.AddViewColumn(WBColumn.WorkBoxStatus); WBColumn testIfIsThisWorkBox = new WBColumn("IfIsThisWorkBox", WBColumn.DataTypes.VirtualConditional); testIfIsThisWorkBox.TestColumnInternalName = WBColumn.Title.InternalName; testIfIsThisWorkBox.TestColumnValue = workBox.Title; testIfIsThisWorkBox.ValueIfEqual = "===>"; query.AddViewColumn(testIfIsThisWorkBox); DataTable dataTable = workBox.Collection.Query(query); gridView.DataSource = new DataView(dataTable); BoundField testIfIsThisWorkBoxField = WBUtils.BoundField(testIfIsThisWorkBox, HorizontalAlign.Center, sortColumn, ascending); testIfIsThisWorkBoxField.HeaderText = " "; gridView.Columns.Add(testIfIsThisWorkBoxField); gridView.Columns.Add(WBUtils.FixedIconTemplateField(WorkBox.ICON_16_IMAGE_URL, WBColumn.WorkBoxURL)); gridView.Columns.Add(WBUtils.HyperLinkField(WBColumn.Title, WBColumn.WorkBoxURL, sortColumn, ascending)); gridView.Columns.Add(WBUtils.BoundField(WBColumn.ReferenceDate, sortColumn, ascending)); gridView.Columns.Add(WBUtils.BoundField(WBColumn.WorkBoxStatus, HorizontalAlign.Center, sortColumn, ascending)); gridView.DataBind(); if (ShowCreateNewLink) { string createNewText = workBox.RecordsType.CreateNewWorkBoxText; string createNewURL = workBox.Collection.GetUrlForNewDialog(workBox, WorkBox.RELATION_TYPE__DYNAMIC); createNewLink.Text = "<a href=\"#\" onclick=\"javascript: WorkBoxFramework_commandAction('" + createNewURL + "', 600, 500); \">" + createNewText + "</a>"; } workBox.Dispose(); } base.Render(writer); }
public StringBuilder AppendCAMLClauseTo(StringBuilder builder, SPSite site) { if (RenderForView) { if (Column.DataType == WBColumn.DataTypes.ManagedMetadata) { return(AppendCAMLClause(builder, Column.InternalName, "Text", ((WBTerm)Value).Name)); } else { return(AppendCAMLClause(builder, Column.InternalName, "Text", Value.WBxToString())); } } switch (Column.DataType) { case WBColumn.DataTypes.ManagedMetadata: { return(AppendMMCAMLClause(builder, site, Column.InternalName, (WBTerm)Value, UseDescendants)); } case WBColumn.DataTypes.Text: { return(AppendCAMLClause(builder, Column.InternalName, "Text", (String)Value)); } case WBColumn.DataTypes.Integer: { return(AppendCAMLClause(builder, Column.InternalName, "Number", Value.ToString())); } case WBColumn.DataTypes.Counter: { return(AppendCAMLClause(builder, Column.InternalName, "Counter", Value.ToString())); } case WBColumn.DataTypes.Choice: { return(AppendCAMLClause(builder, Column.InternalName, "Choice", (String)Value)); } case WBColumn.DataTypes.DateTime: { String dateTimeString = null; if (Value is DateTime) { dateTimeString = SPUtility.CreateISO8601DateTimeFromSystemDateTime((DateTime)Value); } else { dateTimeString = Value.WBxToString(); } return(AppendCAMLClause(builder, Column.InternalName, "DateTime", dateTimeString)); } case WBColumn.DataTypes.URL: { return(AppendCAMLClause(builder, Column.InternalName, "URL", (String)Value)); } case WBColumn.DataTypes.Boolean: { if ((bool)Value) { return(AppendCAMLClause(builder, Column.InternalName, "Integer", "1")); } else { return(AppendCAMLClause(builder, Column.InternalName, "Integer", "0")); } } } throw new NotImplementedException("Creation of CAML clauses for WBColumns of data type " + WBColumn.DataTypeToString(Column.DataType) + " has not yet been implmenented"); }
public Object this[WBColumn column] { get { UseColumn(column); Object value = null; switch (BackingType) { case BackingTypes.SPListItem: { value = _listItem.WBxGet(column); // WBLogging.Debug("Got value: " + value + " for column: " + column.DisplayName); break; } case BackingTypes.SPListItemVersion: { value = _listItemVersion.WBxGet(column); // WBLogging.Debug("Got value: " + value + " for column: " + column.DisplayName); break; } case BackingTypes.Dictionary: { if (_dictionary.ContainsKey(column)) { value = _dictionary[column]; } break; } default: throw new NotImplementedException("The backing type selected has no implementation for public Object this[WBColumn column]"); } // This approach allows for any generic column based processing of the returned value return(value); } set { UseColumn(column); _valuesHaveChanged = true; // First we might do some general processing of the value being set dependent on the type of column: Object processedValue = value; if (column.DataType == WBColumn.DataTypes.ManagedMetadata) { processedValue = processedValue.WBxToString(); } // Then we set the value in a way that depends on what is backing the item: switch (BackingType) { case BackingTypes.SPListItem: { // WBLogging.Debug("Setting WBItem metadata value backed by SPListItem using Column: " + column.DisplayName + " Value: " + processedValue); _listItem.WBxSet(column, processedValue); break; } case BackingTypes.SPListItemVersion: { throw new Exception("In call to set column value for a WBItem backed by SPListItemVersion which are read only so cannot have any value set"); } case BackingTypes.Dictionary: { _dictionary[column] = processedValue; break; } default: throw new NotImplementedException("The backing type selected has no implementation for public Object this[WBColumn column]"); } } }
// Questionnable if these versions are really needed! public void AddExtraMetadata(WBColumn column, String value) { this.ExtraMetadataDictionary[column.InternalName] = value; }
public bool IsNotEmpty(WBColumn column) { return(HasValue(column)); }
public WBIconItemTemplateField(WBColumn iconImageURLDataColumn, WBColumn linkURLDataColumn) { LinkURLDataColumn = linkURLDataColumn; IconImageURLDataColumn = iconImageURLDataColumn; StaticIconImageURL = null; }
public WBIconItemTemplateField(String staticIconImageURL, WBColumn linkURLDataColumn) { LinkURLDataColumn = linkURLDataColumn; StaticIconImageURL = staticIconImageURL; IconImageURLDataColumn = null; }
public void OrderByAscending(WBColumn column) { OrderBy(column, true); }