winix/templates/doc.cpp

90 lines
1.1 KiB
C++
Executable File

/*
* This file is a part of Winix
* and is not publicly distributed
*
* Copyright (c) 2008-2010, Tomasz Sowa
* All rights reserved.
*
*/
#include "templates.h"
#include "../core/request.h"
#include "../core/misc.h"
namespace TemplatesFunctions
{
void doc_title(Info & i)
{
size_t a;
bool was_dir = false;
// from 1 means skipping the root directory
for(a = 1 ; a<request->dir_tab.size() ; ++a)
{
HtmlEscape(i.out, request->dir_tab[a]->subject);
was_dir = true;
if( a < request->dir_tab.size()-1 )
i.out << config->title_separator;
}
if( request->is_item )
{
if( was_dir )
i.out << config->title_separator;
HtmlEscape(i.out, request->item.subject);
}
}
void doc_base_url(Info & i)
{
i.out << config->base_url;
}
void doc_base_url_auth(Info & i)
{
i.out << config->base_url_auth;
}
void doc_base_url_static(Info & i)
{
i.out << config->base_url_static;
}
void doc_base_url_common(Info & i)
{
i.out << config->base_url_common;
}
void doc_current_url(Info & i)
{
i.out << request->env_request_uri;
}
} // namespace TemplatesFunctions