本文整理汇总了PHP中DataManager::getPostsByChannel方法的典型用法代码示例。如果您正苦于以下问题:PHP DataManager::getPostsByChannel方法的具体用法?PHP DataManager::getPostsByChannel怎么用?PHP DataManager::getPostsByChannel使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DataManager
的用法示例。
在下文中一共展示了DataManager::getPostsByChannel方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: header
<?php
require_once '../inc/bootstrap.php';
if (!AuthenticationManager::isAuthenticated()) {
header("HTTP/1.1 403 Forbidden");
echo "Access not allowed for anonymous users.";
exit;
}
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
Controller::getInstance()->invokePostAction();
} else {
$channelId = isset($_GET['channelId']) ? Util::escape($_GET['channelId']) : null;
$lastSeenPost = isset($_GET['lastSeenPost']) ? Util::escape($_GET['lastSeenPost']) : null;
if ($channelId == null) {
exit;
}
$data = DataManager::getPostsByChannel($channelId, $lastSeenPost);
if ($data != null) {
header('Content-Type: application/json', true, 200);
echo json_encode($data);
} else {
header("HTTP/1.1 204 No Content");
}
}
示例2: isset
</div>
<div class = "panel panel-primary" name = "<?php
DataManager::getChannelByName($_SESSION['channel']);
?>
">
<div class = "panel-heading">
<h4 class="channelName"><?php
echo isset($_SESSION['channel']) && $_SESSION['channel'] ? $_SESSION['channel'] : "Default";
?>
</h4></div>
<div class = "panel-body panel-height">
<ul class = "media-list messageContainer">
<?php
$channel = DataManager::getChannelByName($_SESSION['channel']);
$messages = DataManager::getPostsByChannel($channel->getID());
//Util::stable_uasort($messages, 'Util::MessageCmp');
foreach ($messages as $message) {
$author = DataManager::getUserById($message->getAuthor());
$status = DataManager::getPostStatus($message->getId());
if ($status != Status::PRIOR && $status != Status::DELETED) {
Viewtility::viewMessage($message, $status);
}
/*
if ($currUser) {
if ($status == Status::UNREAD && $author->getUsername() != $currUser->getUsername()) {
DataManager::changePostStatus($message->getID(), Status::READ);
$message->setRead();
}
}
*/
示例3: invokePostAction
//.........这里部分代码省略.........
if ($user->getUsername() === $_REQUEST[self::USR_NAME]) {
$this->forwardRequest(['The username ' . $_REQUEST[self::USR_NAME] . ' is already used!'], 'index.php?view=registration');
}
}
$user = DataManager::getUserByUsername($_REQUEST[self::USR_NAME]);
$userId = null;
if ($user) {
$userId = $user->getID();
} else {
$userId = DataManager::saveNewUser($_REQUEST[self::USR_FIRST_NAME], $_REQUEST[self::USR_LAST_NAME], $_REQUEST[self::USR_NAME], AuthenticationManager::getHash($_REQUEST[self::USR_NAME], $_REQUEST[self::USR_PASSWORD]));
}
DataManager::registrateUser($userId, $channel->getID());
}
if (!AuthenticationManager::authenticate($_REQUEST[self::USR_NAME], $_REQUEST[self::USR_PASSWORD])) {
$this->forwardRequest(['Invalid user information provided'], "index.php?view=registration");
}
$_SESSION[self::USR_CHANNELS] = $_REQUEST[self::USR_CHANNELS];
// first channel should be selected as default channel
$_SESSION['channel'] = $channels[0];
Util::redirect();
break;
case self::POST_MSG:
$channel = DataManager::getChannelByName($_SESSION['channel']);
$user = AuthenticationManager::getAuthenticatedUser();
$messages = DataManager::getAllUnansweredPosts($channel->getID());
//TODO: mark message as answered
foreach ($messages as $message) {
if ($message->getAuthor() != $user->getID()) {
DataManager::changePostStatus($message->getID(), Status::ANSWERED);
}
}
DataManager::publishMessage($user->getID(), $channel->getID(), $_REQUEST[self::POST_TITLE], $_REQUEST[self::POST_CONTENT], Status::UNREAD);
break;
case self::ACTION_CHANGE_CHANNEL:
//print_r($_REQUEST);
$_SESSION['channel'] = $_REQUEST['selectedChannel'];
Util::redirect();
break;
case self::ACTION_JOIN_CHANNEL:
$channel = DataManager::getChannelByName($_REQUEST[self::USR_CHANNEL]);
$registratedUsers = DataManager::getUsersByChannelId($channel->getID());
foreach ($registratedUsers as $user) {
if ($user->getUsername() === $_REQUEST[self::USR_NAME]) {
$this->forwardRequest(['User ' . $_REQUEST[self::USR_NAME] . ' is already registered!'], "index.php?view=join");
}
}
$user = DataManager::getUserByUsername($_REQUEST[self::USR_NAME]);
if (!$user) {
$this->forwardRequest(['Please registrate, the user ' . $_REQUEST[self::USR_NAME] . ' does not exists!'], "index.php?view=register");
}
DataManager::registrateUser($user->getID(), $channel->getID());
if (!AuthenticationManager::authenticate($_REQUEST[self::USR_NAME], $_REQUEST[self::USR_PASSWORD], $_REQUEST[self::USR_CHANNEL])) {
$this->forwardRequest(['Invalid user information provided'], "index.php?view=registration");
}
$_SESSION[self::USR_CHANNEL] = $_REQUEST[self::USR_CHANNEL];
Util::redirect();
break;
case self::AJAX_SET_PRIO:
if (isset($_POST) && $_POST) {
DataManager::changePostStatus($_POST['id'], Status::PRIOR);
echo "index.php?view=welcome";
}
break;
case self::AJAX_RESET_PRIO:
if (isset($_POST) && $_POST) {
DataManager::changePostStatus($_POST['id'], Status::READ);
echo "index.php?view=welcome";
}
break;
case self::AJAX_DELETE_MESSAGE:
if (isset($_POST) && $_POST) {
DataManager::changePostStatus($_POST['id'], Status::DELETED);
echo "index.php?view=welcome";
}
break;
case self::AJAX_UPDATE_CHAT:
$currUserId = isset($_SESSION['username']) ? $_SESSION['username'] : null;
$channel = isset($_SESSION['channel']) ? $_SESSION['channel'] : null;
if ($currUserId && $channel) {
$unreadPosts = DataManager::getAllUnreadPostsByUserId($currUserId);
foreach ($unreadPosts as $post) {
if ($post->getAuthor() != $currUserId) {
DataManager::changePostStatus($post->getId(), Status::READ);
}
}
}
if (isset($_POST) && $_POST) {
$channel = DataManager::getChannelByName($_REQUEST['channel']);
$messages = DataManager::getPostsByChannel($channel->getID());
$return = "";
foreach ($messages as $message) {
if ($message->exists()) {
$return .= Viewtility::viewMessage($message, DataManager::getPostStatus($message->getId()));
}
}
echo $return;
}
break;
}
}