mirror of https://github.com/acanas/swad-core.git
Version 15.231.2
This commit is contained in:
parent
6ee848a3ab
commit
73df78c0cf
|
@ -125,20 +125,19 @@
|
||||||
// TODO: Modify WS function getUsers changing: userRole to indicate all users, and a new parameter filter (search string (name, @nickname, mail)) to restring number of users
|
// TODO: Modify WS function getUsers changing: userRole to indicate all users, and a new parameter filter (search string (name, @nickname, mail)) to restring number of users
|
||||||
// TODO: Add a new WS function to count the nunmber of users to return in call to function getUsers
|
// TODO: Add a new WS function to count the nunmber of users to return in call to function getUsers
|
||||||
|
|
||||||
// TODO: Search should be restricted by default to the smaller (down in hierarchy) scope
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/****************************** Public constants *****************************/
|
/****************************** Public constants *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
#define Log_PLATFORM_VERSION "SWAD 15.231.1 (2016-06-24)"
|
#define Log_PLATFORM_VERSION "SWAD 15.231.2 (2016-06-24)"
|
||||||
#define CSS_FILE "swad15.229.css"
|
#define CSS_FILE "swad15.229.css"
|
||||||
#define JS_FILE "swad15.226.js"
|
#define JS_FILE "swad15.226.js"
|
||||||
|
|
||||||
// Number of lines (includes comments but not blank lines) has been got with the following command:
|
// Number of lines (includes comments but not blank lines) has been got with the following command:
|
||||||
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h sql/swad*.sql | tail -1
|
// nl swad*.c swad*.h css/swad*.css py/swad*.py js/swad*.js soap/swad*.h sql/swad*.sql | tail -1
|
||||||
/*
|
/*
|
||||||
Version 15.231.1: Jun 24, 2015 All users can search guests. (? lines)
|
Version 15.231.2: Jun 24, 2015 Search is restricted by default to the smaller (down in hierarchy) scope. (203475 lines)
|
||||||
|
Version 15.231.1: Jun 24, 2015 All users can search guests. (203429 lines)
|
||||||
Version 15.231: Jun 24, 2015 Speed up in search of users by using temporary tables. (203427 lines)
|
Version 15.231: Jun 24, 2015 Speed up in search of users by using temporary tables. (203427 lines)
|
||||||
Version 15.230.4: Jun 23, 2015 Optimization in search of users. (203369 lines)
|
Version 15.230.4: Jun 23, 2015 Optimization in search of users. (203369 lines)
|
||||||
Version 15.230.3: Jun 23, 2015 Optimization in search of users. (203378 lines)
|
Version 15.230.3: Jun 23, 2015 Optimization in search of users. (203378 lines)
|
||||||
|
|
|
@ -815,18 +815,7 @@ static void Lay_WritePageTopHeading (void)
|
||||||
/* End form to go to home page */
|
/* End form to go to home page */
|
||||||
Act_FormEnd ();
|
Act_FormEnd ();
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<div id=\"head_row_1_search\">");
|
Sch_PutFormToSearchInPageTopHeading ();
|
||||||
Act_FormStart ( Gbl.CurrentCrs.Crs.CrsCod > 0 ? ActCrsSch :
|
|
||||||
(Gbl.CurrentDeg.Deg.DegCod > 0 ? ActDegSch :
|
|
||||||
(Gbl.CurrentCtr.Ctr.CtrCod > 0 ? ActCtrSch :
|
|
||||||
(Gbl.CurrentIns.Ins.InsCod > 0 ? ActInsSch :
|
|
||||||
(Gbl.CurrentCty.Cty.CtyCod > 0 ? ActCtySch :
|
|
||||||
ActSysSch)))));
|
|
||||||
Sco_PutParamScope (Sco_SCOPE_SYS);
|
|
||||||
Sch_PutInputStringToSearch ("head_search_text");
|
|
||||||
Sch_PutMagnifyingGlassButton ("search-white64x64.png");
|
|
||||||
Act_FormEnd ();
|
|
||||||
fprintf (Gbl.F.Out,"</div>"); // head_row_1_search
|
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"</div>"); // head_row_1_left
|
fprintf (Gbl.F.Out,"</div>"); // head_row_1_left
|
||||||
|
|
||||||
|
|
40
swad_scope.c
40
swad_scope.c
|
@ -191,32 +191,36 @@ void Sco_PutParamScope (Sco_Scope_t Scope)
|
||||||
|
|
||||||
void Sco_GetScope (void)
|
void Sco_GetScope (void)
|
||||||
{
|
{
|
||||||
|
static bool AlreadyGotScope = false;
|
||||||
char UnsignedStr[10+1];
|
char UnsignedStr[10+1];
|
||||||
|
|
||||||
/***** Get parameter location range if exists *****/
|
if (!AlreadyGotScope)
|
||||||
Par_GetParToText ("Scope",UnsignedStr,10);
|
{
|
||||||
if ((Gbl.Scope.Current = Sco_GetScopeFromUnsignedStr (UnsignedStr)) == Sco_SCOPE_UNK)
|
/***** Get parameter location range if exists *****/
|
||||||
Gbl.Scope.Current = Gbl.Scope.Default;
|
Par_GetParToText ("Scope",UnsignedStr,10);
|
||||||
|
if ((Gbl.Scope.Current = Sco_GetScopeFromUnsignedStr (UnsignedStr)) == Sco_SCOPE_UNK)
|
||||||
|
Gbl.Scope.Current = Gbl.Scope.Default;
|
||||||
|
|
||||||
/***** Avoid impossible scopes *****/
|
/***** Avoid impossible scopes *****/
|
||||||
if (Gbl.Scope.Current == Sco_SCOPE_CRS && Gbl.CurrentCrs.Crs.CrsCod <= 0)
|
if (Gbl.Scope.Current == Sco_SCOPE_CRS && Gbl.CurrentCrs.Crs.CrsCod <= 0)
|
||||||
Gbl.Scope.Current = Sco_SCOPE_DEG;
|
Gbl.Scope.Current = Sco_SCOPE_DEG;
|
||||||
|
|
||||||
if (Gbl.Scope.Current == Sco_SCOPE_DEG && Gbl.CurrentDeg.Deg.DegCod <= 0)
|
if (Gbl.Scope.Current == Sco_SCOPE_DEG && Gbl.CurrentDeg.Deg.DegCod <= 0)
|
||||||
Gbl.Scope.Current = Sco_SCOPE_CTR;
|
Gbl.Scope.Current = Sco_SCOPE_CTR;
|
||||||
|
|
||||||
if (Gbl.Scope.Current == Sco_SCOPE_CTR && Gbl.CurrentCtr.Ctr.CtrCod <= 0)
|
if (Gbl.Scope.Current == Sco_SCOPE_CTR && Gbl.CurrentCtr.Ctr.CtrCod <= 0)
|
||||||
Gbl.Scope.Current = Sco_SCOPE_INS;
|
Gbl.Scope.Current = Sco_SCOPE_INS;
|
||||||
|
|
||||||
if (Gbl.Scope.Current == Sco_SCOPE_INS && Gbl.CurrentIns.Ins.InsCod <= 0)
|
if (Gbl.Scope.Current == Sco_SCOPE_INS && Gbl.CurrentIns.Ins.InsCod <= 0)
|
||||||
Gbl.Scope.Current = Sco_SCOPE_CTY;
|
Gbl.Scope.Current = Sco_SCOPE_CTY;
|
||||||
|
|
||||||
if (Gbl.Scope.Current == Sco_SCOPE_CTY && Gbl.CurrentCty.Cty.CtyCod <= 0)
|
if (Gbl.Scope.Current == Sco_SCOPE_CTY && Gbl.CurrentCty.Cty.CtyCod <= 0)
|
||||||
Gbl.Scope.Current = Sco_SCOPE_SYS;
|
Gbl.Scope.Current = Sco_SCOPE_SYS;
|
||||||
|
|
||||||
/***** Avoid forbidden scopes *****/
|
/***** Avoid forbidden scopes *****/
|
||||||
if ((Gbl.Scope.Allowed & (1 << Gbl.Scope.Current)) == 0)
|
if ((Gbl.Scope.Allowed & (1 << Gbl.Scope.Current)) == 0)
|
||||||
Gbl.Scope.Current = Sco_SCOPE_UNK;
|
Gbl.Scope.Current = Sco_SCOPE_UNK;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -235,7 +235,8 @@ static void Sch_PutFormToSearchWithWhatToSearchAndScope (Act_Action_t Action,Sco
|
||||||
Act_FormStart (Action);
|
Act_FormStart (Action);
|
||||||
Lay_StartRoundFrame (NULL,Txt_Search,NULL);
|
Lay_StartRoundFrame (NULL,Txt_Search,NULL);
|
||||||
|
|
||||||
/***** Scope (whole platform, current centre, current degree or current course) *****/
|
/***** Scope (whole platform, current country, current institution,
|
||||||
|
current centre, current degree or current course) *****/
|
||||||
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"
|
fprintf (Gbl.F.Out,"<div class=\"CENTER_MIDDLE\">"
|
||||||
"<label class=\"%s\">%s: </label>",
|
"<label class=\"%s\">%s: </label>",
|
||||||
The_ClassForm[Gbl.Prefs.Theme],Txt_Scope);
|
The_ClassForm[Gbl.Prefs.Theme],Txt_Scope);
|
||||||
|
@ -306,6 +307,60 @@ static bool Sch_CheckIfIHavePermissionToSearch (Sch_WhatToSearch_t WhatToSearch)
|
||||||
return (Permissions[WhatToSearch] & (1 << Gbl.Usrs.Me.LoggedRole));
|
return (Permissions[WhatToSearch] & (1 << Gbl.Usrs.Me.LoggedRole));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/**************** Put a form to search in page top heading *******************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
void Sch_PutFormToSearchInPageTopHeading (void)
|
||||||
|
{
|
||||||
|
Act_Action_t ActionSearch;
|
||||||
|
|
||||||
|
fprintf (Gbl.F.Out,"<div id=\"head_row_1_search\">");
|
||||||
|
Gbl.Scope.Allowed = 1 << Sco_SCOPE_SYS |
|
||||||
|
1 << Sco_SCOPE_CTY |
|
||||||
|
1 << Sco_SCOPE_INS |
|
||||||
|
1 << Sco_SCOPE_CTR |
|
||||||
|
1 << Sco_SCOPE_DEG |
|
||||||
|
1 << Sco_SCOPE_CRS;
|
||||||
|
if (Gbl.CurrentCrs.Crs.CrsCod > 0)
|
||||||
|
{
|
||||||
|
ActionSearch = ActCrsSch;
|
||||||
|
Gbl.Scope.Default = Sco_SCOPE_CRS;
|
||||||
|
}
|
||||||
|
else if (Gbl.CurrentDeg.Deg.DegCod > 0)
|
||||||
|
{
|
||||||
|
ActionSearch = ActDegSch;
|
||||||
|
Gbl.Scope.Default = Sco_SCOPE_DEG;
|
||||||
|
}
|
||||||
|
else if (Gbl.CurrentCtr.Ctr.CtrCod > 0)
|
||||||
|
{
|
||||||
|
ActionSearch = ActCtrSch;
|
||||||
|
Gbl.Scope.Default = Sco_SCOPE_CTR;
|
||||||
|
}
|
||||||
|
else if (Gbl.CurrentIns.Ins.InsCod > 0)
|
||||||
|
{
|
||||||
|
ActionSearch = ActInsSch;
|
||||||
|
Gbl.Scope.Default = Sco_SCOPE_INS;
|
||||||
|
}
|
||||||
|
else if (Gbl.CurrentCty.Cty.CtyCod > 0)
|
||||||
|
{
|
||||||
|
ActionSearch = ActCtySch;
|
||||||
|
Gbl.Scope.Default = Sco_SCOPE_CTY;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ActionSearch = ActSysSch;
|
||||||
|
Gbl.Scope.Default = Sco_SCOPE_SYS;
|
||||||
|
}
|
||||||
|
Act_FormStart (ActionSearch);
|
||||||
|
Sco_GetScope ();
|
||||||
|
Sco_PutParamScope (Gbl.Scope.Current);
|
||||||
|
Sch_PutInputStringToSearch ("head_search_text");
|
||||||
|
Sch_PutMagnifyingGlassButton ("search-white64x64.png");
|
||||||
|
Act_FormEnd ();
|
||||||
|
fprintf (Gbl.F.Out,"</div>"); // head_row_1_search
|
||||||
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/********************* Put string to search inside form **********************/
|
/********************* Put string to search inside form **********************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
|
@ -63,6 +63,9 @@ void Sch_ReqInsSearch (void);
|
||||||
void Sch_ReqCtrSearch (void);
|
void Sch_ReqCtrSearch (void);
|
||||||
void Sch_ReqDegSearch (void);
|
void Sch_ReqDegSearch (void);
|
||||||
void Sch_ReqCrsSearch (void);
|
void Sch_ReqCrsSearch (void);
|
||||||
|
|
||||||
|
void Sch_PutFormToSearchInPageTopHeading (void);
|
||||||
|
|
||||||
void Sch_PutInputStringToSearch (const char *IdInputText);
|
void Sch_PutInputStringToSearch (const char *IdInputText);
|
||||||
void Sch_PutMagnifyingGlassButton (const char *Icon);
|
void Sch_PutMagnifyingGlassButton (const char *Icon);
|
||||||
void Sch_GetParamWhatToSearch (void);
|
void Sch_GetParamWhatToSearch (void);
|
||||||
|
|
Loading…
Reference in New Issue