本文整理汇总了C++中WApplication::bookmarkUrl方法的典型用法代码示例。如果您正苦于以下问题:C++ WApplication::bookmarkUrl方法的具体用法?C++ WApplication::bookmarkUrl怎么用?C++ WApplication::bookmarkUrl使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WApplication
的用法示例。
在下文中一共展示了WApplication::bookmarkUrl方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: WtHome
WApplication *createWtHomeApplication(const WEnvironment& env)
{
// support for old (< Wt-2.2) homepage URLS: redirect from "states"
// to "internal paths"
// this contains the initial "history state" in old Wt versions
const std::string *historyKey = env.getParameter("historyKey");
if (historyKey) {
const char *mainStr[]
= { "main:0", "/",
"main:1", "/news",
"main:2", "/features",
"main:4", "/examples",
"main:3", "/documentation",
"main:5", "/download",
"main:6", "/community" };
const char *exampleStr[]
= { "example:0", "/examples",
"example:1", "/examples/charts",
"example:2", "/examples/wt-homepage",
"example:3", "/examples/treelist",
"example:4", "/examples/hangman",
"example:5", "/examples/chat",
"example:6", "/examples/mail-composer",
"example:7", "/examples/drag-and-drop",
"example:8", "/examples/file-explorer",
"example:9", "/examples/calendar" };
if (historyKey->find("main:4") != std::string::npos) {
for (unsigned i = 0; i < 10; ++i)
if (historyKey->find(exampleStr[i*2]) != std::string::npos) {
WApplication *app = new WApplication(env);
app->log("notice") << "redirecting old style URL '"
<< *historyKey << "' to internal path: '"
<< exampleStr[i*2+1] << "'";
app->redirect(app->bookmarkUrl(exampleStr[i*2+1]));
app->quit();
return app;
}
} else
for (unsigned i = 0; i < 6; ++i)
if (historyKey->find(mainStr[i*2]) != std::string::npos) {
WApplication *app = new WApplication(env);
app->log("notice") << "redirecting old style URL '"
<< *historyKey << "' to internal path: '"
<< mainStr[i*2+1] << "'";
app->redirect(app->bookmarkUrl(mainStr[i*2+1]));
app->quit();
return app;
}
// unknown history key, just continue
}
return new WtHome(env);
}
示例2: sendConfirmMail
void WsNewsLetter::sendConfirmMail(const std::string& email,
const std::string& userToken) const
{
std::string url = "/newsletter/subscribe/";
WApplication *app = WApplication::instance();
url = app->makeAbsoluteUrl(app->bookmarkUrl(url)) + userToken;
Mail::Message message;
message.addRecipient(Mail::To, Mail::Mailbox(email));
message.setSubject(WString::tr("subject"));
message.setBody(WString::tr("body").arg(email).arg(url));
message.addHtmlBody(WString::tr("htmlbody").arg(email).arg(url));
sendMail(message);
}
示例3: sendConfirmMail
void AuthService::sendConfirmMail(const std::string& address,
const User& user, const std::string& token) const
{
Mail::Message message;
WApplication *app = WApplication::instance();
std::string url
= app->makeAbsoluteUrl(app->bookmarkUrl(redirectInternalPath_)) + token ;
message.addRecipient(Mail::To, Mail::Mailbox(address));
message.setSubject(WString::tr("Wt.Auth.confirmmail.subject"));
message.setBody(WString::tr("Wt.Auth.confirmmail.body")
.arg(user.identity(Identity::LoginName))
.arg(token).arg(url));
message.addHtmlBody(WString::tr("Wt.Auth.confirmmail.htmlbody")
.arg(user.identity(Identity::LoginName))
.arg(token).arg(url));
sendMail(message);
}
示例4: createRedirectUrl
std::string AuthService::createRedirectUrl(const std::string& token) const
{
WApplication *app = WApplication::instance();
return app->makeAbsoluteUrl(app->bookmarkUrl(redirectInternalPath_)) + token;
}