2011-06-02 01:45:46 +02:00
< ? php
2016-09-29 10:53:17 +02:00
2013-11-25 21:56:56 +01:00
function user_news_comments_title () {
return _ ( " News comments " );
}
2013-11-25 21:04:58 +01:00
function news_title () {
return _ ( " News " );
}
function meetings_title () {
return _ ( " Meetings " );
}
2011-06-03 06:47:35 +02:00
function user_meetings () {
2016-08-21 23:11:23 +02:00
global $DISPLAY_NEWS ;
2016-09-29 10:53:17 +02:00
2014-09-08 14:45:41 +02:00
$html = '<div class="col-md-12"><h1>' . meetings_title () . '</h1>' . msg ();
2016-09-29 10:53:17 +02:00
if ( isset ( $_REQUEST [ 'page' ]) && preg_match ( " /^[0-9] { 1,} $ / " , $_REQUEST [ 'page' ])) {
2012-12-10 09:49:23 +01:00
$page = $_REQUEST [ 'page' ];
2016-09-29 10:53:17 +02:00
} else {
2012-12-10 09:49:23 +01:00
$page = 0 ;
2016-09-29 10:53:17 +02:00
}
2014-12-26 19:22:03 +01:00
$news = sql_select ( " SELECT * FROM `News` WHERE `Treffen`=1 ORDER BY `Datum` DESC LIMIT " . sql_escape ( $page * $DISPLAY_NEWS ) . " , " . sql_escape ( $DISPLAY_NEWS ));
2016-09-29 10:53:17 +02:00
foreach ( $news as $entry ) {
2012-12-10 09:49:23 +01:00
$html .= display_news ( $entry );
2016-09-29 10:53:17 +02:00
}
2014-08-22 22:34:13 +02:00
$dis_rows = ceil ( sql_num_query ( " SELECT * FROM `News` " ) / $DISPLAY_NEWS );
$html .= '<div class="text-center">' . '<ul class="pagination">' ;
for ( $i = 0 ; $i < $dis_rows ; $i ++ ) {
2016-09-29 10:53:17 +02:00
if ( isset ( $_REQUEST [ 'page' ]) && $i == $_REQUEST [ 'page' ]) {
2014-08-22 22:34:13 +02:00
$html .= '<li class="active">' ;
2016-09-29 10:53:17 +02:00
} elseif ( ! isset ( $_REQUEST [ 'page' ]) && $i == 0 ) {
2014-08-22 22:34:13 +02:00
$html .= '<li class="active">' ;
2016-09-29 10:53:17 +02:00
} else {
2014-08-22 22:34:13 +02:00
$html .= '<li>' ;
2016-09-29 10:53:17 +02:00
}
2014-08-22 22:34:13 +02:00
$html .= '<a href="' . page_link_to ( " user_meetings " ) . '&page=' . $i . '">' . ( $i + 1 ) . '</a></li>' ;
2012-12-10 09:49:23 +01:00
}
2014-08-22 22:34:13 +02:00
$html .= '</ul></div></div>' ;
2016-09-29 10:53:17 +02:00
2012-12-10 09:49:23 +01:00
return $html ;
2011-06-03 06:47:35 +02:00
}
2011-06-03 05:12:50 +02:00
function display_news ( $news ) {
2012-12-10 09:49:23 +01:00
global $privileges , $p ;
2016-09-29 10:53:17 +02:00
2014-08-22 22:34:13 +02:00
$html = '' ;
$html .= '<div class="panel' . ( $news [ 'Treffen' ] == 1 ? ' panel-info' : ' panel-default' ) . '">' ;
$html .= '<div class="panel-heading">' ;
$html .= '<h3 class="panel-title">' . ( $news [ 'Treffen' ] == 1 ? '[Meeting] ' : '' ) . ReplaceSmilies ( $news [ 'Betreff' ]) . '</h3>' ;
$html .= '</div>' ;
$html .= '<div class="panel-body">' . ReplaceSmilies ( nl2br ( $news [ 'Text' ])) . '</div>' ;
2016-09-29 10:53:17 +02:00
2014-08-22 22:34:13 +02:00
$html .= '<div class="panel-footer text-muted">' ;
2016-09-29 10:53:17 +02:00
if ( in_array ( " admin_news " , $privileges )) {
2014-12-07 00:10:47 +01:00
$html .= '<div class="pull-right">' . button_glyph ( page_link_to ( " admin_news " ) . '&action=edit&id=' . $news [ 'ID' ], 'edit' , 'btn-xs' ) . '</div>' ;
2016-09-29 10:53:17 +02:00
}
2014-08-22 22:34:13 +02:00
$html .= '<span class="glyphicon glyphicon-time"></span> ' . date ( " Y-m-d H:i " , $news [ 'Datum' ]) . ' ' ;
2016-09-29 10:53:17 +02:00
2013-09-18 01:38:36 +02:00
$user_source = User ( $news [ 'UID' ]);
2016-09-29 10:53:17 +02:00
if ( $user_source === false ) {
2013-11-28 22:40:48 +01:00
engelsystem_error ( _ ( " Unable to load user. " ));
2016-09-29 10:53:17 +02:00
}
2013-09-18 01:38:36 +02:00
$html .= User_Nick_render ( $user_source );
2016-09-29 10:53:17 +02:00
if ( $p != " news_comments " ) {
2014-08-22 22:34:13 +02:00
$html .= ' <a href="' . page_link_to ( " news_comments " ) . '&nid=' . $news [ 'ID' ] . '"><span class="glyphicon glyphicon-comment"></span> ' . _ ( " Comments " ) . ' »</a> <span class="badge">' . sql_num_query ( " SELECT * FROM `NewsComments` WHERE `Refid`=' " . sql_escape ( $news [ 'ID' ]) . " ' " ) . '</span>' ;
2016-09-29 10:53:17 +02:00
}
2014-08-22 22:34:13 +02:00
$html .= '</div>' ;
$html .= '</div>' ;
2012-12-10 09:49:23 +01:00
return $html ;
2011-06-02 01:45:46 +02:00
}
2011-06-03 05:12:50 +02:00
function user_news_comments () {
2012-12-10 09:49:23 +01:00
global $user ;
2016-09-29 10:53:17 +02:00
2014-09-08 14:45:41 +02:00
$html = '<div class="col-md-12"><h1>' . user_news_comments_title () . '</h1>' ;
2014-12-28 13:44:56 +01:00
if ( isset ( $_REQUEST [ " nid " ]) && preg_match ( " /^[0-9] { 1,} $ / " , $_REQUEST [ 'nid' ]) && sql_num_query ( " SELECT * FROM `News` WHERE `ID`=' " . sql_escape ( $_REQUEST [ 'nid' ]) . " ' LIMIT 1 " ) > 0 ) {
2012-12-10 09:49:23 +01:00
$nid = $_REQUEST [ " nid " ];
2014-12-28 13:44:56 +01:00
list ( $news ) = sql_select ( " SELECT * FROM `News` WHERE `ID`=' " . sql_escape ( $nid ) . " ' LIMIT 1 " );
2014-08-22 22:34:13 +02:00
if ( isset ( $_REQUEST [ " text " ])) {
2012-12-10 09:49:23 +01:00
$text = preg_replace ( " /([^ \ p { L} \ p { P} \ p { Z} \ p { N} \n ] { 1,})/ui " , '' , strip_tags ( $_REQUEST [ 'text' ]));
2014-01-05 20:04:09 +01:00
sql_query ( " INSERT INTO `NewsComments` (`Refid`, `Datum`, `Text`, `UID`) VALUES (' " . sql_escape ( $nid ) . " ', ' " . date ( " Y-m-d H:i:s " ) . " ', ' " . sql_escape ( $text ) . " ', ' " . sql_escape ( $user [ " UID " ]) . " ') " );
2012-12-26 19:53:27 +01:00
engelsystem_log ( " Created news_comment: " . $text );
2013-11-25 21:56:56 +01:00
$html .= success ( _ ( " Entry saved. " ), true );
2012-12-10 09:49:23 +01:00
}
2016-09-29 10:53:17 +02:00
2012-12-10 09:49:23 +01:00
$html .= display_news ( $news );
2016-09-29 10:53:17 +02:00
2014-01-05 20:04:09 +01:00
$comments = sql_select ( " SELECT * FROM `NewsComments` WHERE `Refid`=' " . sql_escape ( $nid ) . " ' ORDER BY 'ID' " );
2012-12-10 09:49:23 +01:00
foreach ( $comments as $comment ) {
2013-09-18 01:38:36 +02:00
$user_source = User ( $comment [ 'UID' ]);
2016-09-29 10:53:17 +02:00
if ( $user_source === false ) {
2013-11-28 22:40:48 +01:00
engelsystem_error ( _ ( " Unable to load user. " ));
2016-09-29 10:53:17 +02:00
}
2014-08-22 22:34:13 +02:00
$html .= '<div class="panel panel-default">' ;
$html .= '<div class="panel-body">' . nl2br ( $comment [ 'Text' ]) . '</div>' ;
$html .= '<div class="panel-footer text-muted">' ;
$html .= '<span class="glyphicon glyphicon-time"></span> ' . $comment [ 'Datum' ] . ' ' ;
2013-09-18 01:38:36 +02:00
$html .= User_Nick_render ( $user_source );
2014-08-22 22:34:13 +02:00
$html .= '</div>' ;
$html .= '</div>' ;
2012-12-10 09:49:23 +01:00
}
2016-09-29 10:53:17 +02:00
2014-08-22 22:34:13 +02:00
$html .= '<hr /><h2>' . _ ( " New Comment: " ) . '</h2>' ;
2016-09-29 10:53:17 +02:00
$html .= form ([
2014-08-22 22:34:13 +02:00
form_textarea ( 'text' , _ ( " Message " ), '' ),
2016-09-29 10:53:17 +02:00
form_submit ( 'submit' , _ ( " Save " ))
], page_link_to ( 'news_comments' ) . '&nid=' . $news [ 'ID' ]);
2012-12-10 09:49:23 +01:00
} else {
2013-11-28 23:21:25 +01:00
$html .= _ ( " Invalid request. " );
2012-12-10 09:49:23 +01:00
}
2016-09-29 10:53:17 +02:00
2014-08-22 22:34:13 +02:00
return $html . '</div>' ;
2011-06-03 05:12:50 +02:00
}
2011-06-02 01:45:46 +02:00
2011-06-03 05:12:50 +02:00
function user_news () {
2012-12-10 09:49:23 +01:00
global $DISPLAY_NEWS , $privileges , $user ;
2016-09-29 10:53:17 +02:00
2014-09-08 14:45:41 +02:00
$html = '<div class="col-md-12"><h1>' . news_title () . '</h1>' . msg ();
2016-09-29 10:53:17 +02:00
2014-08-22 22:34:13 +02:00
if ( isset ( $_POST [ " text " ]) && isset ( $_POST [ " betreff " ]) && in_array ( " admin_news " , $privileges )) {
2016-09-29 10:53:17 +02:00
if ( ! isset ( $_POST [ " treffen " ]) || ! in_array ( " admin_news " , $privileges )) {
2012-12-10 09:49:23 +01:00
$_POST [ " treffen " ] = 0 ;
2016-09-29 10:53:17 +02:00
}
2014-08-22 22:34:13 +02:00
sql_query ( " INSERT INTO `News` (`Datum`, `Betreff`, `Text`, `UID`, `Treffen`) " . " VALUES (' " . sql_escape ( time ()) . " ', ' " . sql_escape ( $_POST [ " betreff " ]) . " ', ' " . sql_escape ( $_POST [ " text " ]) . " ', ' " . sql_escape ( $user [ 'UID' ]) . " ', ' " . sql_escape ( $_POST [ " treffen " ]) . " '); " );
2012-12-26 19:53:27 +01:00
engelsystem_log ( " Created news: " . $_POST [ " betreff " ] . " , treffen: " . $_POST [ " treffen " ]);
2013-11-25 21:04:58 +01:00
success ( _ ( " Entry saved. " ));
2014-05-13 14:44:04 +02:00
redirect ( page_link_to ( 'news' ));
2012-12-10 09:49:23 +01:00
}
2016-09-29 10:53:17 +02:00
if ( isset ( $_REQUEST [ 'page' ]) && preg_match ( " /^[0-9] { 1,} $ / " , $_REQUEST [ 'page' ])) {
2012-12-10 09:49:23 +01:00
$page = $_REQUEST [ 'page' ];
2016-09-29 10:53:17 +02:00
} else {
2012-12-10 09:49:23 +01:00
$page = 0 ;
2016-09-29 10:53:17 +02:00
}
2014-12-26 18:39:16 +01:00
$news = sql_select ( " SELECT * FROM `News` ORDER BY `Datum` DESC LIMIT " . sql_escape ( $page * $DISPLAY_NEWS ) . " , " . sql_escape ( $DISPLAY_NEWS ));
2016-09-29 10:53:17 +02:00
foreach ( $news as $entry ) {
2012-12-10 09:49:23 +01:00
$html .= display_news ( $entry );
2016-09-29 10:53:17 +02:00
}
2012-12-10 09:49:23 +01:00
$dis_rows = ceil ( sql_num_query ( " SELECT * FROM `News` " ) / $DISPLAY_NEWS );
2014-08-22 22:34:13 +02:00
$html .= '<div class="text-center">' . '<ul class="pagination">' ;
for ( $i = 0 ; $i < $dis_rows ; $i ++ ) {
2016-09-29 10:53:17 +02:00
if ( isset ( $_REQUEST [ 'page' ]) && $i == $_REQUEST [ 'page' ]) {
2014-08-22 22:34:13 +02:00
$html .= '<li class="active">' ;
2016-09-29 10:53:17 +02:00
} elseif ( ! isset ( $_REQUEST [ 'page' ]) && $i == 0 ) {
2014-08-22 22:34:13 +02:00
$html .= '<li class="active">' ;
2016-09-29 10:53:17 +02:00
} else {
2014-08-22 22:34:13 +02:00
$html .= '<li>' ;
2016-09-29 10:53:17 +02:00
}
2014-08-22 22:34:13 +02:00
$html .= '<a href="' . page_link_to ( " news " ) . '&page=' . $i . '">' . ( $i + 1 ) . '</a></li>' ;
2012-12-10 09:49:23 +01:00
}
2014-08-22 22:34:13 +02:00
$html .= '</ul></div>' ;
2016-09-29 10:53:17 +02:00
2012-12-10 09:49:23 +01:00
if ( in_array ( " admin_news " , $privileges )) {
2014-08-22 22:34:13 +02:00
$html .= '<hr />' ;
$html .= '<h2>' . _ ( " Create news: " ) . '</h2>' ;
2016-09-29 10:53:17 +02:00
$html .= form ([
2014-08-22 22:34:13 +02:00
form_text ( 'betreff' , _ ( " Subject " ), '' ),
form_textarea ( 'text' , _ ( " Message " ), '' ),
form_checkbox ( 'treffen' , _ ( " Meeting " ), false , 1 ),
2016-09-29 10:53:17 +02:00
form_submit ( 'submit' , _ ( " Save " ))
]);
2012-12-10 09:49:23 +01:00
}
2014-08-22 22:34:13 +02:00
return $html . '</div>' ;
2011-06-02 01:45:46 +02:00
}
2014-12-06 17:42:29 +01:00
?>