Skip to content

Commit

Permalink
Remove divisions dropdown from divisions search #431
Browse files Browse the repository at this point in the history
  • Loading branch information
roman-yagodin committed May 17, 2021
1 parent 0a6738e commit 92568dd
Show file tree
Hide file tree
Showing 6 changed files with 91 additions and 224 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -60,21 +60,18 @@
<data xml:space="preserve" name="linkSearch.Text">
<value>Search</value>
</data>
<data xml:space="preserve" name="SearchParams.Warning">
<value>Please enter search phrase and (or) select division.</value>
</data>
<data xml:space="preserve" name="SearchParams.Warning">
<value>Please enter search phrase.</value>
</data>
<data xml:space="preserve" name="checkIncludeSubdivisions.Text">
<value>Include Subdivisions</value>
</data>
<data xml:space="preserve" name="NoDivisionsFound.Warning">
<value>No division records found matching the specified search parameters.</value>
</data>
<data xml:space="preserve" name="SearchHint.Info">
<value>This form provides search for division info. Enter any title,
phone or fax number, cabinet (location) or email address part and (or)
select a division, then press &quot;Search&quot;. Division details
are available on division's homepage by the link with its title.</value>
</data>
<data xml:space="preserve" name="SearchHint.Info">
<value>This form provides search for division info. Enter any title, phone or fax number, cabinet (location) or email address part and press "Search". Division details are available on division's homepage by the link with its title.</value>
</data>
<data name="HeadPosition_IsVacant.Text" xml:space="preserve">
<value></value>
</data>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,9 +60,9 @@
<data xml:space="preserve" name="linkSearch.Text">
<value>Поиск</value>
</data>
<data xml:space="preserve" name="SearchParams.Warning">
<value>Введите поисковую фразу и (или) выберите подразделение.</value>
</data>
<data xml:space="preserve" name="SearchParams.Warning">
<value>Введите поисковую фразу.</value>
</data>
<data xml:space="preserve" name="checkIncludeSubdivisions.Text">
<value>Включая подчиненные подразделения</value>
</data>
Expand All @@ -72,12 +72,9 @@
<data xml:space="preserve" name="NoDivisionsFound.Warning">
<value>Не найдены записи о подразделениях, удовлетворяющие заданным условиям поиска.</value>
</data>
<data xml:space="preserve" name="SearchHint.Info">
<value>Данная форма позволяет осуществлять поиск информации о подразделениях. Введите любую часть названия,
номера телефона или факса, названия кабинета (местоположения) или адреса электронной почты
и (или) выберите подразделение, затем нажмите &quot;Поиск&quot;. Подробная информация
о подразделении доступна на странице подразделения по ссылке с его названием.</value>
</data>
<data xml:space="preserve" name="SearchHint.Info">
<value>Данная форма позволяет осуществлять поиск информации о подразделениях. Введите любую часть названия, номера телефона или факса, названия кабинета (местоположения) или адреса электронной почты, затем нажмите "Поиск". Подробная информация о подразделении доступна на странице подразделения по ссылке с его названием.</value>
</data>
<data name="HeadPosition_IsVacant.Text" xml:space="preserve">
<value></value>
</data>
Expand Down
14 changes: 0 additions & 14 deletions R7.University.Divisions/ViewDivisionDirectory.ascx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
<%@ Register TagPrefix="controls" TagName="AgplSignature" Src="~/DesktopModules/MVC/R7.University/R7.University.Controls/AgplSignature.ascx" %>

<dnn:DnnJsInclude runat="server" FilePath="dnn.jquery.js" PathNameAlias="SharedScripts" />
<dnn:DnnJsInclude runat="server" FilePath="~/DesktopModules/MVC/R7.University/R7.University.Divisions/js/tree.js" />
<dnn:DnnCssInclude runat="server" FilePath="~/DesktopModules/MVC/R7.University/R7.University/assets/css/module.css" />

<div class="dnnForm dnnClear division-directory">
Expand All @@ -13,19 +12,6 @@
<asp:Panel runat="server" DefaultButton="linkSearch" CssClass="dnnFormItem dnnClear">
<div class="wrapperSearchFlags"></div>
<asp:TextBox id="textSearch" runat="server" MaxLength="50" CssClass="textSearch" />
<div class="wrapperDivisions">
<a id="linkDivisions" class="btn btn-outline-secondary linkDivisions" onclick="$('.division-directory #hiddenDivisions').toggle ()"></a>
<div id="hiddenDivisions">
<dnn:DnnTreeView id="treeDivisions" runat="server"
OnClientLoad="dd_treeLoad"
OnClientNodeClicked="dd_treeNodeClicked"
DataTextField="Title"
DataValueField="DivisionID"
DataFieldID = "DivisionID"
DataFieldParentID="ParentDivisionID"
/>
</div>
</div>
<asp:LinkButton id="linkSearch" runat="server" resourcekey="linkSearch.Text" CssClass="btn btn-primary linkSearch" OnClick="linkSearch_Click" />
</asp:Panel>
<asp:GridView id="gridDivisions" runat="server" Visible="false" AutoGenerateColumns="false"
Expand Down
31 changes: 15 additions & 16 deletions R7.University.Divisions/ViewDivisionDirectory.ascx.controls.cs
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
using System.Web.UI.WebControls;
using DotNetNuke.Web.UI.WebControls;

namespace R7.University.Divisions
{
public partial class ViewDivisionDirectory
{
protected MultiView mviewDivisionDirectory;
protected GridView gridDivisions;
protected TextBox textSearch;
protected LinkButton linkSearch;
protected DnnTreeView treeDivisions;
protected GridView gridObrnadzorDivisions;
protected GridView gridObrnadzorGoverningDivisions;
}
}
using System.Web.UI.WebControls;
using DotNetNuke.Web.UI.WebControls;

namespace R7.University.Divisions
{
public partial class ViewDivisionDirectory
{
protected MultiView mviewDivisionDirectory;
protected GridView gridDivisions;
protected TextBox textSearch;
protected LinkButton linkSearch;
protected GridView gridObrnadzorDivisions;
protected GridView gridObrnadzorGoverningDivisions;
}
}
93 changes: 7 additions & 86 deletions R7.University.Divisions/ViewDivisionDirectory.ascx.cs
Original file line number Diff line number Diff line change
@@ -1,24 +1,3 @@
//
// ViewDivisionDirectory.ascx.cs
//
// Author:
// Roman M. Yagodin <[email protected]>
//
// Copyright (c) 2014-2019 Roman M. Yagodin
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.

using System;
using System.Collections.Generic;
using System.Linq;
Expand All @@ -35,14 +14,12 @@
using R7.Dnn.Extensions.Controls;
using R7.Dnn.Extensions.Modules;
using R7.Dnn.Extensions.ViewModels;
using R7.University.Components;
using R7.University.Configuration;
using R7.University.Divisions.Models;
using R7.University.Divisions.Queries;
using R7.University.Dnn;
using R7.University.ModelExtensions;
using R7.University.Models;
using R7.University.Queries;
using R7.University.Security;
using R7.University.Utilities;

Expand Down Expand Up @@ -71,8 +48,6 @@ public override void Dispose ()

#endregion



#region Session properties

protected string SearchText
Expand All @@ -84,26 +59,6 @@ protected string SearchText
set { Session ["DivisionDirectory.SearchText." + TabModuleId] = value; }
}

protected int SearchDivision
{
get {
var objSearchDivision = Session ["DivisionDirectory.SearchDivision." + TabModuleId];
return objSearchDivision != null ? (int) objSearchDivision : Null.NullInteger;

}
set { Session ["DivisionDirectory.SearchDivision." + TabModuleId] = value; }
}

protected bool SearchIncludeSubdivisions
{
get {
var objSearchIncludeSubdivisions = Session ["DivisionDirectory.SearchIncludeSubdivisions." + TabModuleId];
return objSearchIncludeSubdivisions != null ? (bool) objSearchIncludeSubdivisions : true;

}
set { Session ["DivisionDirectory.SearchIncludeSubdivisions." + TabModuleId] = value; }
}

#endregion

ViewModelContext<DivisionDirectorySettings> viewModelContext;
Expand Down Expand Up @@ -161,21 +116,6 @@ protected override void OnInit (EventArgs e)
// display search hint
this.Message ("SearchHint.Info", MessageType.Info, true);

var now = HttpContext.Current.Timestamp;
var divisions = new FlatQuery<DivisionInfo> (ModelContext).ListOrderBy (d => d.Title)
.Where (d => d.IsPublished (now) || IsEditable);

treeDivisions.DataSource = divisions;
treeDivisions.DataBind ();

// select first node
if (treeDivisions.Nodes.Count > 0) {
treeDivisions.Nodes [0].Selected = true;
}

// TODO: Level should be set in settings?
R7.University.Utilities.Utils.ExpandToLevel (treeDivisions, 2);

gridDivisions.LocalizeColumnHeaders (LocalResourceFile);
}
else if (Settings.Mode == DivisionDirectoryMode.ObrnadzorDivisions) {
Expand All @@ -199,25 +139,11 @@ protected override void OnLoad (EventArgs e)
try {
if (Settings.Mode == DivisionDirectoryMode.Search) {
if (!IsPostBack) {
if (!string.IsNullOrWhiteSpace (SearchText) || !Null.IsNull (SearchDivision)) {
if (!string.IsNullOrWhiteSpace (SearchText)) {

// restore current search
textSearch.Text = SearchText;

if (Null.IsNull (SearchDivision)) {
// select first node
if (treeDivisions.Nodes.Count > 0) {
treeDivisions.Nodes [0].Selected = true;
}
}
else {
treeDivisions.SelectAndExpandByValue (SearchDivision.ToString ());
}

// perform search
if (SearchParamsOK (SearchText, SearchDivision, false)) {
DoSearch (SearchText, SearchDivision);
}
DoSearch (SearchText);
}
}
}
Expand Down Expand Up @@ -267,14 +193,12 @@ IEnumerable<DivisionInfo> GetDivisions_Internal ()

protected bool SearchParamsOK (
string searchText,
int searchDivision,
bool showMessages = true)
{
var divisionNotSpecified = Null.IsNull (searchDivision);
var searchTextIsEmpty = string.IsNullOrWhiteSpace (searchText);

// no search params - shouldn't perform search
if (searchTextIsEmpty && divisionNotSpecified) {
if (searchTextIsEmpty) {
if (showMessages) {
this.Message ("SearchParams.Warning", MessageType.Warning, true);
}
Expand All @@ -286,12 +210,12 @@ protected bool SearchParamsOK (
return true;
}

protected void DoSearch (string searchText, int searchDivision)
protected void DoSearch (string searchText)
{
var now = HttpContext.Current.Timestamp;

// TODO: If parent division not published, ensure what child divisions also not
var divisions = new DivisionFindQuery (ModelContext).FindDivisions (searchText, searchDivision)
var divisions = new DivisionFindQuery (ModelContext).FindDivisions (searchText, -1)
.Where (d => d.IsPublished (now) || IsEditable)
.Where (d => !d.IsInformal || Settings.ShowInformal || IsEditable);

Expand All @@ -309,16 +233,13 @@ protected void DoSearch (string searchText, int searchDivision)
protected void linkSearch_Click (object sender, EventArgs e)
{
var searchText = textSearch.Text.Trim ();
var searchDivision = (treeDivisions.SelectedNode != null) ?
int.Parse (treeDivisions.SelectedNode.Value) : Null.NullInteger;

if (SearchParamsOK (searchText, searchDivision)) {
if (SearchParamsOK (searchText)) {
// save current search
SearchText = searchText;
SearchDivision = searchDivision;

// perform search
DoSearch (SearchText, SearchDivision);
DoSearch (SearchText);
}
}

Expand Down
Loading

0 comments on commit 92568dd

Please sign in to comment.