本文整理汇总了PHP中AJXP_Utils::slugify方法的典型用法代码示例。如果您正苦于以下问题:PHP AJXP_Utils::slugify方法的具体用法?PHP AJXP_Utils::slugify怎么用?PHP AJXP_Utils::slugify使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AJXP_Utils
的用法示例。
在下文中一共展示了AJXP_Utils::slugify方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: userTeamsActions
public function userTeamsActions($actionName, $httpVars, $fileVars)
{
switch ($actionName) {
case "user_team_create":
$userIds = $httpVars["user_ids"];
$teamLabel = $httpVars["team_label"];
$teamId = AJXP_Utils::slugify($teamLabel) . "-" . intval(rand(0, 1000));
foreach ($userIds as $userId) {
$this->addUserToTeam($teamId, $userId, $teamLabel);
}
echo 'Created Team $teamId';
break;
case "user_team_delete":
$this->removeUserFromTeam($httpVars["team_id"], null);
break;
case "user_team_add_user":
$this->addUserToTeam($httpVars["team_id"], $httpVars["user_id"], null);
break;
case "user_team_edit_users":
$this->editTeamUsers($httpVars["team_id"], $httpVars["users"], $httpVars["team_label"]);
break;
case "user_team_delete_user":
$this->removeUserFromTeam($httpVars["team_id"], $httpVars["user_id"]);
break;
}
}
示例2: setSlug
/**
* Use the slugify function to generate an alias from the label
* @param string $slug
* @return void
*/
public function setSlug($slug = null)
{
if ($slug == null) {
$this->slug = AJXP_Utils::slugify($this->display);
} else {
$this->slug = $slug;
}
}
示例3: initCacheWithNamespace
private function initCacheWithNamespace($namespace)
{
$cacheDriver = null;
$driverOptions = $this->getFilteredOption("DRIVER");
$cachePrefix = $this->getFilteredOption("CACHE_PREFIX");
if (!is_array($driverOptions) || !isset($driverOptions['driver'])) {
return null;
}
switch ($driverOptions['driver']) {
case "apc":
$cacheDriver = $this->_apc_init($driverOptions);
break;
case "memcache":
$cacheDriver = $this->_memcache_init($driverOptions);
break;
case "memcached":
$cacheDriver = $this->_memcached_init($driverOptions);
break;
case "redis":
$cacheDriver = $this->_redis_init($driverOptions);
break;
case "xcache":
$cacheDriver = $this->_xcache_init($driverOptions);
break;
default:
break;
}
if (empty($cacheDriver)) {
return null;
}
if (empty($cachePrefix)) {
$cachePrefix = AJXP_Utils::slugify(AJXP_Utils::detectServerURL(true));
}
$cachePrefix .= "_" . $namespace . "_";
$cacheDriver->setNamespace($cachePrefix);
return $cacheDriver;
}
示例4: userTeamsActions
public function userTeamsActions($actionName, $httpVars, $fileVars)
{
switch ($actionName) {
case "user_team_create":
$userIds = $httpVars["user_ids"];
$teamLabel = AJXP_Utils::sanitize($httpVars["team_label"], AJXP_SANITIZE_HTML_STRICT);
if (empty($teamLabel)) {
throw new Exception("Empty Team Label!");
}
if (empty($userIds)) {
throw new Exception("Please select some users for this team.");
}
$teamId = AJXP_Utils::slugify($teamLabel) . "-" . intval(rand(0, 1000));
foreach ($userIds as $userId) {
$id = AJXP_Utils::sanitize($userId, AJXP_SANITIZE_EMAILCHARS);
$this->addUserToTeam($teamId, $id, $teamLabel);
}
echo 'Created Team $teamId';
break;
case "user_team_delete":
$this->removeUserFromTeam($httpVars["team_id"], null);
break;
case "user_team_add_user":
$this->addUserToTeam($httpVars["team_id"], $httpVars["user_id"], null);
break;
case "user_team_edit_users":
$this->editTeamUsers($httpVars["team_id"], $httpVars["users"], $httpVars["team_label"]);
break;
case "user_team_delete_user":
$this->removeUserFromTeam($httpVars["team_id"], $httpVars["user_id"]);
break;
}
}
示例5: switchAction
public function switchAction($actionName, $httpVars, $fileVars)
{
$this->baseURL = rtrim($this->getFilteredOption("ETHERPAD_SERVER"), "/");
$this->apiKey = $this->getFilteredOption("ETHERPAD_APIKEY");
if (isset($httpVars["file"])) {
$repository = ConfService::getRepository();
if (!$repository->detectStreamWrapper(false)) {
return false;
}
$plugin = AJXP_PluginsService::findPlugin("access", $repository->getAccessType());
$streamData = $plugin->detectStreamWrapper(true);
$destStreamURL = $streamData["protocol"] . "://" . $repository->getId() . "/";
$filename = $destStreamURL . AJXP_Utils::securePath($httpVars["file"]);
if (!is_file($filename)) {
throw new Exception("Cannot find file!");
}
}
require_once "etherpad-client/etherpad-lite-client.php";
$client = new EtherpadLiteClient($this->apiKey, $this->baseURL . "/api");
$userName = AuthService::getLoggedUser()->getId();
$res = $client->createAuthorIfNotExistsFor($userName, $userName);
$authorID = $res->authorID;
$res2 = $client->createGroupIfNotExistsFor("ajaxplorer");
$groupID = $res2->groupID;
if ($actionName == "etherpad_create") {
if (isset($httpVars["pad_name"])) {
$padID = $httpVars["pad_name"];
$startContent = "";
if ($httpVars["pad_type"] && $httpVars["pad_type"] == 'free') {
$padID = "FREEPAD__" . $padID;
}
} else {
if (isset($httpVars["file"])) {
$startContent = file_get_contents($filename);
if (strtolower(pathinfo($filename, PATHINFO_EXTENSION)) == "html") {
$startContentHTML = $startContent;
}
$padID = AJXP_Utils::slugify($httpVars["file"]);
}
}
$resP = $client->listPads($res2->groupID);
$pads = $resP->padIDs;
if (!in_array($groupID . '$' . $padID, $pads)) {
$res3 = $client->createGroupPad($groupID, $padID, null);
if (isset($startContentHTML)) {
$client->setHTML($groupID . '$' . $padID, $startContentHTML);
} else {
if (!empty($startContent)) {
$client->setText($groupID . '$' . $padID, $startContent);
}
}
} else {
// Check if content needs relaunch!
$test = $client->getText($groupID . '$' . $padID);
if (!empty($startContent) && $test->text != $startContent) {
if (isset($startContentHTML)) {
$client->setHTML($groupID . '$' . $padID, $startContentHTML);
} else {
$client->setText($groupID . '$' . $padID, $startContent);
}
}
}
$res4 = $client->createSession($groupID, $authorID, time() + 14400);
$sessionID = $res4->sessionID;
setcookie('sessionID', $sessionID, null, "/");
$padID = $groupID . '$' . $padID;
$data = array("url" => $this->baseURL . "/p/" . $padID, "padID" => $padID, "sessionID" => $sessionID);
HTMLWriter::charsetHeader('application/json');
echo json_encode($data);
} else {
if ($actionName == "etherpad_save") {
$node = new AJXP_Node($filename);
$padID = $httpVars["pad_id"];
if (isset($startContentHTML)) {
$res = $client->getHTML($padID);
} else {
$res = $client->getText($padID);
}
AJXP_Controller::applyHook("node.before_change", array($node, strlen($res->text)));
file_put_contents($filename, $res->text);
AJXP_Controller::applyHook("node.change", array($node, $node));
} else {
if ($actionName == "etherpad_close") {
// WE SHOULD DETECT IF THERE IS NOBODY CONNECTED ANYMORE, AND DELETE THE PAD.
$sessionID = $httpVars["session_id"];
$client->deleteSession($sessionID);
} else {
if ($actionName == "etherpad_proxy_api") {
if ($httpVars["api_action"] == "list_pads") {
$res = $client->listPads($groupID);
} else {
if ($httpVars["api_action"] == "list_authors_for_pad") {
$res = $client->listAuthorsOfPad($httpVars["pad_id"]);
}
}
HTMLWriter::charsetHeader("application/json");
echo json_encode($res);
}
}
}
//.........这里部分代码省略.........