Version19.107

This commit is contained in:
Antonio Cañas Vargas 2019-12-29 20:11:57 +01:00
parent ac108860a7
commit 19b832f7bb
11 changed files with 342 additions and 242 deletions

View File

@ -40,7 +40,8 @@ OBJS = swad_account.o swad_action.o swad_agenda.o swad_alert.o \
swad_file_MIME.o swad_firewall.o swad_follow.o swad_form.o \
swad_forum.o \
swad_game.o swad_global.o swad_group.o \
swad_help.o swad_hierarchy.o swad_holiday.o swad_HTML.o \
swad_help.o swad_hierarchy.o swad_hierarchy_config.o swad_holiday.o \
swad_HTML.o \
swad_icon.o swad_ID.o swad_indicator.o swad_info.o swad_institution.o \
swad_institution_config.o \
swad_language.o swad_layout.o swad_link.o swad_log.o swad_logo.o \

View File

@ -37,6 +37,7 @@
#include "swad_form.h"
#include "swad_global.h"
#include "swad_help.h"
#include "swad_hierarchy_config.h"
#include "swad_HTML.h"
#include "swad_logo.h"
@ -305,7 +306,7 @@ static void CtrCfg_PutIconToChangePhoto (void)
static void CtrCfg_Title (bool PutLink)
{
Hie_ConfigTitle (PutLink,
HieCfg_Title (PutLink,
Hie_CTR, // Logo scope
Gbl.Hierarchy.Ctr.CtrCod, // Logo code
Gbl.Hierarchy.Ctr.ShrtName, // Logo short name
@ -660,7 +661,7 @@ static void CtrCfg_FullName (bool PutForm)
{
extern const char *Txt_Centre;
Hie_ConfigFullName (PutForm,Txt_Centre,ActRenCtrFulCfg,
HieCfg_FullName (PutForm,Txt_Centre,ActRenCtrFulCfg,
Gbl.Hierarchy.Ctr.FullName);
}
@ -670,7 +671,7 @@ static void CtrCfg_FullName (bool PutForm)
static void CtrCfg_ShrtName (bool PutForm)
{
Hie_ConfigShrtName (PutForm,ActRenCtrShoCfg,Gbl.Hierarchy.Ctr.ShrtName);
HieCfg_ShrtName (PutForm,ActRenCtrShoCfg,Gbl.Hierarchy.Ctr.ShrtName);
}
/*****************************************************************************/
@ -736,7 +737,7 @@ static void CtrCfg_Place (bool PutForm)
static void CtrCfg_WWW (bool PrintView,bool PutForm)
{
Hie_ConfigWWW (PrintView,PutForm,ActChgCtrWWWCfg,Gbl.Hierarchy.Ctr.WWW);
HieCfg_WWW (PrintView,PutForm,ActChgCtrWWWCfg,Gbl.Hierarchy.Ctr.WWW);
}
/*****************************************************************************/
@ -745,7 +746,7 @@ static void CtrCfg_WWW (bool PrintView,bool PutForm)
static void CtrCfg_Shortcut (bool PrintView)
{
Hie_ConfigShortcut (PrintView,"ctr",Gbl.Hierarchy.Ctr.CtrCod);
HieCfg_Shortcut (PrintView,"ctr",Gbl.Hierarchy.Ctr.CtrCod);
}
/*****************************************************************************/
@ -754,7 +755,7 @@ static void CtrCfg_Shortcut (bool PrintView)
static void CtrCfg_QR (void)
{
Hie_ConfigQR ("ctr",Gbl.Hierarchy.Ctr.CtrCod);
HieCfg_QR ("ctr",Gbl.Hierarchy.Ctr.CtrCod);
}
/*****************************************************************************/

View File

@ -492,7 +492,7 @@ enscript -2 --landscape --color --file-align=2 --highlight --line-numbers -o - *
En OpenSWAD:
ps2pdf source.ps destination.pdf
*/
#define Log_PLATFORM_VERSION "SWAD 19.106 (2019-12-29)"
#define Log_PLATFORM_VERSION "SWAD 19.107 (2019-12-29)"
#define CSS_FILE "swad19.101.5.css"
#define JS_FILE "swad19.91.1.js"
/*
@ -500,8 +500,9 @@ ps2pdf source.ps destination.pdf
// TODO: Impedir la creación y edición de proyectos si no son editables.
// TODO: No se puede entrar con DNI '1' suponiendo que no tenga password ¿por qué?
Version 19.10x: Dec 29, 2019 Map in country information. (? lines)
Version 19.10x: Dec 29, 2019 Map in institution information. (? lines)
Version 19.10x: Dec 30, 2019 Map in country information. (? lines)
Version 19.10x: Dec 30, 2019 Map in institution information. (? lines)
Version 19.107: Dec 29, 2019 New module swad_hierarchy_config for common hierarchy configuration functions. (249760 lines)
Version 19.106: Dec 29, 2019 New module swad_country_config for country configuration. (249683 lines)
Version 19.105: Dec 29, 2019 New module swad_institution_config for institution configuration. (249614 lines)
Version 19.104.2: Dec 29, 2019 Code refactoring in degree configuration. (249541 lines)

View File

@ -33,6 +33,7 @@
#include "swad_form.h"
#include "swad_global.h"
#include "swad_help.h"
#include "swad_hierarchy_config.h"
#include "swad_HTML.h"
/*****************************************************************************/
@ -289,7 +290,7 @@ static void CtyCfg_Name (bool PutLink)
static void CtyCfg_Shortcut (bool PrintView)
{
Hie_ConfigShortcut (PrintView,"cty",Gbl.Hierarchy.Cty.CtyCod);
HieCfg_Shortcut (PrintView,"cty",Gbl.Hierarchy.Cty.CtyCod);
}
/*****************************************************************************/
@ -298,7 +299,7 @@ static void CtyCfg_Shortcut (bool PrintView)
static void CtyCfg_QR (void)
{
Hie_ConfigQR ("cty",Gbl.Hierarchy.Cty.CtyCod);
HieCfg_QR ("cty",Gbl.Hierarchy.Cty.CtyCod);
}
/*****************************************************************************/

View File

@ -32,6 +32,7 @@
#include "swad_database.h"
#include "swad_form.h"
#include "swad_global.h"
#include "swad_hierarchy_config.h"
#include "swad_HTML.h"
#include "swad_logo.h"
#include "swad_role.h"
@ -194,7 +195,7 @@ void CrsCfg_PrintConfiguration (void)
static void CrsCfg_Title (bool PutLink)
{
Hie_ConfigTitle (PutLink,
HieCfg_Title (PutLink,
Hie_DEG, // Logo scope
Gbl.Hierarchy.Deg.DegCod, // Logo code
Gbl.Hierarchy.Deg.ShrtName, // Logo short name
@ -279,7 +280,7 @@ static void CrsCfg_FullName (bool PutForm)
{
extern const char *Txt_Course;
Hie_ConfigFullName (PutForm,Txt_Course,ActRenCrsFulCfg,
HieCfg_FullName (PutForm,Txt_Course,ActRenCrsFulCfg,
Gbl.Hierarchy.Crs.FullName);
}
@ -289,7 +290,7 @@ static void CrsCfg_FullName (bool PutForm)
static void CrsCfg_ShrtName (bool PutForm)
{
Hie_ConfigShrtName (PutForm,ActRenCrsShoCfg,Gbl.Hierarchy.Crs.ShrtName);
HieCfg_ShrtName (PutForm,ActRenCrsShoCfg,Gbl.Hierarchy.Crs.ShrtName);
}
/*****************************************************************************/
@ -397,7 +398,7 @@ static void CrsCfg_InternalCode (void)
static void CrsCfg_Shortcut (bool PrintView)
{
Hie_ConfigShortcut (PrintView,"crs",Gbl.Hierarchy.Crs.CrsCod);
HieCfg_Shortcut (PrintView,"crs",Gbl.Hierarchy.Crs.CrsCod);
}
/*****************************************************************************/
@ -406,7 +407,7 @@ static void CrsCfg_Shortcut (bool PrintView)
static void CrsCfg_QR (void)
{
Hie_ConfigQR ("crs",Gbl.Hierarchy.Crs.CrsCod);
HieCfg_QR ("crs",Gbl.Hierarchy.Crs.CrsCod);
}
/*****************************************************************************/

View File

@ -32,6 +32,7 @@
#include "swad_form.h"
#include "swad_global.h"
#include "swad_help.h"
#include "swad_hierarchy_config.h"
#include "swad_HTML.h"
#include "swad_logo.h"
@ -191,7 +192,7 @@ static void DegCfg_PutIconsToPrintAndUpload (void)
static void DegCfg_Title (bool PutLink)
{
Hie_ConfigTitle (PutLink,
HieCfg_Title (PutLink,
Hie_DEG, // Logo scope
Gbl.Hierarchy.Deg.DegCod, // Logo code
Gbl.Hierarchy.Deg.ShrtName, // Logo short name
@ -276,7 +277,7 @@ static void DegCfg_FullName (bool PutForm)
{
extern const char *Txt_Degree;
Hie_ConfigFullName (PutForm,Txt_Degree,ActRenDegFulCfg,
HieCfg_FullName (PutForm,Txt_Degree,ActRenDegFulCfg,
Gbl.Hierarchy.Deg.FullName);
}
@ -286,7 +287,7 @@ static void DegCfg_FullName (bool PutForm)
static void DegCfg_ShrtName (bool PutForm)
{
Hie_ConfigShrtName (PutForm,ActRenDegShoCfg,Gbl.Hierarchy.Deg.ShrtName);
HieCfg_ShrtName (PutForm,ActRenDegShoCfg,Gbl.Hierarchy.Deg.ShrtName);
}
/*****************************************************************************/
@ -295,7 +296,7 @@ static void DegCfg_ShrtName (bool PutForm)
static void DegCfg_WWW (bool PrintView,bool PutForm)
{
Hie_ConfigWWW (PrintView,PutForm,ActChgDegWWWCfg,Gbl.Hierarchy.Deg.WWW);
HieCfg_WWW (PrintView,PutForm,ActChgDegWWWCfg,Gbl.Hierarchy.Deg.WWW);
}
/*****************************************************************************/
@ -304,7 +305,7 @@ static void DegCfg_WWW (bool PrintView,bool PutForm)
static void DegCfg_Shortcut (bool PrintView)
{
Hie_ConfigShortcut (PrintView,"deg",Gbl.Hierarchy.Deg.DegCod);
HieCfg_Shortcut (PrintView,"deg",Gbl.Hierarchy.Deg.DegCod);
}
/*****************************************************************************/
@ -313,7 +314,7 @@ static void DegCfg_Shortcut (bool PrintView)
static void DegCfg_QR (void)
{
Hie_ConfigQR ("deg",Gbl.Hierarchy.Deg.DegCod);
HieCfg_QR ("deg",Gbl.Hierarchy.Deg.DegCod);
}
/*****************************************************************************/

View File

@ -26,18 +26,12 @@
/*****************************************************************************/
#define _GNU_SOURCE // For asprintf
#include <stdio.h> // For fprintf, asprintf, etc.
#include <stdlib.h> // For free
#include <string.h> // For string functions
#include <stdio.h> // For asprintf
#include "swad_config.h"
#include "swad_degree.h"
#include "swad_form.h"
#include "swad_global.h"
#include "swad_HTML.h"
#include "swad_logo.h"
#include "swad_QR.h"
#include "swad_theme.h"
/*****************************************************************************/
/************** External global variables from others modules ****************/
@ -61,196 +55,6 @@ extern struct Globals Gbl;
/**************************** Private prototypes *****************************/
/*****************************************************************************/
/*****************************************************************************/
/************************ Show title in configuration ************************/
/*****************************************************************************/
void Hie_ConfigTitle (bool PutLink,
Hie_Level_t LogoScope,
long LogoCod,
char LogoShrtName[Hie_MAX_BYTES_SHRT_NAME + 1],
char LogoFullName[Hie_MAX_BYTES_FULL_NAME + 1],
char LogoWWW[Cns_MAX_BYTES_WWW + 1],
char TextFullName[Hie_MAX_BYTES_FULL_NAME + 1])
{
HTM_DIV_Begin ("class=\"FRAME_TITLE FRAME_TITLE_BIG\"");
if (PutLink)
HTM_A_Begin ("href=\"%s\" target=\"_blank\""
" class=\"FRAME_TITLE_BIG\" title=\"%s\"",
LogoWWW,LogoFullName);
Lgo_DrawLogo (LogoScope,LogoCod,LogoShrtName,64,NULL,true);
HTM_BR ();
HTM_Txt (TextFullName);
if (PutLink)
HTM_A_End ();
HTM_DIV_End ();
}
/*****************************************************************************/
/********************** Show full name in configuration **********************/
/*****************************************************************************/
void Hie_ConfigFullName (bool PutForm,const char *Label,Act_Action_t NextAction,
const char FullName[Hie_MAX_BYTES_FULL_NAME + 1])
{
/***** Full name *****/
HTM_TR_Begin (NULL);
/* Label */
Frm_LabelColumn ("RT",PutForm ? "FullName" :
NULL,
Label);
/* Data */
HTM_TD_Begin ("class=\"DAT_N LB\"");
if (PutForm)
{
/* Form to change full name */
Frm_StartForm (NextAction);
HTM_INPUT_TEXT ("FullName",Hie_MAX_CHARS_FULL_NAME,FullName,true,
"id=\"FullName\" class=\"INPUT_FULL_NAME\""
" required=\"required\"");
Frm_EndForm ();
}
else // I can not edit full name
HTM_Txt (FullName);
HTM_TD_End ();
HTM_TR_End ();
}
/*****************************************************************************/
/********* Show institution short name in institution configuration **********/
/*****************************************************************************/
void Hie_ConfigShrtName (bool PutForm,Act_Action_t NextAction,
const char ShrtName[Hie_MAX_BYTES_SHRT_NAME + 1])
{
extern const char *Txt_Short_name;
/***** Short name *****/
HTM_TR_Begin (NULL);
/* Label */
Frm_LabelColumn ("RT",PutForm ? "ShortName" :
NULL,
Txt_Short_name);
/* Data */
HTM_TD_Begin ("class=\"DAT_N LB\"");
if (PutForm)
{
/* Form to change short name */
Frm_StartForm (NextAction);
HTM_INPUT_TEXT ("ShortName",Hie_MAX_CHARS_SHRT_NAME,ShrtName,true,
"id=\"ShortName\" class=\"INPUT_SHORT_NAME\""
" required=\"required\"");
Frm_EndForm ();
}
else // I can not edit short name
HTM_Txt (ShrtName);
HTM_TD_End ();
HTM_TR_End ();
}
/*****************************************************************************/
/************************* Show web in configuration *************************/
/*****************************************************************************/
void Hie_ConfigWWW (bool PrintView,bool PutForm,Act_Action_t NextAction,
const char WWW[Cns_MAX_BYTES_WWW + 1])
{
extern const char *Txt_Web;
/***** Web *****/
HTM_TR_Begin (NULL);
/* Label */
Frm_LabelColumn ("RT",PutForm ? "WWW" :
NULL,
Txt_Web);
/* Data */
HTM_TD_Begin ("class=\"DAT LB\"");
if (PutForm)
{
/* Form to change web */
Frm_StartForm (NextAction);
HTM_INPUT_URL ("WWW",WWW,true,
"id=\"WWW\" class=\"INPUT_WWW_WIDE\" required=\"required\"");
Frm_EndForm ();
}
else // I can not change web
{
HTM_DIV_Begin ("class=\"EXTERNAL_WWW_LONG\"");
if (!PrintView)
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"DAT\"",WWW);
HTM_Txt (WWW);
if (!PrintView)
HTM_A_End ();
HTM_DIV_End ();
}
HTM_TD_End ();
HTM_TR_End ();
}
/*****************************************************************************/
/********************** Show shortcut in configuration ***********************/
/*****************************************************************************/
void Hie_ConfigShortcut (bool PrintView,const char *ParamName,long HieCod)
{
extern const char *Lan_STR_LANG_ID[1 + Lan_NUM_LANGUAGES];
extern const char *Txt_Shortcut;
/***** Short cut *****/
HTM_TR_Begin (NULL);
/* Label */
Frm_LabelColumn ("RT",NULL,Txt_Shortcut);
/* Data */
HTM_TD_Begin ("class=\"DAT LB\"");
if (!PrintView)
HTM_A_Begin ("href=\"%s/%s?%s=%ld\" class=\"DAT\" target=\"_blank\"",
Cfg_URL_SWAD_CGI,
Lan_STR_LANG_ID[Gbl.Prefs.Language],
ParamName,HieCod);
HTM_TxtF ("%s/%s?%s=%ld",
Cfg_URL_SWAD_CGI,
Lan_STR_LANG_ID[Gbl.Prefs.Language],
ParamName,HieCod);
if (!PrintView)
HTM_A_End ();
HTM_TD_End ();
HTM_TR_End ();
}
/*****************************************************************************/
/************************* Show QR in configuration **************************/
/*****************************************************************************/
void Hie_ConfigQR (const char *ParamName,long HieCod)
{
extern const char *Txt_QR_code;
/***** QR *****/
HTM_TR_Begin (NULL);
/* Label */
Frm_LabelColumn ("RT",NULL,Txt_QR_code);
/* Data */
HTM_TD_Begin ("class=\"DAT LB\"");
QR_LinkTo (250,ParamName,HieCod);
HTM_TD_End ();
HTM_TR_End ();
}
/*****************************************************************************/
/********** List pending institutions, centres, degrees and courses **********/
/*****************************************************************************/

View File

@ -60,22 +60,6 @@ typedef enum
/***************************** Public prototypes *****************************/
/*****************************************************************************/
void Hie_ConfigTitle (bool PutLink,
Hie_Level_t LogoScope,
long LogoCod,
char LogoShrtName[Hie_MAX_BYTES_SHRT_NAME + 1],
char LogoFullName[Hie_MAX_BYTES_FULL_NAME + 1],
char LogoWWW[Cns_MAX_BYTES_WWW + 1],
char TextFullName[Hie_MAX_BYTES_FULL_NAME + 1]);
void Hie_ConfigFullName (bool PutForm,const char *Label,Act_Action_t NextAction,
const char FullName[Hie_MAX_BYTES_FULL_NAME + 1]);
void Hie_ConfigShrtName (bool PutForm,Act_Action_t NextAction,
const char ShrtName[Hie_MAX_BYTES_SHRT_NAME + 1]);
void Hie_ConfigWWW (bool PrintView,bool PutForm,Act_Action_t NextAction,
const char WWW[Cns_MAX_BYTES_WWW + 1]);
void Hie_ConfigShortcut (bool PrintView,const char *ParamName,long HieCod);
void Hie_ConfigQR (const char *ParamName,long HieCod);
void Hie_SeePending (void);
void Hie_WriteMenuHierarchy (void);

247
swad_hierarchy_config.c Normal file
View File

@ -0,0 +1,247 @@
// swad_hierarchy_config.c: hierarchy (country, institution, centre, degree, course) configuration
/*
SWAD (Shared Workspace At a Distance),
is a web platform developed at the University of Granada (Spain),
and used to support university teaching.
This file is part of SWAD core.
Copyright (C) 1999-2019 Antonio Cañas Vargas
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/>.
*/
/*****************************************************************************/
/********************************* Headers ***********************************/
/*****************************************************************************/
#define _GNU_SOURCE // For asprintf
#include <stdio.h> // For asprintf
#include "swad_form.h"
#include "swad_global.h"
#include "swad_HTML.h"
#include "swad_logo.h"
#include "swad_QR.h"
/*****************************************************************************/
/************** External global variables from others modules ****************/
/*****************************************************************************/
extern struct Globals Gbl;
/*****************************************************************************/
/*************************** Public constants ********************************/
/*****************************************************************************/
/*****************************************************************************/
/***************************** Private types *********************************/
/*****************************************************************************/
/*****************************************************************************/
/**************************** Private constants ******************************/
/*****************************************************************************/
/*****************************************************************************/
/**************************** Private prototypes *****************************/
/*****************************************************************************/
/*****************************************************************************/
/************************ Show title in configuration ************************/
/*****************************************************************************/
void HieCfg_Title (bool PutLink,
Hie_Level_t LogoScope,
long LogoCod,
char LogoShrtName[Hie_MAX_BYTES_SHRT_NAME + 1],
char LogoFullName[Hie_MAX_BYTES_FULL_NAME + 1],
char LogoWWW[Cns_MAX_BYTES_WWW + 1],
char TextFullName[Hie_MAX_BYTES_FULL_NAME + 1])
{
HTM_DIV_Begin ("class=\"FRAME_TITLE FRAME_TITLE_BIG\"");
if (PutLink)
HTM_A_Begin ("href=\"%s\" target=\"_blank\""
" class=\"FRAME_TITLE_BIG\" title=\"%s\"",
LogoWWW,LogoFullName);
Lgo_DrawLogo (LogoScope,LogoCod,LogoShrtName,64,NULL,true);
HTM_BR ();
HTM_Txt (TextFullName);
if (PutLink)
HTM_A_End ();
HTM_DIV_End ();
}
/*****************************************************************************/
/********************** Show full name in configuration **********************/
/*****************************************************************************/
void HieCfg_FullName (bool PutForm,const char *Label,Act_Action_t NextAction,
const char FullName[Hie_MAX_BYTES_FULL_NAME + 1])
{
/***** Full name *****/
HTM_TR_Begin (NULL);
/* Label */
Frm_LabelColumn ("RT",PutForm ? "FullName" :
NULL,
Label);
/* Data */
HTM_TD_Begin ("class=\"DAT_N LB\"");
if (PutForm)
{
/* Form to change full name */
Frm_StartForm (NextAction);
HTM_INPUT_TEXT ("FullName",Hie_MAX_CHARS_FULL_NAME,FullName,true,
"id=\"FullName\" class=\"INPUT_FULL_NAME\""
" required=\"required\"");
Frm_EndForm ();
}
else // I can not edit full name
HTM_Txt (FullName);
HTM_TD_End ();
HTM_TR_End ();
}
/*****************************************************************************/
/********* Show institution short name in institution configuration **********/
/*****************************************************************************/
void HieCfg_ShrtName (bool PutForm,Act_Action_t NextAction,
const char ShrtName[Hie_MAX_BYTES_SHRT_NAME + 1])
{
extern const char *Txt_Short_name;
/***** Short name *****/
HTM_TR_Begin (NULL);
/* Label */
Frm_LabelColumn ("RT",PutForm ? "ShortName" :
NULL,
Txt_Short_name);
/* Data */
HTM_TD_Begin ("class=\"DAT_N LB\"");
if (PutForm)
{
/* Form to change short name */
Frm_StartForm (NextAction);
HTM_INPUT_TEXT ("ShortName",Hie_MAX_CHARS_SHRT_NAME,ShrtName,true,
"id=\"ShortName\" class=\"INPUT_SHORT_NAME\""
" required=\"required\"");
Frm_EndForm ();
}
else // I can not edit short name
HTM_Txt (ShrtName);
HTM_TD_End ();
HTM_TR_End ();
}
/*****************************************************************************/
/************************* Show web in configuration *************************/
/*****************************************************************************/
void HieCfg_WWW (bool PrintView,bool PutForm,Act_Action_t NextAction,
const char WWW[Cns_MAX_BYTES_WWW + 1])
{
extern const char *Txt_Web;
/***** Web *****/
HTM_TR_Begin (NULL);
/* Label */
Frm_LabelColumn ("RT",PutForm ? "WWW" :
NULL,
Txt_Web);
/* Data */
HTM_TD_Begin ("class=\"DAT LB\"");
if (PutForm)
{
/* Form to change web */
Frm_StartForm (NextAction);
HTM_INPUT_URL ("WWW",WWW,true,
"id=\"WWW\" class=\"INPUT_WWW_WIDE\" required=\"required\"");
Frm_EndForm ();
}
else // I can not change web
{
HTM_DIV_Begin ("class=\"EXTERNAL_WWW_LONG\"");
if (!PrintView)
HTM_A_Begin ("href=\"%s\" target=\"_blank\" class=\"DAT\"",WWW);
HTM_Txt (WWW);
if (!PrintView)
HTM_A_End ();
HTM_DIV_End ();
}
HTM_TD_End ();
HTM_TR_End ();
}
/*****************************************************************************/
/********************** Show shortcut in configuration ***********************/
/*****************************************************************************/
void HieCfg_Shortcut (bool PrintView,const char *ParamName,long HieCod)
{
extern const char *Lan_STR_LANG_ID[1 + Lan_NUM_LANGUAGES];
extern const char *Txt_Shortcut;
/***** Short cut *****/
HTM_TR_Begin (NULL);
/* Label */
Frm_LabelColumn ("RT",NULL,Txt_Shortcut);
/* Data */
HTM_TD_Begin ("class=\"DAT LB\"");
if (!PrintView)
HTM_A_Begin ("href=\"%s/%s?%s=%ld\" class=\"DAT\" target=\"_blank\"",
Cfg_URL_SWAD_CGI,
Lan_STR_LANG_ID[Gbl.Prefs.Language],
ParamName,HieCod);
HTM_TxtF ("%s/%s?%s=%ld",
Cfg_URL_SWAD_CGI,
Lan_STR_LANG_ID[Gbl.Prefs.Language],
ParamName,HieCod);
if (!PrintView)
HTM_A_End ();
HTM_TD_End ();
HTM_TR_End ();
}
/*****************************************************************************/
/************************* Show QR in configuration **************************/
/*****************************************************************************/
void HieCfg_QR (const char *ParamName,long HieCod)
{
extern const char *Txt_QR_code;
/***** QR *****/
HTM_TR_Begin (NULL);
/* Label */
Frm_LabelColumn ("RT",NULL,Txt_QR_code);
/* Data */
HTM_TD_Begin ("class=\"DAT LB\"");
QR_LinkTo (250,ParamName,HieCod);
HTM_TD_End ();
HTM_TR_End ();
}

58
swad_hierarchy_config.h Normal file
View File

@ -0,0 +1,58 @@
// swad_hierarchy_config.h: hierarchy (country, institution, centre, degree, course) configuration
#ifndef _SWAD_HIE_CFG
#define _SWAD_HIE_CFG
/*
SWAD (Shared Workspace At a Distance in Spanish),
is a web platform developed at the University of Granada (Spain),
and used to support university teaching.
This file is part of SWAD core.
Copyright (C) 1999-2019 Antonio Cañas Vargas
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/>.
*/
/*****************************************************************************/
/********************************* Headers ***********************************/
/*****************************************************************************/
/*****************************************************************************/
/***************************** Public constants ******************************/
/*****************************************************************************/
/*****************************************************************************/
/******************************* Public types ********************************/
/*****************************************************************************/
/*****************************************************************************/
/***************************** Public prototypes *****************************/
/*****************************************************************************/
void HieCfg_Title (bool PutLink,
Hie_Level_t LogoScope,
long LogoCod,
char LogoShrtName[Hie_MAX_BYTES_SHRT_NAME + 1],
char LogoFullName[Hie_MAX_BYTES_FULL_NAME + 1],
char LogoWWW[Cns_MAX_BYTES_WWW + 1],
char TextFullName[Hie_MAX_BYTES_FULL_NAME + 1]);
void HieCfg_FullName (bool PutForm,const char *Label,Act_Action_t NextAction,
const char FullName[Hie_MAX_BYTES_FULL_NAME + 1]);
void HieCfg_ShrtName (bool PutForm,Act_Action_t NextAction,
const char ShrtName[Hie_MAX_BYTES_SHRT_NAME + 1]);
void HieCfg_WWW (bool PrintView,bool PutForm,Act_Action_t NextAction,
const char WWW[Cns_MAX_BYTES_WWW + 1]);
void HieCfg_Shortcut (bool PrintView,const char *ParamName,long HieCod);
void HieCfg_QR (const char *ParamName,long HieCod);
#endif

View File

@ -32,6 +32,7 @@
#include "swad_form.h"
#include "swad_global.h"
#include "swad_help.h"
#include "swad_hierarchy_config.h"
#include "swad_HTML.h"
#include "swad_institution.h"
#include "swad_logo.h"
@ -222,7 +223,7 @@ static void InsCfg_PutIconsToPrintAndUpload (void)
static void InsCfg_Title (bool PutLink)
{
Hie_ConfigTitle (PutLink,
HieCfg_Title (PutLink,
Hie_INS, // Logo scope
Gbl.Hierarchy.Ins.InsCod, // Logo code
Gbl.Hierarchy.Ins.ShrtName, // Logo short name
@ -387,7 +388,7 @@ static void InsCfg_FullName (bool PutForm)
{
extern const char *Txt_Institution;
Hie_ConfigFullName (PutForm,Txt_Institution,ActRenInsFulCfg,
HieCfg_FullName (PutForm,Txt_Institution,ActRenInsFulCfg,
Gbl.Hierarchy.Ins.FullName);
}
@ -397,7 +398,7 @@ static void InsCfg_FullName (bool PutForm)
static void InsCfg_ShrtName (bool PutForm)
{
Hie_ConfigShrtName (PutForm,ActRenInsShoCfg,Gbl.Hierarchy.Ins.ShrtName);
HieCfg_ShrtName (PutForm,ActRenInsShoCfg,Gbl.Hierarchy.Ins.ShrtName);
}
/*****************************************************************************/
@ -406,7 +407,7 @@ static void InsCfg_ShrtName (bool PutForm)
static void InsCfg_WWW (bool PrintView,bool PutForm)
{
Hie_ConfigWWW (PrintView,PutForm,ActChgInsWWWCfg,Gbl.Hierarchy.Ins.WWW);
HieCfg_WWW (PrintView,PutForm,ActChgInsWWWCfg,Gbl.Hierarchy.Ins.WWW);
}
/*****************************************************************************/
@ -415,7 +416,7 @@ static void InsCfg_WWW (bool PrintView,bool PutForm)
static void InsCfg_Shortcut (bool PrintView)
{
Hie_ConfigShortcut (PrintView,"ins",Gbl.Hierarchy.Ins.InsCod);
HieCfg_Shortcut (PrintView,"ins",Gbl.Hierarchy.Ins.InsCod);
}
/*****************************************************************************/
@ -424,7 +425,7 @@ static void InsCfg_Shortcut (bool PrintView)
static void InsCfg_QR (void)
{
Hie_ConfigQR ("ins",Gbl.Hierarchy.Ins.InsCod);
HieCfg_QR ("ins",Gbl.Hierarchy.Ins.InsCod);
}
/*****************************************************************************/