80 lines
980 B
C++
Executable File
80 lines
980 B
C++
Executable File
/*
|
|
* This file is a part of CMSLU -- Content Management System like Unix
|
|
* and is not publicly distributed
|
|
*
|
|
* Copyright (c) 2008, Tomasz Sowa
|
|
* All rights reserved.
|
|
*
|
|
*/
|
|
|
|
#include "templates.h"
|
|
|
|
|
|
namespace TemplatesFunctions
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
void doc_language(Info & i)
|
|
{
|
|
// at the moment only Polish language
|
|
i.out << "pl";
|
|
}
|
|
|
|
|
|
|
|
void doc_title(Info & i)
|
|
{
|
|
size_t a = 0;
|
|
|
|
// from 1 means skipping the root directory
|
|
for(a = 1 ; a<request.dir_table.size() ; ++a)
|
|
i.out << " / " << request.dir_table[a]->url;
|
|
|
|
if( request.is_item )
|
|
i.out << " / " << request.item.subject;
|
|
}
|
|
|
|
|
|
|
|
void doc_charset(Info & i)
|
|
{
|
|
i.out << "iso-8859-2";
|
|
}
|
|
|
|
|
|
|
|
|
|
void doc_base_url(Info & i)
|
|
{
|
|
i.out << data.base_url;
|
|
}
|
|
|
|
|
|
|
|
void doc_current_url(Info & i)
|
|
{
|
|
i.out << request.env_request_uri;
|
|
}
|
|
|
|
|
|
|
|
void doc_status_error(Info & i)
|
|
{
|
|
i.result = request.status != Error::ok;
|
|
}
|
|
|
|
|
|
void doc_status_code(Info & i)
|
|
{
|
|
i.out << static_cast<int>( request.status );
|
|
}
|
|
|
|
|
|
|
|
} // namespace TemplatesFunctions
|
|
|
|
|