isRegistered() ) { $gBitSmarty->assign('msg', KernelTools::tra("You are not logged in")); $gBitSystem->display( 'error.tpl' , NULL, [ 'display_mode' => 'display' ]); die; } $gBitSystem->isPackageActive( 'messages', TRUE ); $gBitSystem->verifyPermission( 'p_messages_send' ); $messages = new Messages(); $max_records = $gBitSystem->getConfig( 'max_records', 20 ); // Mark messages if the mark button was pressed if (isset($_REQUEST["mark"]) && isset($_REQUEST["msg"])) { foreach( array_keys( $_REQUEST["msg"] ) as $msg_id ) { $parts = explode( '_', $_REQUEST['action'] ); $flagHash = [ 'msg_id' => $msg_id, 'act' => "$parts[0]_$parts[1]", 'actval' => $parts[2], ]; $messages->flagMessage( $flagHash ); } } // Delete messages if the delete button was pressed if( !empty( $_REQUEST["delete"] ) && !empty( $_REQUEST["msg"] ) ) { foreach( array_keys( $_REQUEST["msg"] ) as $msg_id ) { $messages->expungeMessage( $gBitUser->mUserId, $msg_id ); } } if( !empty( $_REQUEST['filter'] ) ) { if( $_REQUEST['flags'] != '' ) { $parts = explode('_', $_REQUEST['flags']); $_REQUEST['flag'] = substr( $_REQUEST['flags'], 0, strrpos( $_REQUEST['flags'], '_' ) ); $_REQUEST['flagval'] = substr( $_REQUEST['flags'], strrpos( $_REQUEST['flags'], '_' ) + 1 ); } } $_REQUEST['sort_mode'] = ( empty( $_REQUEST["sort_mode"] ) ) ? 'msg_date_desc' : $_REQUEST["sort_mode"]; $find = ( isset( $_REQUEST["find"] ) ) ? $_REQUEST["find"] : ''; $listHash = $_REQUEST; $items = $messages->getList( $listHash ); $gBitSmarty->assign( 'items', $items ); $gBitSmarty->assign( 'listInfo', $listHash['listInfo'] ); $gBitSystem->display( 'bitpackage:messages/mailbox.tpl', 'Message box' , [ 'display_mode' => 'display' ]);