mirror of https://github.com/acanas/swad-core.git
Version 15.191
This commit is contained in:
parent
1446539c2a
commit
13fd0917e8
|
@ -6,7 +6,7 @@
|
|||
and used to support university teaching.
|
||||
|
||||
This file is part of SWAD core.
|
||||
Copyright (C) 1999-2015 Antonio Cañas Vargas
|
||||
Copyright (C) 1999-2016 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 3 License as
|
||||
|
@ -2071,6 +2071,14 @@ a:hover img.CENTRE_PHOTO_SHOW
|
|||
margin-bottom:10px;
|
||||
}
|
||||
|
||||
/************************************ Forum **********************************/
|
||||
.FOR_IMG
|
||||
{
|
||||
width:480px;
|
||||
border-radius:4px;
|
||||
margin:10px 0;
|
||||
}
|
||||
|
||||
/*********************************** Messages ********************************/
|
||||
.MSG_TO_ONE_RCP
|
||||
{
|
||||
|
@ -2079,6 +2087,12 @@ a:hover img.CENTRE_PHOTO_SHOW
|
|||
text-align:left;
|
||||
vertical-align:middle;
|
||||
}
|
||||
.MSG_IMG
|
||||
{
|
||||
width:480px;
|
||||
border-radius:4px;
|
||||
margin:10px 0;
|
||||
}
|
||||
.MSG_TXT {color:#404040; font-size:13pt;}
|
||||
.MSG_TIT {color:#4D88A1; font-size:13pt;}
|
||||
.MSG_TIT_NEW {color:#4D88A1; font-size:13pt; font-weight:bold;}
|
||||
|
|
|
@ -133,14 +133,14 @@
|
|||
/****************************** Public constants *****************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
#define Log_PLATFORM_VERSION "SWAD 15.190.6 (2016-04-09)"
|
||||
#define Log_PLATFORM_VERSION "SWAD 15.191 (2016-04-10)"
|
||||
#define CSS_FILE "swad15.190.1.css"
|
||||
#define JS_FILE "swad15.190.1.js"
|
||||
|
||||
// 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
|
||||
/*
|
||||
Version 15.191: Apr 09, 2016 Form to attach an image to a forum post. Not finished. (? lines)
|
||||
Version 15.191: Apr 10, 2016 Forms to attach an image to a forum posts and messages. Not finished. (? lines)
|
||||
Version 15.190.6: Apr 09, 2016 Changes in layout of form to write a new message. (199152 lines)
|
||||
Version 15.190.5: Apr 09, 2016 Changes in layout of form to write a new forum post. (199156 lines)
|
||||
Version 15.190.4: Apr 09, 2016 Changes in layout of form to write a new forum post. (199152 lines)
|
||||
|
|
48
swad_forum.c
48
swad_forum.c
|
@ -238,6 +238,14 @@ const Act_Action_t For_ActionsDisPstFor[For_NUM_TYPES_FORUM] =
|
|||
ActDisPstForSWATch,
|
||||
};
|
||||
|
||||
// Forum images will be saved with:
|
||||
// - maximum width of For_IMAGE_SAVED_MAX_HEIGHT
|
||||
// - maximum height of For_IMAGE_SAVED_MAX_HEIGHT
|
||||
// - maintaining the original aspect ratio (aspect ratio recommended: 3:2)
|
||||
#define For_IMAGE_SAVED_MAX_WIDTH 768
|
||||
#define For_IMAGE_SAVED_MAX_HEIGHT 512
|
||||
#define For_IMAGE_SAVED_QUALITY 75 // 1 to 100
|
||||
|
||||
/*****************************************************************************/
|
||||
/***************************** Private prototypes ***************************/
|
||||
/*****************************************************************************/
|
||||
|
@ -3701,6 +3709,9 @@ static void For_WriteFormForumPst (bool IsReply,long ThrCod,const char *Subject)
|
|||
extern const char *Txt_New_thread;
|
||||
extern const char *Txt_MSG_Subject;
|
||||
extern const char *Txt_MSG_Message;
|
||||
extern const char *Txt_Image;
|
||||
extern const char *Txt_optional;
|
||||
extern const char *Txt_Image_title_attribution;
|
||||
extern const char *Txt_Send_message;
|
||||
|
||||
/***** Start frame *****/
|
||||
|
@ -3757,6 +3768,29 @@ static void For_WriteFormForumPst (bool IsReply,long ThrCod,const char *Subject)
|
|||
/***** Help for text editor *****/
|
||||
Lay_HelpPlainEditor ();
|
||||
|
||||
/***** Attached image (optional) *****/
|
||||
/* Action to perform on image */
|
||||
Par_PutHiddenParamUnsigned ("ImgAct",(unsigned) Img_ACTION_NEW_IMAGE);
|
||||
|
||||
/* Image file */
|
||||
fprintf (Gbl.F.Out,"<label>"
|
||||
"<img src=\"%s/photo64x64.gif\""
|
||||
" alt=\"%s\" title=\"%s (%s)\""
|
||||
" class=\"ICON20x20\" />"
|
||||
"</label>"
|
||||
"<input type=\"file\" name=\"ImgFil\""
|
||||
" size=\"40\" maxlength=\"100\" value=\"\" />"
|
||||
"<br />",
|
||||
Gbl.Prefs.IconsURL,
|
||||
Txt_Image,Txt_Image,Txt_optional);
|
||||
|
||||
/* Image title/attribution */
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ImgTit\""
|
||||
" placeholder=\"%s (%s)…\""
|
||||
" class=\"FOR_IMG\" maxlength=\"%u\" value=\"\">",
|
||||
Txt_Image_title_attribution,Txt_optional,
|
||||
Img_MAX_BYTES_TITLE);
|
||||
|
||||
/***** Send button *****/
|
||||
Lay_PutCreateButton (Txt_Send_message);
|
||||
|
||||
|
@ -3781,6 +3815,7 @@ void For_RecForumPst (void)
|
|||
unsigned NumUsrsToBeNotifiedByEMail;
|
||||
struct SocialPublishing SocPub;
|
||||
char Content[Cns_MAX_BYTES_LONG_TEXT+1];
|
||||
struct Image Image;
|
||||
|
||||
/***** Get order type, degree and course of the forum *****/
|
||||
For_GetParamsForum ();
|
||||
|
@ -3812,6 +3847,16 @@ void For_RecForumPst (void)
|
|||
Par_GetParAndChangeFormat ("Content",Content,Cns_MAX_BYTES_LONG_TEXT,
|
||||
Str_TO_RIGOROUS_HTML,false);
|
||||
|
||||
/***** Initialize image *****/
|
||||
Img_ImageConstructor (&Image);
|
||||
|
||||
/***** Get attached image (action, file and title) *****/
|
||||
Img_GetImageFromForm (0,&Image,NULL,
|
||||
"ImgAct","ImgFil","ImgTit",
|
||||
For_IMAGE_SAVED_MAX_WIDTH,
|
||||
For_IMAGE_SAVED_MAX_HEIGHT,
|
||||
For_IMAGE_SAVED_QUALITY);
|
||||
|
||||
/***** Create a new message *****/
|
||||
if (PstIsAReply)
|
||||
{
|
||||
|
@ -3835,6 +3880,9 @@ void For_RecForumPst (void)
|
|||
For_UpdateThrFirstAndLastPst (ThrCod,PstCod,PstCod);
|
||||
}
|
||||
|
||||
/***** Free image *****/
|
||||
Img_ImageDestructor (&Image);
|
||||
|
||||
/***** Increment number of forum posts in my user's figures *****/
|
||||
Prf_IncrementNumForPstUsr (Gbl.Usrs.Me.UsrDat.UsrCod);
|
||||
|
||||
|
|
|
@ -60,6 +60,14 @@ extern struct Act_Actions Act_Actions[Act_NUM_ACTIONS];
|
|||
#define Msg_MAX_LENGTH_MESSAGES_QUERY 4096
|
||||
#define Msg_MAX_LENGTH_STR_ADDR (32*5000)
|
||||
|
||||
// Forum images will be saved with:
|
||||
// - maximum width of Msg_IMAGE_SAVED_MAX_HEIGHT
|
||||
// - maximum height of Msg_IMAGE_SAVED_MAX_HEIGHT
|
||||
// - maintaining the original aspect ratio (aspect ratio recommended: 3:2)
|
||||
#define Msg_IMAGE_SAVED_MAX_WIDTH 768
|
||||
#define Msg_IMAGE_SAVED_MAX_HEIGHT 512
|
||||
#define Msg_IMAGE_SAVED_QUALITY 75 // 1 to 100
|
||||
|
||||
/*****************************************************************************/
|
||||
/******************************** Private types ******************************/
|
||||
/*****************************************************************************/
|
||||
|
@ -275,6 +283,9 @@ static void Msg_PutFormMsgUsrs (const char *Content)
|
|||
extern const char *Txt_Reply_message;
|
||||
extern const char *Txt_New_message;
|
||||
extern const char *Txt_MSG_To;
|
||||
extern const char *Txt_Image;
|
||||
extern const char *Txt_optional;
|
||||
extern const char *Txt_Image_title_attribution;
|
||||
extern const char *Txt_Send_message;
|
||||
char YN[1+1];
|
||||
|
||||
|
@ -408,6 +419,29 @@ static void Msg_PutFormMsgUsrs (const char *Content)
|
|||
/***** Help for text editor and send button *****/
|
||||
Lay_HelpPlainEditor ();
|
||||
|
||||
/***** Attached image (optional) *****/
|
||||
/* Action to perform on image */
|
||||
Par_PutHiddenParamUnsigned ("ImgAct",(unsigned) Img_ACTION_NEW_IMAGE);
|
||||
|
||||
/* Image file */
|
||||
fprintf (Gbl.F.Out,"<label>"
|
||||
"<img src=\"%s/photo64x64.gif\""
|
||||
" alt=\"%s\" title=\"%s (%s)\""
|
||||
" class=\"ICON20x20\" />"
|
||||
"</label>"
|
||||
"<input type=\"file\" name=\"ImgFil\""
|
||||
" size=\"40\" maxlength=\"100\" value=\"\" />"
|
||||
"<br />",
|
||||
Gbl.Prefs.IconsURL,
|
||||
Txt_Image,Txt_Image,Txt_optional);
|
||||
|
||||
/* Image title/attribution */
|
||||
fprintf (Gbl.F.Out,"<input type=\"text\" name=\"ImgTit\""
|
||||
" placeholder=\"%s (%s)…\""
|
||||
" class=\"MSG_IMG\" maxlength=\"%u\" value=\"\">",
|
||||
Txt_Image_title_attribution,Txt_optional,
|
||||
Img_MAX_BYTES_TITLE);
|
||||
|
||||
/***** Send button *****/
|
||||
Lay_PutCreateButton (Txt_Send_message);
|
||||
|
||||
|
@ -693,6 +727,7 @@ void Msg_RecMsgFromUsr (void)
|
|||
bool CreateNotif;
|
||||
bool NotifyByEmail;
|
||||
char Content[Cns_MAX_BYTES_LONG_TEXT+1];
|
||||
struct Image Image;
|
||||
bool Error = false;
|
||||
|
||||
/***** Get data from form *****/
|
||||
|
@ -755,6 +790,16 @@ void Msg_RecMsgFromUsr (void)
|
|||
/***** Initialize structure with user's data *****/
|
||||
Usr_UsrDataConstructor (&UsrDstData);
|
||||
|
||||
/***** Initialize image *****/
|
||||
Img_ImageConstructor (&Image);
|
||||
|
||||
/***** Get attached image (action, file and title) *****/
|
||||
Img_GetImageFromForm (0,&Image,NULL,
|
||||
"ImgAct","ImgFil","ImgTit",
|
||||
Msg_IMAGE_SAVED_MAX_WIDTH,
|
||||
Msg_IMAGE_SAVED_MAX_HEIGHT,
|
||||
Msg_IMAGE_SAVED_QUALITY);
|
||||
|
||||
/***** Loop over the list Gbl.Usrs.Select.All, that holds the list of the
|
||||
recipients, creating a received message for each recipient *****/
|
||||
Str_ChangeFormat (Str_FROM_FORM,Str_TO_RIGOROUS_HTML,
|
||||
|
@ -827,6 +872,9 @@ void Msg_RecMsgFromUsr (void)
|
|||
}
|
||||
}
|
||||
|
||||
/***** Free image *****/
|
||||
Img_ImageDestructor (&Image);
|
||||
|
||||
/***** Free memory used for user's data *****/
|
||||
Usr_UsrDataDestructor (&UsrDstData);
|
||||
|
||||
|
|
|
@ -51,11 +51,11 @@
|
|||
/***************************** Private constants *****************************/
|
||||
/*****************************************************************************/
|
||||
|
||||
#define Soc_WIDTH_TIMELINE "560px"
|
||||
#define Soc_MAX_SHARERS_FAVERS_SHOWN 7 // Maximum number of users shown who have share/fav a social note
|
||||
#define Soc_WIDTH_TIMELINE "560px"
|
||||
#define Soc_MAX_SHARERS_FAVERS_SHOWN 7 // Maximum number of users shown who have share/fav a social note
|
||||
|
||||
#define Soc_MAX_BYTES_SUMMARY 1000
|
||||
#define Soc_MAX_CHARS_IN_POST 1000
|
||||
#define Soc_MAX_BYTES_SUMMARY 1000
|
||||
#define Soc_MAX_CHARS_IN_POST 1000
|
||||
|
||||
// Number of recent publishings got and shown the first time, before refreshing
|
||||
#define Soc_MAX_NEW_PUBS_TO_GET_AND_SHOW 10000 // Unlimited
|
||||
|
|
Loading…
Reference in New Issue