changed: added Cur structure

we have there two pointers: 
 Request * request;
 Session * session;
these are the current request and the current session


the session GC was moved to SessionManager (was in SessionContainer)



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@708 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
2011-01-23 14:15:30 +00:00
parent 61ac29b2de
commit 915cabdf97
171 changed files with 2822 additions and 2650 deletions

View File

@@ -45,7 +45,7 @@ bool Upload::HasAccess(const Item & item)
return false;
}
if( request->session->puser && request->session->puser->super_user )
if( cur->session->puser && cur->session->puser->super_user )
// super user can use upload everywhere
return true;
@@ -58,7 +58,7 @@ return true;
bool Upload::HasAccess()
{
if( request->is_item || !HasAccess(*request->dir_tab.back()) )
if( cur->request->is_item || !HasAccess(*cur->request->dir_tab.back()) )
return false;
return true;
@@ -71,7 +71,7 @@ bool Upload::UploadSaveStaticFile(const Item & item, const std::wstring & tmp_fi
{
if( !system->MakeFilePath(item, path, false, true, config->upload_dirs_chmod) )
{
request->status = WINIX_ERR_PERMISSION_DENIED;
cur->request->status = WINIX_ERR_PERMISSION_DENIED;
return false;
}
@@ -83,7 +83,7 @@ bool Upload::UploadSaveStaticFile(const Item & item, const std::wstring & tmp_fi
else
{
log << log1 << "Upload: can't move the tmp file from: " << tmp_filename << ", to: " << path << logend;
request->status = WINIX_ERR_PERMISSION_DENIED;
cur->request->status = WINIX_ERR_PERMISSION_DENIED;
return false;
}
}
@@ -92,15 +92,15 @@ bool Upload::UploadSaveStaticFile(const Item & item, const std::wstring & tmp_fi
void Upload::UploadFile(Item & item, const std::wstring & tmp_filename)
{
// we should add the file beforehand to get the proper item.id
request->status = system->AddFile(item);
cur->request->status = system->AddFile(item);
if( request->status == WINIX_ERR_OK )
if( cur->request->status == WINIX_ERR_OK )
{
if( system->CreateNewFile(item) )
{
if( UploadSaveStaticFile(item, tmp_filename) )
{
request->status = db->EditFileById(item, item.id);
cur->request->status = db->EditFileById(item, item.id);
if( item.file_type == WINIX_ITEM_FILETYPE_IMAGE && config->create_thumb )
system->thumb.CreateThumb(item, config->thumb_cx, config->thumb_cy, config->thumb_mode);
@@ -118,15 +118,15 @@ bool Upload::FunUploadCheckAbuse()
{
if( !system->rebus.CheckRebus() )
{
request->status = WINIX_ERR_INCORRECT_REBUS;
cur->request->status = WINIX_ERR_INCORRECT_REBUS;
return false;
}
functions->CheckGetPostTimes(4);
if( request->session->spam_score > 0 )
if( cur->session->spam_score > 0 )
{
request->status = WINIX_ERR_SPAM;
cur->request->status = WINIX_ERR_SPAM;
log << log1 << "Content: ignoring due to suspected spamming" << logend;
return false;
}
@@ -140,24 +140,24 @@ return true;
void Upload::UploadMulti()
{
request->item.Clear(); // clearing and setting date
request->item.parent_id = request->dir_tab.back()->id;
request->item.type = Item::file;
request->item.privileges = 0644; // !! tymczasowo
functions->SetUser(request->item);
cur->request->item.Clear(); // clearing and setting date
cur->request->item.parent_id = cur->request->dir_tab.back()->id;
cur->request->item.type = Item::file;
cur->request->item.privileges = 0644; // !! tymczasowo
functions->SetUser(cur->request->item);
PostFileTab::iterator i = request->post_file_tab.begin();
PostFileTab::iterator i = cur->request->post_file_tab.begin();
for( ; i != request->post_file_tab.end() ; ++i)
for( ; i != cur->request->post_file_tab.end() ; ++i)
{
const wchar_t * file_name = i->second.filename.c_str();
request->item.subject = file_name;
request->item.url = file_name;
request->item.file_type = SelectFileType(file_name);
cur->request->item.subject = file_name;
cur->request->item.url = file_name;
cur->request->item.file_type = SelectFileType(file_name);
functions->PrepareUrl(request->item);
UploadFile(request->item, i->second.tmp_filename);
functions->PrepareUrl(cur->request->item);
UploadFile(cur->request->item, i->second.tmp_filename);
}
system->RedirectToLastDir();
@@ -166,31 +166,31 @@ void Upload::UploadMulti()
void Upload::UploadSingle()
{
const std::wstring & new_subject = request->PostVar(L"subject");
const std::wstring & new_url = request->PostVar(L"url");
const std::wstring & new_subject = cur->request->PostVar(L"subject");
const std::wstring & new_url = cur->request->PostVar(L"url");
bool has_subject = !new_subject.empty();
bool has_url = !new_url.empty();
functions->ReadItem(request->item, Item::file); // ReadItem() changes the url if it is empty
functions->SetUser(request->item);
request->item.privileges = 0644; // !! tymczasowo
functions->ReadItem(cur->request->item, Item::file); // ReadItem() changes the url if it is empty
functions->SetUser(cur->request->item);
cur->request->item.privileges = 0644; // !! tymczasowo
const wchar_t * file_name = request->post_file_tab.begin()->second.filename.c_str();
request->item.file_type = SelectFileType(file_name);
const wchar_t * file_name = cur->request->post_file_tab.begin()->second.filename.c_str();
cur->request->item.file_type = SelectFileType(file_name);
if( !has_subject )
request->item.subject = file_name;
cur->request->item.subject = file_name;
if( !has_url )
{
request->item.url = file_name;
functions->PrepareUrl(request->item);
cur->request->item.url = file_name;
functions->PrepareUrl(cur->request->item);
}
UploadFile(request->item, request->post_file_tab.begin()->second.tmp_filename);
UploadFile(cur->request->item, cur->request->post_file_tab.begin()->second.tmp_filename);
if( request->status == WINIX_ERR_OK )
system->RedirectTo(request->item, L"/cat");
if( cur->request->status == WINIX_ERR_OK )
system->RedirectTo(cur->request->item, L"/cat");
}
@@ -198,16 +198,16 @@ void Upload::UploadSingle()
// !! dodac usuwanie plikow statycznych przez rm
void Upload::MakePost()
{
if( request->post_file_tab.empty() )
if( cur->request->post_file_tab.empty() )
{
request->status = WINIX_ERR_PERMISSION_DENIED;
cur->request->status = WINIX_ERR_PERMISSION_DENIED;
return;
}
if( !FunUploadCheckAbuse() )
return;
if( request->post_file_tab.size() > 1 )
if( cur->request->post_file_tab.size() > 1 )
UploadMulti();
else
UploadSingle();