本文整理汇总了C++中Webserver_Request::database_styles方法的典型用法代码示例。如果您正苦于以下问题:C++ Webserver_Request::database_styles方法的具体用法?C++ Webserver_Request::database_styles怎么用?C++ Webserver_Request::database_styles使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Webserver_Request
的用法示例。
在下文中一共展示了Webserver_Request::database_styles方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: stylesheet
void Editor_Export::stylesheet (string stylesheet)
{
Webserver_Request * request = (Webserver_Request *) webserver_request;
styles.clear ();
noteOpeners.clear ();
characterStyles.clear ();
vector <string> markers = request->database_styles()->getMarkers (stylesheet);
// Load the style information into the object.
for (string & marker : markers) {
Database_Styles_Item style = request->database_styles()->getMarkerData (stylesheet, marker);
styles [marker] = style;
// Get markers with should not have endmarkers.
bool suppress = false;
int type = style.type;
int subtype = style.subtype;
if (type == StyleTypeVerseNumber) suppress = true;
if (type == StyleTypeFootEndNote) {
suppress = true;
if (subtype == FootEndNoteSubtypeFootnote) noteOpeners.insert (marker);
if (subtype == FootEndNoteSubtypeEndnote) noteOpeners.insert (marker);
if (subtype == FootEndNoteSubtypeContentWithEndmarker) suppress = false;
if (subtype == FootEndNoteSubtypeParagraph) suppress = false;
}
if (type == StyleTypeCrossreference) {
suppress = true;
if (subtype == CrossreferenceSubtypeCrossreference) noteOpeners.insert (marker);
if (subtype == CrossreferenceSubtypeContentWithEndmarker) suppress = false;
}
if (type == StyleTypeTableElement) suppress = true;
if (suppress) suppressEndMarkers.insert (marker);
}
}
示例2: generate
// Generates the CSS.
void Styles_Css::generate ()
{
code.push_back (".superscript { font-size: x-small; vertical-align: super; }");
if (exports_enabled) {
add_exports_styles ();
}
if (editor_enabled) {
add_editor_styles ();
}
Webserver_Request * request = (Webserver_Request *) webserver_request;
vector <string> markers = request->database_styles ()->getMarkers (stylesheet);
for (auto & marker : markers) {
Database_Styles_Item style = request->database_styles ()->getMarkerData (stylesheet, marker);
evaluate (&style);
}
}
示例3: demo_clean_data
// Cleans and resets the data in the Bibledit installation.
void demo_clean_data ()
{
Database_Logs::log ("Cleaning up the demo data");
Webserver_Request request;
// Set user to the demo credentials (admin) as this is the user who is always logged-in in a demo installation.
request.session_logic ()->setUsername (session_admin_credentials ());
// Delete empty stylesheet that may have been there.
request.database_styles()->revokeWriteAccess ("", styles_logic_standard_sheet ());
request.database_styles()->deleteSheet ("");
styles_sheets_create_all ();
// Set the export stylesheet to "Standard" for all Bibles and the admin.
vector <string> bibles = request.database_bibles()->getBibles ();
for (auto & bible : bibles) {
Database_Config_Bible::setExportStylesheet (bible, styles_logic_standard_sheet ());
}
request.database_config_user()->setStylesheet (styles_logic_standard_sheet ());
// Set the site language to "Default"
Database_Config_General::setSiteLanguage ("");
// Ensure the default users are there.
map <string, int> users = {
make_pair ("guest", Filter_Roles::guest ()),
make_pair ("member", Filter_Roles::member ()),
make_pair ("consultant", Filter_Roles::consultant ()),
make_pair ("translator", Filter_Roles::translator ()),
make_pair ("manager", Filter_Roles::manager ()),
make_pair (session_admin_credentials (), Filter_Roles::admin ())
};
for (auto & element : users) {
if (!request.database_users ()->usernameExists (element.first)) {
request.database_users ()->addNewUser(element.first, element.first, element.second, "");
}
request.database_users ()->updateUserLevel (element.first, element.second);
}
// Create / update sample Bible.
demo_create_sample_bible ();
// Create sample notes.
demo_create_sample_notes (&request);
// Create samples for the workbenches.
demo_create_sample_workbenches (&request);
// Set navigator to John 3:16.
Ipc_Focus::set (&request, 43, 3, 16);
// Set and/or trim resources to display.
// Too many resources crash the demo: Limit the amount.
vector <string> resources = request.database_config_user()->getActiveResources ();
bool reset_resources = false;
if (resources.size () > 25) reset_resources = true;
vector <string> defaults = demo_logic_default_resources ();
for (auto & name : defaults) {
if (!in_array (name, resources)) reset_resources = true;
}
if (reset_resources) {
resources = demo_logic_default_resources ();
request.database_config_user()->setActiveResources (resources);
}
// No flipped basic <> advanded mode.
request.database_config_user ()->setFlipInterfaceMode (false);
}