mirror of https://github.com/acanas/swad-core.git
Version 15.77.1
This commit is contained in:
parent
6110c5750a
commit
1b8da4590f
|
@ -1341,6 +1341,7 @@ a:hover img.CENTRE_PHOTO_SHOW
|
||||||
.PHOTO21x28 {width: 21px; height: 28px; vertical-align:middle; border-radius:2px;}
|
.PHOTO21x28 {width: 21px; height: 28px; vertical-align:middle; border-radius:2px;}
|
||||||
.PHOTO30x40 {width: 30px; height: 40px; vertical-align:middle; border-radius:2px;}
|
.PHOTO30x40 {width: 30px; height: 40px; vertical-align:middle; border-radius:2px;}
|
||||||
.PHOTO45x60 {width: 45px; height: 60px; vertical-align:middle; border-radius:3px;}
|
.PHOTO45x60 {width: 45px; height: 60px; vertical-align:middle; border-radius:3px;}
|
||||||
|
.PHOTO60x80 {width: 60px; height: 80px; vertical-align:middle; border-radius:3px;}
|
||||||
.PHOTO93x124 {width: 93px; height:124px; vertical-align:middle; border-radius:4px;}
|
.PHOTO93x124 {width: 93px; height:124px; vertical-align:middle; border-radius:4px;}
|
||||||
.PHOTO186x248 {width:186px; height:248px; vertical-align:middle; border-radius:8px;}
|
.PHOTO186x248 {width:186px; height:248px; vertical-align:middle; border-radius:8px;}
|
||||||
.IMG_USR
|
.IMG_USR
|
||||||
|
|
|
@ -11188,4 +11188,4 @@ SELECT COUNT(DISTINCT crs_usr.UsrCod) FROM institutions,centres,degrees,courses,
|
||||||
----- SWAD 15.77 (2015/12/28) -----
|
----- SWAD 15.77 (2015/12/28) -----
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS social (SocCod BIGINT NOT NULL AUTO_INCREMENT,SocialEvent TINYINT NOT NULL,UsrCod INT NOT NULL,CtyCod INT NOT NULL DEFAULT -1,InsCod INT NOT NULL DEFAULT -1,CtrCod INT NOT NULL DEFAULT -1,DegCod INT NOT NULL DEFAULT -1,CrsCod INT NOT NULL DEFAULT -1,Cod INT NOT NULL DEFAULT -1,TimeEvent DATETIME NOT NULL,Status TINYINT NOT NULL DEFAULT 0,UNIQUE INDEX(SocCod),INDEX(SocialEvent),INDEX(UsrCod),INDEX(TimeEvent));
|
CREATE TABLE IF NOT EXISTS social (SocCod BIGINT NOT NULL AUTO_INCREMENT,SocialEvent TINYINT NOT NULL,UsrCod INT NOT NULL,CtyCod INT NOT NULL DEFAULT -1,InsCod INT NOT NULL DEFAULT -1,CtrCod INT NOT NULL DEFAULT -1,DegCod INT NOT NULL DEFAULT -1,CrsCod INT NOT NULL DEFAULT -1,Cod INT NOT NULL DEFAULT -1,TimeEvent DATETIME NOT NULL,Status TINYINT NOT NULL DEFAULT 0,UNIQUE INDEX(SocCod),INDEX(SocialEvent),INDEX(UsrCod),INDEX(TimeEvent));
|
||||||
|
ALTER TABLE social DROP COLUMN Status;
|
||||||
|
|
|
@ -926,7 +926,6 @@ CREATE TABLE IF NOT EXISTS social (
|
||||||
CrsCod INT NOT NULL DEFAULT -1,
|
CrsCod INT NOT NULL DEFAULT -1,
|
||||||
Cod INT NOT NULL DEFAULT -1,
|
Cod INT NOT NULL DEFAULT -1,
|
||||||
TimeEvent DATETIME NOT NULL,
|
TimeEvent DATETIME NOT NULL,
|
||||||
Status TINYINT NOT NULL DEFAULT 0,
|
|
||||||
UNIQUE INDEX(SocCod),
|
UNIQUE INDEX(SocCod),
|
||||||
INDEX(SocialEvent),
|
INDEX(SocialEvent),
|
||||||
INDEX(UsrCod),
|
INDEX(UsrCod),
|
||||||
|
|
|
@ -114,15 +114,16 @@
|
||||||
/****************************** Public constants *****************************/
|
/****************************** Public constants *****************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
#define Log_PLATFORM_VERSION "SWAD 15.77 (2015-12-28)"
|
#define Log_PLATFORM_VERSION "SWAD 15.77.1 (2015-12-28)"
|
||||||
#define CSS_FILE "swad15.75.css"
|
#define CSS_FILE "swad15.75.css"
|
||||||
|
|
||||||
// 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.77.1: Dec 28, 2015 Insert social event when posting in a global forum. (188342 lines)
|
||||||
Version 15.77: Dec 28, 2015 New table in database for social activity. (188287 lines)
|
Version 15.77: Dec 28, 2015 New table in database for social activity. (188287 lines)
|
||||||
2 changes necessary in database:
|
2 changes necessary in database:
|
||||||
CREATE TABLE IF NOT EXISTS social (SocCod BIGINT NOT NULL AUTO_INCREMENT,SocialEvent TINYINT NOT NULL,UsrCod INT NOT NULL,CtyCod INT NOT NULL DEFAULT -1,InsCod INT NOT NULL DEFAULT -1,CtrCod INT NOT NULL DEFAULT -1,DegCod INT NOT NULL DEFAULT -1,CrsCod INT NOT NULL DEFAULT -1,Cod INT NOT NULL DEFAULT -1,TimeEvent DATETIME NOT NULL,Status TINYINT NOT NULL DEFAULT 0,UNIQUE INDEX(SocCod),INDEX(SocialEvent),INDEX(UsrCod),INDEX(TimeEvent));
|
CREATE TABLE IF NOT EXISTS social (SocCod BIGINT NOT NULL AUTO_INCREMENT,SocialEvent TINYINT NOT NULL,UsrCod INT NOT NULL,CtyCod INT NOT NULL DEFAULT -1,InsCod INT NOT NULL DEFAULT -1,CtrCod INT NOT NULL DEFAULT -1,DegCod INT NOT NULL DEFAULT -1,CrsCod INT NOT NULL DEFAULT -1,Cod INT NOT NULL DEFAULT -1,TimeEvent DATETIME NOT NULL,UNIQUE INDEX(SocCod),INDEX(SocialEvent),INDEX(UsrCod),INDEX(TimeEvent));
|
||||||
INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1490','es','N','Ver actividad social (timeline)');
|
INSERT INTO actions (ActCod,Language,Obsolete,Txt) VALUES ('1490','es','N','Ver actividad social (timeline)');
|
||||||
|
|
||||||
Version 15.76.1: Dec 28, 2015 Refactoring in swad_database. (187926 lines)
|
Version 15.76.1: Dec 28, 2015 Refactoring in swad_database. (187926 lines)
|
||||||
|
|
|
@ -1951,9 +1951,8 @@ mysql> DESCRIBE social;
|
||||||
| CrsCod | int(11) | NO | | -1 | |
|
| CrsCod | int(11) | NO | | -1 | |
|
||||||
| Cod | int(11) | NO | | -1 | |
|
| Cod | int(11) | NO | | -1 | |
|
||||||
| TimeEvent | datetime | NO | MUL | NULL | |
|
| TimeEvent | datetime | NO | MUL | NULL | |
|
||||||
| Status | tinyint(4) | NO | | 0 | |
|
|
||||||
+-------------+------------+------+-----+---------+----------------+
|
+-------------+------------+------+-----+---------+----------------+
|
||||||
11 rows in set (0.00 sec)
|
10 rows in set (0.00 sec)
|
||||||
*/
|
*/
|
||||||
DB_CreateTable ("CREATE TABLE IF NOT EXISTS social ("
|
DB_CreateTable ("CREATE TABLE IF NOT EXISTS social ("
|
||||||
"SocCod BIGINT NOT NULL AUTO_INCREMENT,"
|
"SocCod BIGINT NOT NULL AUTO_INCREMENT,"
|
||||||
|
@ -1966,7 +1965,6 @@ mysql> DESCRIBE social;
|
||||||
"CrsCod INT NOT NULL DEFAULT -1,"
|
"CrsCod INT NOT NULL DEFAULT -1,"
|
||||||
"Cod INT NOT NULL DEFAULT -1,"
|
"Cod INT NOT NULL DEFAULT -1,"
|
||||||
"TimeEvent DATETIME NOT NULL,"
|
"TimeEvent DATETIME NOT NULL,"
|
||||||
"Status TINYINT NOT NULL DEFAULT 0,"
|
|
||||||
"UNIQUE INDEX(SocCod),"
|
"UNIQUE INDEX(SocCod),"
|
||||||
"INDEX(SocialEvent),"
|
"INDEX(SocialEvent),"
|
||||||
"INDEX(UsrCod),"
|
"INDEX(UsrCod),"
|
||||||
|
|
12
swad_forum.c
12
swad_forum.c
|
@ -41,6 +41,7 @@
|
||||||
#include "swad_notification.h"
|
#include "swad_notification.h"
|
||||||
#include "swad_parameter.h"
|
#include "swad_parameter.h"
|
||||||
#include "swad_profile.h"
|
#include "swad_profile.h"
|
||||||
|
#include "swad_social.h"
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/************** External global variables from others modules ****************/
|
/************** External global variables from others modules ****************/
|
||||||
|
@ -3829,6 +3830,17 @@ void For_RecForumPst (void)
|
||||||
Ntf_ShowAlertNumUsrsToBeNotifiedByEMail (NumUsrsToBeNotifiedByEMail);
|
Ntf_ShowAlertNumUsrsToBeNotifiedByEMail (NumUsrsToBeNotifiedByEMail);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/***** Insert post into public social activity *****/
|
||||||
|
switch (Gbl.Forum.ForumType) // Only if forum is public for any logged user
|
||||||
|
{
|
||||||
|
case For_FORUM_GLOBAL_USRS:
|
||||||
|
case For_FORUM_SWAD_USRS:
|
||||||
|
Soc_StoreSocialEvent (Soc_EVENT_FORUM_POST,PstCod);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
/***** Show again the posts of this thread of the forum *****/
|
/***** Show again the posts of this thread of the forum *****/
|
||||||
For_ShowForumLevel2 (ThrCod);
|
For_ShowForumLevel2 (ThrCod);
|
||||||
}
|
}
|
||||||
|
|
106
swad_social.c
106
swad_social.c
|
@ -25,25 +25,15 @@
|
||||||
/*********************************** Headers *********************************/
|
/*********************************** Headers *********************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
// #include <linux/stddef.h> // For NULL
|
|
||||||
#include <linux/limits.h> // For PATH_MAX
|
#include <linux/limits.h> // For PATH_MAX
|
||||||
|
#include <stdlib.h> // For malloc and free
|
||||||
#include <sys/types.h> // For time_t
|
#include <sys/types.h> // For time_t
|
||||||
|
|
||||||
#include "swad_constant.h"
|
#include "swad_constant.h"
|
||||||
// #include "swad_config.h"
|
|
||||||
#include "swad_database.h"
|
#include "swad_database.h"
|
||||||
// #include "swad_follow.h"
|
|
||||||
#include "swad_global.h"
|
#include "swad_global.h"
|
||||||
#include "swad_layout.h"
|
#include "swad_layout.h"
|
||||||
// #include "swad_nickname.h"
|
|
||||||
// #include "swad_parameter.h"
|
|
||||||
// #include "swad_privacy.h"
|
|
||||||
// #include "swad_profile.h"
|
|
||||||
// #include "swad_role.h"
|
|
||||||
#include "swad_social.h"
|
#include "swad_social.h"
|
||||||
// #include "swad_text.h"
|
|
||||||
// #include "swad_theme.h"
|
|
||||||
// #include "swad_user.h"
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/****************************** Public constants *****************************/
|
/****************************** Public constants *****************************/
|
||||||
|
@ -108,7 +98,7 @@ void Soc_ShowSocialActivity (void)
|
||||||
time_t DateTimeUTC; // Date-time of the event
|
time_t DateTimeUTC; // Date-time of the event
|
||||||
bool ShowPhoto = false;
|
bool ShowPhoto = false;
|
||||||
char PhotoURL[PATH_MAX+1];
|
char PhotoURL[PATH_MAX+1];
|
||||||
char SummaryStr[Soc_MAX_BYTES_SUMMARY+1];
|
char *SummaryStr;
|
||||||
|
|
||||||
/***** Get my timeline from database *****/
|
/***** Get my timeline from database *****/
|
||||||
sprintf (Query,"SELECT SocialEvent,UsrCod,"
|
sprintf (Query,"SELECT SocialEvent,UsrCod,"
|
||||||
|
@ -124,12 +114,16 @@ void Soc_ShowSocialActivity (void)
|
||||||
/***** List my timeline *****/
|
/***** List my timeline *****/
|
||||||
if (NumEvents) // Events found
|
if (NumEvents) // Events found
|
||||||
{
|
{
|
||||||
|
/***** Allocate memory for the summary of the notification *****/
|
||||||
|
if ((SummaryStr = malloc (Cns_MAX_BYTES_TEXT+1)) == NULL)
|
||||||
|
Lay_ShowErrorAndExit ("Not enough memory to store the summary of the notification.");
|
||||||
|
|
||||||
/***** Initialize structure with user's data *****/
|
/***** Initialize structure with user's data *****/
|
||||||
Usr_UsrDataConstructor (&UsrDat);
|
Usr_UsrDataConstructor (&UsrDat);
|
||||||
|
|
||||||
/***** List start *****/
|
/***** List start *****/
|
||||||
Lay_StartRoundFrame (NULL,Txt_Public_activity);
|
Lay_StartRoundFrame (NULL,Txt_Public_activity);
|
||||||
fprintf (Gbl.F.Out,"<ul>");
|
fprintf (Gbl.F.Out,"<ul class=\"LIST_LEFT\">");
|
||||||
|
|
||||||
/***** List events one by one *****/
|
/***** List events one by one *****/
|
||||||
for (NumEvent = 0;
|
for (NumEvent = 0;
|
||||||
|
@ -192,20 +186,27 @@ void Soc_ShowSocialActivity (void)
|
||||||
fprintf (Gbl.F.Out,"<li>");
|
fprintf (Gbl.F.Out,"<li>");
|
||||||
|
|
||||||
/* Write author of the event */
|
/* Write author of the event */
|
||||||
|
fprintf (Gbl.F.Out,"<div style=\"display:inline-block; vertical-align:top; width:64px; height:90px;\">");
|
||||||
ShowPhoto = Pho_ShowUsrPhotoIsAllowed (&UsrDat,PhotoURL);
|
ShowPhoto = Pho_ShowUsrPhotoIsAllowed (&UsrDat,PhotoURL);
|
||||||
Pho_ShowUsrPhoto (&UsrDat,ShowPhoto ? PhotoURL :
|
Pho_ShowUsrPhoto (&UsrDat,ShowPhoto ? PhotoURL :
|
||||||
NULL,
|
NULL,
|
||||||
"PHOTO30x40",Pho_ZOOM);
|
"PHOTO60x80",Pho_ZOOM);
|
||||||
|
fprintf (Gbl.F.Out,"</div>");
|
||||||
|
|
||||||
fprintf (Gbl.F.Out,"<span class=\"DAT\">%s</span>",
|
fprintf (Gbl.F.Out,"<div style=\"display:inline-block;\">");
|
||||||
UsrDat.FullName);
|
|
||||||
|
|
||||||
/* Write event type */
|
fprintf (Gbl.F.Out,"<div class=\"DAT LEFT_TOP\""
|
||||||
fprintf (Gbl.F.Out,"<span class=\"DAT\">%u</span>",
|
" style=\"display:inline-block; width:300px;\">"
|
||||||
|
"<strong>%s</strong> @%s</div>",
|
||||||
|
UsrDat.FullName,UsrDat.Nickname);
|
||||||
|
|
||||||
|
/* Write date and time */
|
||||||
|
Soc_WriteEventDate (DateTimeUTC);
|
||||||
|
|
||||||
|
/* Write event type and location */
|
||||||
|
fprintf (Gbl.F.Out,"<div class=\"DAT\" style=\"display:block;\">%u: ",
|
||||||
(unsigned) SocialEvent);
|
(unsigned) SocialEvent);
|
||||||
|
|
||||||
/* Write location */
|
|
||||||
fprintf (Gbl.F.Out,"<span class=\"DAT\">");
|
|
||||||
if (SocialEvent == Soc_EVENT_FORUM_POST)
|
if (SocialEvent == Soc_EVENT_FORUM_POST)
|
||||||
fprintf (Gbl.F.Out,"%s: %s",Txt_Forum,ForumName);
|
fprintf (Gbl.F.Out,"%s: %s",Txt_Forum,ForumName);
|
||||||
else if (Crs.CrsCod > 0)
|
else if (Crs.CrsCod > 0)
|
||||||
|
@ -218,15 +219,14 @@ void Soc_ShowSocialActivity (void)
|
||||||
fprintf (Gbl.F.Out,"%s: %s",Txt_Institution,Ins.ShortName);
|
fprintf (Gbl.F.Out,"%s: %s",Txt_Institution,Ins.ShortName);
|
||||||
else if (Cty.CtyCod > 0)
|
else if (Cty.CtyCod > 0)
|
||||||
fprintf (Gbl.F.Out,"%s: %s",Txt_Country,Cty.Name[Gbl.Prefs.Language]);
|
fprintf (Gbl.F.Out,"%s: %s",Txt_Country,Cty.Name[Gbl.Prefs.Language]);
|
||||||
fprintf (Gbl.F.Out,"</span>");
|
fprintf (Gbl.F.Out,"</div>");
|
||||||
|
|
||||||
/* Write date and time */
|
|
||||||
Soc_WriteEventDate (DateTimeUTC);
|
|
||||||
|
|
||||||
/***** Write content of the event *****/
|
/***** Write content of the event *****/
|
||||||
Soc_GetEventSummary (SocialEvent,Cod,
|
Soc_GetEventSummary (SocialEvent,Cod,
|
||||||
SummaryStr,Soc_MAX_BYTES_SUMMARY);
|
SummaryStr,Soc_MAX_BYTES_SUMMARY);
|
||||||
fprintf (Gbl.F.Out,"<span class=\"DAT\">%s</span>",SummaryStr);
|
fprintf (Gbl.F.Out,"<div class=\"DAT\">%s</div>",SummaryStr);
|
||||||
|
|
||||||
|
fprintf (Gbl.F.Out,"</div>");
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** List end *****/
|
/***** List end *****/
|
||||||
|
@ -235,6 +235,9 @@ void Soc_ShowSocialActivity (void)
|
||||||
|
|
||||||
/***** Free memory used for user's data *****/
|
/***** Free memory used for user's data *****/
|
||||||
Usr_UsrDataDestructor (&UsrDat);
|
Usr_UsrDataDestructor (&UsrDat);
|
||||||
|
|
||||||
|
/***** Free summary *****/
|
||||||
|
free ((void *) SummaryStr);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
Lay_ShowAlert (Lay_INFO,"No events."); // Need translation!!!!
|
Lay_ShowAlert (Lay_INFO,"No events."); // Need translation!!!!
|
||||||
|
@ -270,7 +273,8 @@ static void Soc_WriteEventDate (time_t TimeUTC)
|
||||||
UniqueId++;
|
UniqueId++;
|
||||||
|
|
||||||
/***** Start cell *****/
|
/***** Start cell *****/
|
||||||
fprintf (Gbl.F.Out,"<span id=\"date_%u\" class=\"DAT\">",
|
fprintf (Gbl.F.Out,"<div id=\"date_%u\" class=\"DAT_LIGHT RIGHT_TOP\""
|
||||||
|
" style=\"display:inline-block;\">",
|
||||||
UniqueId);
|
UniqueId);
|
||||||
|
|
||||||
/***** Write date and time *****/
|
/***** Write date and time *****/
|
||||||
|
@ -280,7 +284,7 @@ static void Soc_WriteEventDate (time_t TimeUTC)
|
||||||
UniqueId,(long) TimeUTC);
|
UniqueId,(long) TimeUTC);
|
||||||
|
|
||||||
/***** End cell *****/
|
/***** End cell *****/
|
||||||
fprintf (Gbl.F.Out,"</span>");
|
fprintf (Gbl.F.Out,"</div>");
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -365,3 +369,51 @@ static void Soc_GetEventSummary (Soc_SocialEvent_t SocialEvent,long Cod,
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/********************* Store a social event into database ********************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
void Soc_StoreSocialEvent (Soc_SocialEvent_t SocialEvent,long Cod)
|
||||||
|
{
|
||||||
|
char Query[512];
|
||||||
|
long CtyCod;
|
||||||
|
long InsCod;
|
||||||
|
long CtrCod;
|
||||||
|
long DegCod;
|
||||||
|
long CrsCod;
|
||||||
|
|
||||||
|
if (SocialEvent == Soc_EVENT_FORUM_POST)
|
||||||
|
{
|
||||||
|
// CtyCod = Gbl.Forum.Cty.CtyCod;
|
||||||
|
// InsCod = Gbl.Forum.Ins.InsCod;
|
||||||
|
// CtrCod = Gbl.Forum.Ctr.CtrCod;
|
||||||
|
// DegCod = Gbl.Forum.Deg.DegCod;
|
||||||
|
// CrsCod = Gbl.Forum.Crs.CrsCod;
|
||||||
|
CtyCod = -1L;
|
||||||
|
InsCod = -1L;
|
||||||
|
CtrCod = -1L;
|
||||||
|
DegCod = -1L;
|
||||||
|
CrsCod = -1L;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
CtyCod = Gbl.CurrentCty.Cty.CtyCod;
|
||||||
|
InsCod = Gbl.CurrentIns.Ins.InsCod;
|
||||||
|
CtrCod = Gbl.CurrentCtr.Ctr.CtrCod;
|
||||||
|
DegCod = Gbl.CurrentDeg.Deg.DegCod;
|
||||||
|
CrsCod = Gbl.CurrentCrs.Crs.CrsCod;
|
||||||
|
}
|
||||||
|
|
||||||
|
/***** Store notify event *****/
|
||||||
|
sprintf (Query,"INSERT INTO social (SocialEvent,UsrCod,"
|
||||||
|
"CtyCod,InsCod,CtrCod,DegCod,CrsCod,"
|
||||||
|
"Cod,TimeEvent)"
|
||||||
|
" VALUES ('%u','%ld',"
|
||||||
|
"'%ld','%ld','%ld','%ld','%ld',"
|
||||||
|
"'%ld',NOW())",
|
||||||
|
(unsigned) SocialEvent,Gbl.Usrs.Me.UsrDat.UsrCod,
|
||||||
|
CtyCod,InsCod,CtrCod,DegCod,CrsCod,
|
||||||
|
Cod);
|
||||||
|
DB_QueryINSERT (Query,"can not create new social event");
|
||||||
|
}
|
||||||
|
|
|
@ -84,4 +84,6 @@ typedef enum
|
||||||
|
|
||||||
void Soc_ShowSocialActivity (void);
|
void Soc_ShowSocialActivity (void);
|
||||||
|
|
||||||
|
void Soc_StoreSocialEvent (Soc_SocialEvent_t SocialEvent,long Cod);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue