added: a new winix function: imgcrop

for cropping images (and thumbnails)
       www.domain.com/dir/file.jpg/imgcrop  -- crop an image
       www.domain.com/dir/file.jpg/imgcrop/thumb  -- crop an image's thumbnail
       www.domain.com/dir/file.jpg/imgcrop/newthumb  -- crop and create a new thumbnail (from an original image)
       www.domain.com/dir/imgcrop -- show images' list with above options
added: to Image class: some methods for cropping




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@919 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
Tomasz Sowa 2013-03-29 22:03:28 +00:00
parent 8d9a021eab
commit 495499d12f
27 changed files with 1374 additions and 793 deletions

View File

@ -34,13 +34,13 @@ app.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
app.o: ../functions/privchanger.h ../functions/chown.h
app.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
app.o: ../functions/download.h ../functions/emacs.h ../functions/env.h
app.o: ../functions/last.h ../functions/login.h ../functions/logout.h
app.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
app.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
app.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
app.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h
app.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h
app.o: ../functions/specialdefault.h ../functions/stat.h
app.o: ../functions/imgcrop.h ../functions/last.h ../functions/login.h
app.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
app.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
app.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
app.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
app.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
app.o: ../functions/sort.h ../functions/specialdefault.h ../functions/stat.h
app.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h
app.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h
app.o: ../functions/who.h ../functions/vim.h ../core/htmlfilter.h
@ -100,14 +100,14 @@ config.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
config.o: ../functions/privchanger.h ../functions/chown.h
config.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
config.o: ../functions/download.h ../functions/emacs.h ../functions/env.h
config.o: ../functions/last.h ../functions/login.h ../functions/logout.h
config.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
config.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
config.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
config.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h
config.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h
config.o: ../functions/specialdefault.h ../functions/stat.h
config.o: ../functions/subject.h ../functions/template.h
config.o: ../functions/imgcrop.h ../functions/last.h ../functions/login.h
config.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
config.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
config.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
config.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
config.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
config.o: ../functions/sort.h ../functions/specialdefault.h
config.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
config.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
config.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
config.o: ../core/htmlfilter.h ../templates/templates.h
@ -215,20 +215,20 @@ image.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
image.o: ../functions/privchanger.h ../functions/chown.h
image.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
image.o: ../functions/download.h ../functions/emacs.h ../functions/env.h
image.o: ../functions/last.h ../functions/login.h ../functions/logout.h
image.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
image.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
image.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
image.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h
image.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h
image.o: ../functions/specialdefault.h ../functions/stat.h
image.o: ../functions/subject.h ../functions/template.h
image.o: ../functions/imgcrop.h ../functions/last.h ../functions/login.h
image.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
image.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
image.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
image.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
image.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
image.o: ../functions/sort.h ../functions/specialdefault.h
image.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
image.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
image.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
image.o: ../core/htmlfilter.h ../templates/templates.h
image.o: ../templates/patterncacher.h ../templates/indexpatterns.h
image.o: ../templates/patterns.h ../templates/changepatterns.h
image.o: ../templates/htmltextstream.h ../core/sessionmanager.h
image.o: ../templates/htmltextstream.h ../core/sessionmanager.h lock.h
ipbancontainer.o: ipbancontainer.h ipban.h log.h textstream.h
ipbancontainer.o: logmanipulators.h ../../pikotools/textstream/textstream.h
ipbancontainer.o: ../../pikotools/space/space.h ../../pikotools/date/date.h
@ -285,13 +285,13 @@ job.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
job.o: ../functions/privchanger.h ../functions/chown.h
job.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
job.o: ../functions/download.h ../functions/emacs.h ../functions/env.h
job.o: ../functions/last.h ../functions/login.h ../functions/logout.h
job.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
job.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
job.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
job.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h
job.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h
job.o: ../functions/specialdefault.h ../functions/stat.h
job.o: ../functions/imgcrop.h ../functions/last.h ../functions/login.h
job.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
job.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
job.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
job.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
job.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
job.o: ../functions/sort.h ../functions/specialdefault.h ../functions/stat.h
job.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h
job.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h
job.o: ../functions/who.h ../functions/vim.h ../core/htmlfilter.h
@ -433,14 +433,15 @@ mounts.o: ../functions/functionparser.h ../core/cur.h ../functions/adduser.h
mounts.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h
mounts.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h
mounts.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
mounts.o: ../functions/env.h ../functions/last.h ../functions/login.h
mounts.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
mounts.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
mounts.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
mounts.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
mounts.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
mounts.o: ../functions/sort.h ../functions/specialdefault.h
mounts.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
mounts.o: ../functions/env.h ../functions/imgcrop.h ../functions/last.h
mounts.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
mounts.o: ../functions/ls.h ../functions/man.h ../functions/meta.h
mounts.o: ../functions/mkdir.h ../functions/mv.h ../functions/nicedit.h
mounts.o: ../functions/node.h ../functions/passwd.h ../functions/priv.h
mounts.o: ../functions/pw.h ../functions/reload.h ../functions/rm.h
mounts.o: ../functions/rmuser.h ../functions/sort.h
mounts.o: ../functions/specialdefault.h ../functions/stat.h
mounts.o: ../functions/subject.h ../functions/template.h
mounts.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
mounts.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
mounts.o: ../core/htmlfilter.h ../templates/templates.h
@ -482,14 +483,14 @@ plugin.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
plugin.o: ../functions/privchanger.h ../functions/chown.h
plugin.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
plugin.o: ../functions/download.h ../functions/emacs.h ../functions/env.h
plugin.o: ../functions/last.h ../functions/login.h ../functions/logout.h
plugin.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
plugin.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
plugin.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
plugin.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h
plugin.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h
plugin.o: ../functions/specialdefault.h ../functions/stat.h
plugin.o: ../functions/subject.h ../functions/template.h
plugin.o: ../functions/imgcrop.h ../functions/last.h ../functions/login.h
plugin.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
plugin.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
plugin.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
plugin.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
plugin.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
plugin.o: ../functions/sort.h ../functions/specialdefault.h
plugin.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
plugin.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
plugin.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
plugin.o: ../core/htmlfilter.h ../templates/templates.h
@ -532,22 +533,22 @@ plugindata.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
plugindata.o: ../functions/privchanger.h ../functions/chown.h
plugindata.o: ../functions/ckeditor.h ../functions/cp.h
plugindata.o: ../functions/default.h ../functions/download.h
plugindata.o: ../functions/emacs.h ../functions/env.h ../functions/last.h
plugindata.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
plugindata.o: ../functions/ls.h ../functions/man.h ../functions/meta.h
plugindata.o: ../functions/mkdir.h ../functions/mv.h ../functions/nicedit.h
plugindata.o: ../functions/node.h ../functions/passwd.h ../functions/priv.h
plugindata.o: ../functions/pw.h ../functions/reload.h ../functions/rm.h
plugindata.o: ../functions/rmuser.h ../functions/sort.h
plugindata.o: ../functions/specialdefault.h ../functions/stat.h
plugindata.o: ../functions/subject.h ../functions/template.h
plugindata.o: ../functions/tinymce.h ../functions/uname.h
plugindata.o: ../functions/upload.h ../functions/uptime.h ../functions/who.h
plugindata.o: ../functions/vim.h ../core/htmlfilter.h
plugindata.o: ../templates/templates.h ../templates/patterncacher.h
plugindata.o: ../templates/indexpatterns.h ../templates/patterns.h
plugindata.o: ../templates/changepatterns.h ../templates/htmltextstream.h
plugindata.o: ../core/sessionmanager.h
plugindata.o: ../functions/emacs.h ../functions/env.h ../functions/imgcrop.h
plugindata.o: ../functions/last.h ../functions/login.h ../functions/logout.h
plugindata.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
plugindata.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
plugindata.o: ../functions/nicedit.h ../functions/node.h
plugindata.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
plugindata.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
plugindata.o: ../functions/sort.h ../functions/specialdefault.h
plugindata.o: ../functions/stat.h ../functions/subject.h
plugindata.o: ../functions/template.h ../functions/tinymce.h
plugindata.o: ../functions/uname.h ../functions/upload.h
plugindata.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
plugindata.o: ../core/htmlfilter.h ../templates/templates.h
plugindata.o: ../templates/patterncacher.h ../templates/indexpatterns.h
plugindata.o: ../templates/patterns.h ../templates/changepatterns.h
plugindata.o: ../templates/htmltextstream.h ../core/sessionmanager.h
postmultiparser.o: postmultiparser.h error.h requesttypes.h
postmultiparser.o: ../../pikotools/textstream/textstream.h
postmultiparser.o: ../../pikotools/space/space.h ../../pikotools/date/date.h
@ -610,14 +611,14 @@ request.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
request.o: ../functions/privchanger.h ../functions/chown.h
request.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
request.o: ../functions/download.h ../functions/emacs.h ../functions/env.h
request.o: ../functions/last.h ../functions/login.h ../functions/logout.h
request.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
request.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
request.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
request.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h
request.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h
request.o: ../functions/specialdefault.h ../functions/stat.h
request.o: ../functions/subject.h ../functions/template.h
request.o: ../functions/imgcrop.h ../functions/last.h ../functions/login.h
request.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
request.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
request.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
request.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
request.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
request.o: ../functions/sort.h ../functions/specialdefault.h
request.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
request.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
request.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
request.o: ../core/htmlfilter.h ../templates/templates.h
@ -702,7 +703,8 @@ sessionmanager.o: ../functions/chmod.h ../functions/privchanger.h
sessionmanager.o: ../functions/chown.h ../functions/ckeditor.h
sessionmanager.o: ../functions/cp.h ../functions/default.h
sessionmanager.o: ../functions/download.h ../functions/emacs.h
sessionmanager.o: ../functions/env.h ../functions/last.h ../functions/login.h
sessionmanager.o: ../functions/env.h ../functions/imgcrop.h
sessionmanager.o: ../functions/last.h ../functions/login.h
sessionmanager.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
sessionmanager.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
sessionmanager.o: ../functions/mv.h ../functions/nicedit.h
@ -784,14 +786,15 @@ system.o: ../functions/functionparser.h ../functions/adduser.h
system.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h
system.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h
system.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
system.o: ../functions/env.h ../functions/last.h ../functions/login.h
system.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
system.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
system.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
system.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
system.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
system.o: ../functions/sort.h ../functions/specialdefault.h
system.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
system.o: ../functions/env.h ../functions/imgcrop.h ../functions/last.h
system.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
system.o: ../functions/ls.h ../functions/man.h ../functions/meta.h
system.o: ../functions/mkdir.h ../functions/mv.h ../functions/nicedit.h
system.o: ../functions/node.h ../functions/passwd.h ../functions/priv.h
system.o: ../functions/pw.h ../functions/reload.h ../functions/rm.h
system.o: ../functions/rmuser.h ../functions/sort.h
system.o: ../functions/specialdefault.h ../functions/stat.h
system.o: ../functions/subject.h ../functions/template.h
system.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
system.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
system.o: plugin.h pluginmsg.h sessionmanager.h sessioncontainer.h
@ -867,14 +870,14 @@ users.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
users.o: ../functions/privchanger.h ../functions/chown.h
users.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
users.o: ../functions/download.h ../functions/emacs.h ../functions/env.h
users.o: ../functions/last.h ../functions/login.h ../functions/logout.h
users.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
users.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
users.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
users.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h
users.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h
users.o: ../functions/specialdefault.h ../functions/stat.h
users.o: ../functions/subject.h ../functions/template.h
users.o: ../functions/imgcrop.h ../functions/last.h ../functions/login.h
users.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
users.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
users.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
users.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
users.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
users.o: ../functions/sort.h ../functions/specialdefault.h
users.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
users.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
users.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
users.o: ../core/htmlfilter.h ../templates/templates.h

View File

@ -2,7 +2,7 @@
* This file is a part of Winix
* and is not publicly distributed
*
* Copyright (c) 2010-2012, Tomasz Sowa
* Copyright (c) 2010-2013, Tomasz Sowa
* All rights reserved.
*
*/
@ -13,6 +13,7 @@
#include "log.h"
#include "system.h"
#include "plugin.h"
#include "lock.h"
@ -35,11 +36,87 @@ void Image::SetSystem(System * psystem)
}
// first thread (objects locked)
void Image::Resize(const Item & item, size_t cx, size_t cy, int aspect_mode, int quality)
Image::Scale Image::GetImageScale(long dir_id)
{
Scale scale;
Mount * m = system->mounts.CalcMount(dir_id);
scale.cx = config->image_cx;
scale.cy = config->image_cy;
scale.aspect_mode = config->image_mode;
scale.quality = config->image_quality;
// reading width and height from the mount point (if exists)
int index = system->mounts.MountParImageSize();
if( m && m->param[index].defined && m->param[index].arg.size() == 2 )
{
scale.cx = Tol(m->param[index].arg[0]);
scale.cy = Tol(m->param[index].arg[1]);
}
// reading image mode from the mount point (if exists)
index = system->mounts.MountParImageMode();
if( m && m->param[index].defined && m->param[index].arg.size() == 1 )
scale.aspect_mode = Toi(m->param[index].arg[0]);
// reading image quality from the mount point (if exists)
index = system->mounts.MountParImageQuality();
if( m && m->param[index].defined && m->param[index].arg.size() == 1 )
scale.quality = Toi(m->param[index].arg[0]);
return scale;
}
// first thread (objects locked)
Image::Scale Image::GetThumbScale(long dir_id)
{
Scale scale;
Mount * m = system->mounts.CalcMount(dir_id);
scale.cx = config->thumb_cx;
scale.cy = config->thumb_cy;
scale.aspect_mode = config->thumb_mode;
scale.quality = config->thumb_quality;
// reading width and height from the mount point (if exists)
int index = system->mounts.MountParThumbSize();
if( m && m->param[index].defined && m->param[index].arg.size() == 2 )
{
scale.cx = Tol(m->param[index].arg[0]);
scale.cy = Tol(m->param[index].arg[1]);
}
// reading thumb mode from the mount point (if exists)
index = system->mounts.MountParThumbMode();
if( m && m->param[index].defined && m->param[index].arg.size() == 1 )
scale.aspect_mode = Toi(m->param[index].arg[0]);
// reading image quality from the mount point (if exists)
index = system->mounts.MountParThumbQuality();
if( m && m->param[index].defined && m->param[index].arg.size() == 1 )
scale.quality = Toi(m->param[index].arg[0]);
return scale;
}
// first thread (objects locked)
void Image::Resize(long file_id, size_t cx, size_t cy, int aspect_mode, int quality)
{
item_temp.type = WINIX_IMAGE_TYPE_RESIZE;
item_temp.file = item;
item_temp.file_id = file_id;
item_temp.cx = cx;
item_temp.cy = cy;
item_temp.aspect_mode = aspect_mode;
@ -51,13 +128,14 @@ void Image::Resize(const Item & item, size_t cx, size_t cy, int aspect_mode, int
}
// first thread (objects locked)
void Image::CreateThumb(const Item & item, size_t cx, size_t cy, int aspect_mode, int quality)
void Image::CreateThumb(long file_id, size_t thumb_cx, size_t thumb_cy, int aspect_mode, int quality)
{
item_temp.type = WINIX_IMAGE_TYPE_CREATE_THUMB;
item_temp.file = item;
item_temp.cx = cx;
item_temp.cy = cy;
item_temp.file_id = file_id;
item_temp.thumb_cx = thumb_cx;
item_temp.thumb_cy = thumb_cy;
item_temp.aspect_mode = aspect_mode;
item_temp.quality = quality;
@ -68,31 +146,75 @@ void Image::CreateThumb(const Item & item, size_t cx, size_t cy, int aspect_mode
// first thread (objects locked)
void Image::Crop(long file_id, size_t xoffset, size_t yoffset, size_t cx, size_t cy, int quality)
{
item_temp.type = WINIX_IMAGE_TYPE_CROP;
item_temp.file_id = file_id;
item_temp.xoffset = xoffset;
item_temp.yoffset = yoffset;
item_temp.cx = cx;
item_temp.cy = cy;
item_temp.quality = quality;
CheckParam(item_temp);
image_tab.insert(image_tab.end(), item_temp);
WakeUpThread();
}
// first thread (objects locked)
void Image::CropThumb(long file_id, size_t xoffset, size_t yoffset, size_t cx, size_t cy, int quality)
{
item_temp.type = WINIX_IMAGE_TYPE_CROP_THUMB;
item_temp.file_id = file_id;
item_temp.xoffset = xoffset;
item_temp.yoffset = yoffset;
item_temp.cx = cx;
item_temp.cy = cy;
item_temp.quality = quality;
CheckParam(item_temp);
image_tab.insert(image_tab.end(), item_temp);
WakeUpThread();
}
// first thread (objects locked)
void Image::CropNewThumb(long file_id, size_t xoffset, size_t yoffset, size_t cx, size_t cy,
size_t thumb_cx, size_t thumb_cy, int aspect_mode, int quality)
{
item_temp.type = WINIX_IMAGE_TYPE_CREATE_CROP_NEW_THUMB;
item_temp.file_id = file_id;
item_temp.xoffset = xoffset;
item_temp.yoffset = yoffset;
item_temp.cx = cx;
item_temp.cy = cy;
item_temp.thumb_cx = thumb_cx;
item_temp.thumb_cy = thumb_cy;
item_temp.aspect_mode = aspect_mode;
item_temp.quality = quality;
CheckParam(item_temp);
image_tab.insert(image_tab.end(), item_temp);
WakeUpThread();
}
void Image::CheckParam(ImageItem & item)
{
if( item.aspect_mode < 1 )
item.aspect_mode = 1;
if( item.aspect_mode > 7 )
item.aspect_mode = 7;
if( item.quality < 0 )
item.quality = 0;
if( item.quality > 100 )
item.quality = 100;
if( item_temp.cx < 5 )
item_temp.cx = 5;
if( item_temp.cy < 5 )
item_temp.cy = 5;
if( item_temp.cx > 10000 )
item_temp.cx = 10000;
if( item_temp.cy > 10000 )
item_temp.cy = 10000;
SetMinMax(item.aspect_mode, 1, 7);
SetMinMax(item.quality, 0, 100);
SetMinMax(item.cx, 1, 30000);
SetMinMax(item.cy, 1, 30000);
SetMinMax(item.thumb_cx, 1, 30000);
SetMinMax(item.thumb_cy, 1, 30000);
SetMinMax(item.xoffset, 0, 30000);
SetMinMax(item.yoffset, 0, 30000);
}
@ -117,7 +239,7 @@ bool end;
do
{
Lock();
class Lock lock_object(synchro);
if( i != image_tab.end() )
{
@ -130,7 +252,7 @@ bool end;
end = true;
}
Unlock();
lock_object.Unlock();
if( !end )
CreateImage();
@ -163,6 +285,7 @@ void Image::EscapePath(const std::string & path, TextStream<std::string> & out,
if( path[i] == '"' )
out << '\\';
if( path[i] != 0 )
out << path[i];
}
@ -184,37 +307,37 @@ widthxheight! Width and height emphatically given, original aspect ratio ignor
widthxheight> Change as per widthxheight but only if an image dimension exceeds a specified dimension.
widthxheight< Change dimensions only if both image dimensions exceed specified dimensions.
*/
void Image::SelectAspect()
void Image::SelectAspect(size_t cx, size_t cy)
{
switch( item_work.aspect_mode )
{
case WINIX_IMAGE_MODE_1:
command << item_work.cx;
command << cx;
break;
case WINIX_IMAGE_MODE_3:
command << item_work.cx << "x" << item_work.cy;
command << cx << "x" << cy;
break;
case WINIX_IMAGE_MODE_4:
command << '"' << item_work.cx << "x" << item_work.cy << "^\"";
command << '"' << cx << "x" << cy << "^\"";
break;
case WINIX_IMAGE_MODE_5:
command << '"' << item_work.cx << "x" << item_work.cy << "!\"";
command << '"' << cx << "x" << cy << "!\"";
break;
case WINIX_IMAGE_MODE_6:
command << '"' << item_work.cx << "x" << item_work.cy << ">\"";
command << '"' << cx << "x" << cy << ">\"";
break;
case WINIX_IMAGE_MODE_7:
command << '"' << item_work.cx << "x" << item_work.cy << "<\"";
command << '"' << cx << "x" << cy << "<\"";
break;
case WINIX_IMAGE_MODE_2:
default:
command << "x" << item_work.cy;
command << "x" << cy;
break;
}
}
@ -224,7 +347,17 @@ void Image::SelectAspect()
// second thread (objects locked)
bool Image::CreateInputFileName()
{
if( system->MakeFilePath(item_work.file, src_path) )
bool thumb = (item_work.type == WINIX_IMAGE_TYPE_CROP_THUMB);
if( thumb && !file_work.has_thumb )
{
log << log1 << "Image: file id: " << file_work.id << ", url: " << file_work.url
<< " doesn't have a thumbnail yet (skipping)" << logend;
return false;
}
if( system->MakeFilePath(file_work, src_path, thumb) )
{
PT::WideToUTF8(src_path, input_file_name);
return true;
@ -237,6 +370,7 @@ bool Image::CreateInputFileName()
}
// second thread (objects locked)
void Image::CreateTmpFileName()
{
@ -250,26 +384,17 @@ void Image::CreateTmpFileName()
// second thread (objects are not locked)
bool Image::CreateCommand()
{
Lock();
class Lock lock_object(synchro);
iq.SetAll(true, false);
iq.WhereId(item_work.file.id);
// !! skoro teraz i tak wczytujemy caly obiekt
// to teraz w kolejce wystarczy zapamietywac tylko samo item.id (a nie caly obiekt item)
iq.WhereId(item_work.file_id);
// the file could have been changed especially when there is a long queue of files
if( db->GetItem(item_work.file, iq) != WINIX_ERR_OK )
{
Unlock();
if( db->GetItem(file_work, iq) != WINIX_ERR_OK )
return false;
}
if( !CreateInputFileName() )
{
Unlock();
return false;
}
command.Clear();
Add(config->convert_cmd, command);
@ -279,11 +404,38 @@ bool Image::CreateCommand()
command << " -quiet -quality " << item_work.quality;
if( item_work.type == WINIX_IMAGE_TYPE_RESIZE )
{
command << " -resize ";
SelectAspect(item_work.cx, item_work.cy);
}
else
if( item_work.type == WINIX_IMAGE_TYPE_CREATE_THUMB )
{
command << " -strip -thumbnail ";
SelectAspect(item_work.thumb_cx, item_work.thumb_cy);
}
else
if( item_work.type == WINIX_IMAGE_TYPE_CROP )
{
command << " -crop " << item_work.cx << "x" << item_work.cy
<< "+" << item_work.xoffset << "+" << item_work.yoffset << " +repage ";
}
else
if( item_work.type == WINIX_IMAGE_TYPE_CROP_THUMB )
{
command << " -strip -crop " << item_work.cx << "x" << item_work.cy
<< "+" << item_work.xoffset << "+" << item_work.yoffset
<< " +repage ";
}
else
if( item_work.type == WINIX_IMAGE_TYPE_CREATE_CROP_NEW_THUMB )
{
command << " -strip -crop " << item_work.cx << "x" << item_work.cy
<< "+" << item_work.xoffset << "+" << item_work.yoffset
<< " +repage -thumbnail ";
SelectAspect(item_work.thumb_cx, item_work.thumb_cy);
}
SelectAspect();
CreateTmpFileName();
command << " ";
@ -291,7 +443,6 @@ bool Image::CreateCommand()
log << log4 << "Image: running: " << command.Str() << logend;
Unlock();
return true;
}
@ -299,43 +450,77 @@ return true;
// second thread (objects are locked)
void Image::ImageSavedCorrectly()
{
if( item_work.type == WINIX_IMAGE_TYPE_CREATE_THUMB )
{
if( !file_work.has_thumb )
{
file_work.has_thumb = true;
db->EditHasThumbById(true, file_work.id);
}
log << log3 << "Image: generated a thumbnail: " << dst_path << logend;
plugin.Call((Session*)0, WINIX_CREATED_THUMB, &file_work);
}
else
if( item_work.type == WINIX_IMAGE_TYPE_RESIZE )
{
log << log3 << "Image: image resized: " << dst_path << logend;
plugin.Call((Session*)0, WINIX_IMAGE_RESIZED, &file_work);
}
else
if( item_work.type == WINIX_IMAGE_TYPE_CROP )
{
log << log3 << "Image: image cropped: " << dst_path << logend;
// !! IMPROVE ME add a correct message
//plugin.Call((Session*)0, WINIX_IMAGE_RESIZED, &file_work);
}
else
if( item_work.type == WINIX_IMAGE_TYPE_CROP_THUMB )
{
log << log3 << "Image: image thumbnail cropped: " << dst_path << logend;
// !! IMPROVE ME add a correct message
//plugin.Call((Session*)0, WINIX_IMAGE_RESIZED, &file_work);
}
else
if( item_work.type == WINIX_IMAGE_TYPE_CREATE_CROP_NEW_THUMB )
{
log << log3 << "Image: a new thumbnail from an original image was cropped: " << dst_path << logend;
// !! IMPROVE ME add a correct message
//plugin.Call((Session*)0, WINIX_IMAGE_RESIZED, &file_work);
}
}
// second thread (objects are not locked)
void Image::SaveImage()
{
bool moved = false;
Lock();
class Lock lock_object(synchro);
// the file could have been changed especially when creating the image lasted too long
iq.SetAll(true, false);
iq.WhereId(item_work.file.id);
iq.WhereId(item_work.file_id);
if( db->GetItem(item_work.file, iq) == WINIX_ERR_OK )
if( db->GetItem(file_work, iq) == WINIX_ERR_OK )
{
bool thumb = (item_work.type == WINIX_IMAGE_TYPE_CREATE_THUMB);
bool thumb = (item_work.type == WINIX_IMAGE_TYPE_CREATE_THUMB ||
item_work.type == WINIX_IMAGE_TYPE_CROP_THUMB ||
item_work.type == WINIX_IMAGE_TYPE_CREATE_CROP_NEW_THUMB );
if( system->MakeFilePath(item_work.file, dst_path, thumb, true, config->upload_dirs_chmod) )
if( system->MakeFilePath(file_work, dst_path, thumb, true, config->upload_dirs_chmod) )
{
if( RenameFile(stream_tmp_path.Str(), dst_path) )
{
if( thumb )
{
item_work.file.has_thumb = true;
db->EditHasThumbById(true, item_work.file.id);
log << log3 << "Image: generated a thumbnail: " << dst_path << logend;
plugin.Call((Session*)0, WINIX_CREATED_THUMB, &item_work.file);
ImageSavedCorrectly();
}
else
{
log << log3 << "Image: image resized: " << dst_path << logend;
plugin.Call((Session*)0, WINIX_IMAGE_RESIZED, &item_work.file);
}
log << log1 << "Image: cannot move a temporary file: " << stream_tmp_path.Str()
<< ", to: " << dst_path << logend;
moved = true;
}
else
{
log << log1 << "Image: cannot move a temporary file: " << stream_tmp_path.Str() << ", to: " << dst_path << logend;
::RemoveFile(stream_tmp_path.Str());
}
}
else
@ -343,11 +528,6 @@ bool moved = false;
log << log1 << "Image: cannot create a destination path" << logend;
}
}
if( !moved )
::RemoveFile(stream_tmp_path.Str());
Unlock();
}
@ -355,9 +535,8 @@ bool moved = false;
// second thread (objects are not locked)
void Image::CreateImage()
{
if( !CreateCommand() )
return;
if( CreateCommand() )
{
int res = std::system(command.CStr());
if( res == 0 )
@ -366,10 +545,10 @@ void Image::CreateImage()
}
else
{
Lock();
class Lock lock_object(synchro);
log << log3 << "Image: some problems with creating an image"
<< ", 'convert' process returned: " << res << logend;
Unlock();
}
}
}

View File

@ -2,7 +2,7 @@
* This file is a part of Winix
* and is not publicly distributed
*
* Copyright (c) 2010-2011, Tomasz Sowa
* Copyright (c) 2010-2013, Tomasz Sowa
* All rights reserved.
*
*/
@ -22,7 +22,7 @@
class System;
// aspect modes:
// Width given, height automagically selected to preserve aspect ratio.
#define WINIX_IMAGE_MODE_1 1
@ -45,25 +45,74 @@ class System;
#define WINIX_IMAGE_MODE_7 7
// resizing
#define WINIX_IMAGE_TYPE_RESIZE 1
// generating a thumbnail
#define WINIX_IMAGE_TYPE_CREATE_THUMB 2
// cropping an image
#define WINIX_IMAGE_TYPE_CROP 3
// cropping an thumbnail
#define WINIX_IMAGE_TYPE_CROP_THUMB 4
// creating by cropping a new thumbnail (from an original image)
#define WINIX_IMAGE_TYPE_CREATE_CROP_NEW_THUMB 5
/*
*/
class Image : public BaseThread
{
public:
struct Scale
{
size_t cx;
size_t cy;
int aspect_mode;
int quality;
Scale()
{
cx = cy = 1;
aspect_mode = 2;
quality = 100;
};
};
void SetDb(Db * pdb);
void SetConfig(Config * pconfig);
void SetSystem(System * psystem);
void Resize(const Item & item, size_t cx, size_t cy, int aspect_mode, int quality);
void CreateThumb(const Item & item, size_t cx, size_t cy, int aspect_mode, int quality);
// returning scale info for a directory
Scale GetImageScale(long dir_id);
// returning scale info (for thumbnails) for a directory
Scale GetThumbScale(long dir_id);
void Resize(long file_id, size_t cx, size_t cy, int aspect_mode, int quality);
// creating a new thumbnail from an original image
void CreateThumb(long file_id, size_t thumb_cx, size_t thumb_cy, int aspect_mode, int quality);
// cropping an image (the thumbnail is not changed)
void Crop(long file_id, size_t xoffset, size_t yoffset, size_t cx, size_t cy, int quality);
// cropping an existing thumbnail
void CropThumb(long file_id, size_t xoffset, size_t yoffset, size_t cx, size_t cy, int quality);
// creating and cropping a new thumbnail (from an original image)
void CropNewThumb(long file_id, size_t xoffset, size_t yoffset, size_t cx, size_t cy,
size_t thumb_cx, size_t thumb_cy, int aspect_mode, int quality);
private:
@ -75,13 +124,29 @@ private:
struct ImageItem
{
int type; // WINIX_IMAGE_TYPE_*
Item file;
long file_id;
size_t cx;
size_t cy;
size_t xoffset; // xoffset and yoffset are used when cropping
size_t yoffset;
size_t thumb_cx;
size_t thumb_cy;
int aspect_mode;
int quality;
};
template<typename int_type>
void SetMinMax(int_type & var, int var_min, int var_max)
{
if( static_cast<int>(var) < var_min )
var = var_min;
if( static_cast<int>(var) > var_max )
var = var_max;
}
// queue of thumbnails to create
typedef std::list<ImageItem> ImageTab;
ImageTab image_tab;
@ -96,6 +161,7 @@ private:
std::string add_tempa;
std::string input_file_name;
std::string tmp_file_name;
Item file_work;
virtual bool SignalReceived();
virtual void Do();
@ -104,10 +170,12 @@ private:
void CreateTmpFileName();
void SaveImage();
void CreateImage();
void SelectAspect();
void SelectAspect(size_t cx, size_t cy);
void EscapePath(const std::string & path, TextStream<std::string> & out, bool clear_stream = true);
void CheckParam(ImageItem & item);
void Add(const std::wstring & in, TextStream<std::string> & out);
void ImageSavedCorrectly();
};

View File

@ -2,7 +2,7 @@
* This file is a part of Winix
* and is not publicly distributed
*
* Copyright (c) 2008-2012, Tomasz Sowa
* Copyright (c) 2008-2013, Tomasz Sowa
* All rights reserved.
*
*/
@ -10,6 +10,7 @@
#include <sys/types.h>
#include <sys/stat.h>
#include <fstream>
#include <cstdlib>
#include "misc.h"
#include "log.h"
#include "templates/templates.h"
@ -77,6 +78,34 @@ long Tol(const wchar_t * str, int base)
double Tod(const std::string & str)
{
return strtod(str.c_str(), 0);
}
double Tod(const std::wstring & str)
{
return wcstold(str.c_str(), 0);
}
double Tod(const char * str)
{
return strtod(str, 0);
}
double Tod(const wchar_t * str)
{
return wcstold(str, 0);
}
const wchar_t * Toa(unsigned int value, int base)
{

View File

@ -38,6 +38,11 @@ long Tol(const std::wstring & str, int base = 10);
long Tol(const char * str, int base = 10);
long Tol(const wchar_t * str, int base = 10);
double Tod(const std::string & str);
double Tod(const std::wstring & str);
double Tod(const char * str);
double Tod(const wchar_t * str);
// if the buffer is too small it will be terminated at the beginning (empty string)
// and the function returns false
@ -996,6 +1001,17 @@ size_t i1, i2;
template<typename IntType>
void SetMinMax(IntType & val, IntType min_val, IntType max_val)
{
if( val < min_val )
val = min_val;
if( val > max_val )
val = max_val;
}
#endif

View File

@ -13,7 +13,7 @@
#define WINIX_VER_MAJOR 0
#define WINIX_VER_MINOR 5
#define WINIX_VER_REVISION 3
#define WINIX_VER_REVISION 4
#endif

File diff suppressed because it is too large Load Diff

View File

@ -1 +1 @@
o = adduser.o cat.o chmod.o chown.o ckeditor.o cp.o default.o download.o emacs.o env.o functionbase.o functionparser.o functions.o ipban.o last.o ln.o locale.o login.o logout.o ls.o man.o meta.o mkdir.o mount.o mv.o nicedit.o node.o passwd.o priv.o privchanger.o pw.o reload.o rm.o rmuser.o run.o sort.o specialdefault.o stat.o subject.o template.o timezone.o tinymce.o uname.o upload.o uptime.o vim.o who.o
o = adduser.o cat.o chmod.o chown.o ckeditor.o cp.o default.o download.o emacs.o env.o functionbase.o functionparser.o functions.o imgcrop.o ipban.o last.o ln.o locale.o login.o logout.o ls.o man.o meta.o mkdir.o mount.o mv.o nicedit.o node.o passwd.o priv.o privchanger.o pw.o reload.o rm.o rmuser.o run.o sort.o specialdefault.o stat.o subject.o template.o timezone.o tinymce.o uname.o upload.o uptime.o vim.o who.o

View File

@ -2,7 +2,7 @@
* This file is a part of Winix
* and is not publicly distributed
*
* Copyright (c) 2010-2012, Tomasz Sowa
* Copyright (c) 2010-2013, Tomasz Sowa
* All rights reserved.
*
*/
@ -192,6 +192,7 @@ void Functions::CreateFunctions()
Add(fun_download);
Add(fun_emacs);
Add(fun_env);
Add(fun_imgcrop);
Add(fun_last);
Add(fun_locale);
Add(fun_login);

View File

@ -2,7 +2,7 @@
* This file is a part of Winix
* and is not publicly distributed
*
* Copyright (c) 2010-2012, Tomasz Sowa
* Copyright (c) 2010-2013, Tomasz Sowa
* All rights reserved.
*
*/
@ -23,6 +23,7 @@
#include "download.h"
#include "emacs.h"
#include "env.h"
#include "imgcrop.h"
#include "last.h"
#include "locale.h"
#include "login.h"
@ -77,6 +78,7 @@ public:
Fun::Download fun_download;
Fun::Emacs fun_emacs;
Fun::Env fun_env;
Fun::ImgCrop fun_imgcrop;
Fun::Last fun_last;
Fun::Locale fun_locale;
Fun::Login fun_login;

101
functions/imgcrop.cpp Executable file
View File

@ -0,0 +1,101 @@
/*
* This file is a part of Winix
* and is not publicly distributed
*
* Copyright (c) 2013, Tomasz Sowa
* All rights reserved.
*
*/
#include "imgcrop.h"
#include "functions.h"
namespace Fun
{
ImgCrop::ImgCrop()
{
fun.url = L"imgcrop";
}
bool ImgCrop::HasAccess()
{
if( cur->request->is_item )
return system->HasWriteAccess(cur->request->item);
return true;
}
void ImgCrop::GetDirContent()
{
iq.sel_content = false;
iq.WhereParentId(cur->request->dir_tab.back()->id);
db->GetItems(cur->request->item_tab, iq);
system->CheckWriteAccessToItems(cur->request->item_tab);
}
void ImgCrop::MakePost()
{
int xoffset = int(Tod(cur->request->PostVar(L"cropxtop")) + 0.5);
int yoffset = int(Tod(cur->request->PostVar(L"cropytop")) + 0.5);
int width = int(Tod(cur->request->PostVar(L"cropwidth")) + 0.5);
int height = int(Tod(cur->request->PostVar(L"cropheight")) + 0.5);
SetMinMax(xoffset, 0, 30000);
SetMinMax(yoffset, 0, 30000);
SetMinMax(width, 1, 30000);
SetMinMax(height, 1, 30000);
Item & item = cur->request->item;
if( cur->request->is_item && item.type == Item::file && item.file_type == WINIX_ITEM_FILETYPE_IMAGE )
{
if( system->HasWriteAccess(item) )
{
// !! IMPROVE ME add info about modification (Item::modify_time)
if( cur->request->IsParam(L"thumb") )
{
Image::Scale scale = system->image.GetThumbScale(item.parent_id);
system->image.CropThumb(item.id, xoffset, yoffset, width, height, scale.quality);
}
else
if( cur->request->IsParam(L"newthumb") )
{
Image::Scale scale = system->image.GetThumbScale(item.parent_id);
system->image.CropNewThumb(item.id, xoffset, yoffset, width, height, scale.cx, scale.cy,
scale.aspect_mode, scale.quality);
}
else
{
Image::Scale scale = system->image.GetImageScale(item.parent_id);
system->image.Crop(item.id, xoffset, yoffset, width, height, scale.quality);
}
// !! IMPROVE ME redirect me somewhere else
system->RedirectToLastItem();
}
else
{
cur->request->status = WINIX_ERR_PERMISSION_DENIED;
}
}
}
void ImgCrop::MakeGet()
{
if( !cur->request->is_item )
GetDirContent();
}
} // namespace

42
functions/imgcrop.h Executable file
View File

@ -0,0 +1,42 @@
/*
* This file is a part of Winix
* and is not publicly distributed
*
* Copyright (c) 2013, Tomasz Sowa
* All rights reserved.
*
*/
#ifndef headerfile_winix_functions_imgcrop
#define headerfile_winix_functions_imgcrop
#include "functionbase.h"
namespace Fun
{
class ImgCrop : public FunctionBase
{
public:
ImgCrop();
bool HasAccess();
void MakeGet();
void MakePost();
private:
DbItemQuery iq;
void GetDirContent();
};
} // namespace
#endif

View File

@ -2,7 +2,7 @@
* This file is a part of Winix
* and is not publicly distributed
*
* Copyright (c) 2008-2012, Tomasz Sowa
* Copyright (c) 2008-2013, Tomasz Sowa
* All rights reserved.
*
*/
@ -89,68 +89,16 @@ bool Upload::UploadSaveStaticFile(const Item & item, const std::wstring & tmp_fi
void Upload::ResizeImage(Item & item)
{
::Mount * m = system->mounts.CalcMount(item.parent_id);
size_t cx = config->image_cx;
size_t cy = config->image_cy;
int mode = config->image_mode;
int quality = config->image_quality;
// reading width and height from the mount point (if exists)
int index = system->mounts.MountParImageSize();
if( m && m->param[index].defined && m->param[index].arg.size() == 2 )
{
cx = Tol(m->param[index].arg[0]);
cy = Tol(m->param[index].arg[1]);
}
// reading image mode from the mount point (if exists)
index = system->mounts.MountParImageMode();
if( m && m->param[index].defined && m->param[index].arg.size() == 1 )
mode = Toi(m->param[index].arg[0]);
// reading image quality from the mount point (if exists)
index = system->mounts.MountParImageQuality();
if( m && m->param[index].defined && m->param[index].arg.size() == 1 )
quality = Toi(m->param[index].arg[0]);
system->image.Resize(item, cx, cy, mode, quality);
Image::Scale scale = system->image.GetImageScale(item.parent_id);
system->image.Resize(item.id, scale.cx, scale.cy, scale.aspect_mode, scale.quality);
}
void Upload::CreateThumb(Item & item)
{
::Mount * m = system->mounts.CalcMount(item.parent_id);
size_t cx = config->thumb_cx;
size_t cy = config->thumb_cy;
int mode = config->thumb_mode;
int quality = config->thumb_quality;
// reading width and height from the mount point (if exists)
int index = system->mounts.MountParThumbSize();
if( m && m->param[index].defined && m->param[index].arg.size() == 2 )
{
cx = Tol(m->param[index].arg[0]);
cy = Tol(m->param[index].arg[1]);
}
// reading thumb mode from the mount point (if exists)
index = system->mounts.MountParThumbMode();
if( m && m->param[index].defined && m->param[index].arg.size() == 1 )
mode = Toi(m->param[index].arg[0]);
// reading image quality from the mount point (if exists)
index = system->mounts.MountParThumbQuality();
if( m && m->param[index].defined && m->param[index].arg.size() == 1 )
quality = Toi(m->param[index].arg[0]);
system->image.CreateThumb(item, cx, cy, mode, quality);
Image::Scale scale = system->image.GetThumbScale(item.parent_id);
system->image.CreateThumb(item.id, scale.cx, scale.cy, scale.aspect_mode, scale.quality);
}

109
html/fun_imgcrop.html Normal file
View File

@ -0,0 +1,109 @@
<div class="winix">
<h1>Kadrowanie obrazów</h1>
[if item_is]
[if winix_function_param_is "thumb"]
<p>Kadruj miniaturę zdjęcia, obraz oryginalny (duży) nie zostanie zmodyfikowany.</p>.
[else]
[if winix_function_param_is "newthumb"]
<p>Zaznacz myszką kadr na zdjęciu, z tej części zostanie stworzona nowa miniatura, obraz oryginalny (duży) nie zostanie zmodyfikowany.</p>.
[else]
<p>Kadruj oryginalny obraz (miniatura nie zostanie zmodyfikowana).</p>.
[end]
[end]
[if-any item_is item_filetype_is_image]
<script type="text/javascript">
var winix_jcrop;
</script>
<img src="[item_link][if winix_function_param_is "thumb"]/-/thumb[end]" alt="" id="winix_imgcropper">
<form id="winix_cropform" action="[item_link]/imgcrop[if winix_function_param_is "thumb"]/thumb[end][if winix_function_param_is "newthumb"]/newthumb[end]" method="post">
<input type="hidden" name="cropxtop" value="" id="winix_idcropxtop">
<input type="hidden" name="cropytop" value="" id="winix_idcropytop">
<input type="hidden" name="cropwidth" value="" id="winix_idcropwidth">
<input type="hidden" name="cropheight" value="" id="winix_idcropheight">
[if-any-no winix_function_param_is "thumb" winix_function_param_is "newthumb"]
[if false]
<div class="winix_input_b">
<input type="checkbox" name="createthumbtoo" id="winix_createthumbtooid">
<label for="winix_createthumbtooid">Stwórz także nową miniaturę</label>
</div>
[end]
[end]
[if winix_function_param_is "postredirect"]
<input type="hidden" name="postredirect" value="[winix_function_param_value "postredirect"]">
[end]
<input type="submit" value="Kadruj">
</form>
[else]
<p>To nie jest obrazek.</p>
[end]
<script type="text/javascript">
$('#winix_imgcropper').Jcrop(\{boxWidth: 700, boxHeight: 450\}, function()\{winix_jcrop = this;\});
$('form#winix_cropform').submit(function()\{
var c = winix_jcrop.tellSelect();
$('form#winix_cropform input#winix_idcropxtop').val(c.x);
$('form#winix_cropform input#winix_idcropytop').val(c.y);
$('form#winix_cropform input#winix_idcropwidth').val(c.w);
$('form#winix_cropform input#winix_idcropheight').val(c.h);
return c.w != 0 && c.h != 0;
\});
</script>
[else]
[if item_tab]
<ul class="winix_imgcrop_list">
[for item_tab]
<li>
<div class="winix_imgcrop_list_image">
<img src="[item_tab_link][if item_tab_has_thumb]/-/thumb[end]" alt="[item_tab_subject]">
</div>
<div class="winix_imgcrop_list_imageurl">
[item_tab_url]
</div>
<div class="winix_imgcrop_list_options">
<ul>
<li><a href="[item_tab_link]/imgcrop/postredirect:[filter fil_urlencode][doc_base_url][dir]imgcrop[end]">Kadruj zdjęcie</a></li>
<li><a href="[item_tab_link]/imgcrop/thumb/postredirect:[filter fil_urlencode][doc_base_url][dir]imgcrop[end]">Kadruj miniature</a></li>
<li><a href="[item_tab_link]/imgcrop/newthumb/postredirect:[filter fil_urlencode][doc_base_url][dir]imgcrop[end]">Kadruj i stwórz nową miniature</a></li>
</ul>
</div>
</li>
[end]
</ul>
[end]
[end]
</div>

View File

@ -32,7 +32,10 @@
[for item_tab]
<li id="winix_sort_item_[item_tab_index]">
<input type="text" name="sort[item_tab_id]" value="[item_tab_sort]">
[# is it correct? may give this 'if' only to /-/thumb param? ]
[if item_tab_has_thumb]<img src="[item_tab_link]/-/thumb" alt="[item_tab_subject]">[end]
[item_tab_url]
</li>
[end]

View File

@ -162,8 +162,6 @@
</script>
</div>
<script type="text/javascript">
$('#fileupload button.start').css('display', 'none');

View File

@ -9,6 +9,7 @@
winix_function_is "download"
winix_function_is "emacs"
winix_function_is "env"
winix_function_is "imgcrop"
winix_function_is "last"
winix_function_is "ln"
winix_function_is "locale"
@ -190,6 +191,13 @@
[end]
[if winix_function_is "imgcrop"]
<script type="text/javascript" src="[doc_base_url_common]/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="[doc_base_url_common]/jcrop-0.9.12/js/jquery.Jcrop.js"></script>
<link type="text/css" rel="stylesheet" href="[doc_base_url_common]/jcrop-0.9.12/css/jquery.Jcrop.css">
[end]
[if winix_has_plugin "stats"]
[include "stats_info.html"]

View File

@ -38,13 +38,14 @@ main.o: ../functions/functionparser.h ../core/cur.h ../functions/adduser.h
main.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h
main.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h
main.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
main.o: ../functions/env.h ../functions/last.h ../functions/login.h
main.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
main.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
main.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
main.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
main.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
main.o: ../functions/sort.h ../functions/specialdefault.h ../functions/stat.h
main.o: ../functions/env.h ../functions/imgcrop.h ../functions/last.h
main.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
main.o: ../functions/ls.h ../functions/man.h ../functions/meta.h
main.o: ../functions/mkdir.h ../functions/mv.h ../functions/nicedit.h
main.o: ../functions/node.h ../functions/passwd.h ../functions/priv.h
main.o: ../functions/pw.h ../functions/reload.h ../functions/rm.h
main.o: ../functions/rmuser.h ../functions/sort.h
main.o: ../functions/specialdefault.h ../functions/stat.h
main.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h
main.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h
main.o: ../functions/who.h ../functions/vim.h ../core/htmlfilter.h

View File

@ -46,14 +46,14 @@ notify.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
notify.o: ../functions/privchanger.h ../functions/chown.h
notify.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
notify.o: ../functions/download.h ../functions/emacs.h ../functions/env.h
notify.o: ../functions/last.h ../functions/login.h ../functions/logout.h
notify.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
notify.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
notify.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
notify.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h
notify.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h
notify.o: ../functions/specialdefault.h ../functions/stat.h
notify.o: ../functions/subject.h ../functions/template.h
notify.o: ../functions/imgcrop.h ../functions/last.h ../functions/login.h
notify.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
notify.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
notify.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
notify.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
notify.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
notify.o: ../functions/sort.h ../functions/specialdefault.h
notify.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
notify.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
notify.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
notifypool.o: notifypool.h ../templates/locale.h
@ -139,10 +139,11 @@ templatesnotify.o: ../functions/chmod.h ../functions/privchanger.h
templatesnotify.o: ../functions/chown.h ../functions/ckeditor.h
templatesnotify.o: ../functions/cp.h ../functions/default.h
templatesnotify.o: ../functions/download.h ../functions/emacs.h
templatesnotify.o: ../functions/env.h ../functions/last.h
templatesnotify.o: ../functions/login.h ../functions/logout.h
templatesnotify.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
templatesnotify.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
templatesnotify.o: ../functions/env.h ../functions/imgcrop.h
templatesnotify.o: ../functions/last.h ../functions/login.h
templatesnotify.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
templatesnotify.o: ../functions/man.h ../functions/meta.h
templatesnotify.o: ../functions/mkdir.h ../functions/mv.h
templatesnotify.o: ../functions/nicedit.h ../functions/node.h
templatesnotify.o: ../functions/passwd.h ../functions/priv.h
templatesnotify.o: ../functions/pw.h ../functions/reload.h ../functions/rm.h

View File

@ -171,7 +171,8 @@ init.o: ../../functions/chmod.h ../../functions/privchanger.h
init.o: ../../functions/chown.h ../../functions/ckeditor.h
init.o: ../../functions/cp.h ../../functions/default.h
init.o: ../../functions/download.h ../../functions/emacs.h
init.o: ../../functions/env.h ../../functions/last.h ../../functions/login.h
init.o: ../../functions/env.h ../../functions/imgcrop.h
init.o: ../../functions/last.h ../../functions/login.h
init.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h
init.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h
init.o: ../../functions/mv.h ../../functions/nicedit.h ../../functions/node.h

View File

@ -91,7 +91,8 @@ init.o: ../../functions/chmod.h ../../functions/privchanger.h
init.o: ../../functions/chown.h ../../functions/ckeditor.h
init.o: ../../functions/cp.h ../../functions/default.h
init.o: ../../functions/download.h ../../functions/emacs.h
init.o: ../../functions/env.h ../../functions/last.h ../../functions/login.h
init.o: ../../functions/env.h ../../functions/imgcrop.h
init.o: ../../functions/last.h ../../functions/login.h
init.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h
init.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h
init.o: ../../functions/mv.h ../../functions/nicedit.h ../../functions/node.h
@ -158,9 +159,10 @@ templates.o: ../../functions/chmod.h ../../functions/privchanger.h
templates.o: ../../functions/chown.h ../../functions/ckeditor.h
templates.o: ../../functions/cp.h ../../functions/default.h
templates.o: ../../functions/download.h ../../functions/emacs.h
templates.o: ../../functions/env.h ../../functions/last.h
templates.o: ../../functions/login.h ../../functions/logout.h
templates.o: ../../functions/ln.h ../../functions/ls.h ../../functions/man.h
templates.o: ../../functions/env.h ../../functions/imgcrop.h
templates.o: ../../functions/last.h ../../functions/login.h
templates.o: ../../functions/logout.h ../../functions/ln.h
templates.o: ../../functions/ls.h ../../functions/man.h
templates.o: ../../functions/meta.h ../../functions/mkdir.h
templates.o: ../../functions/mv.h ../../functions/nicedit.h
templates.o: ../../functions/node.h ../../functions/passwd.h

View File

@ -88,7 +88,8 @@ init.o: ../../functions/chmod.h ../../functions/privchanger.h
init.o: ../../functions/chown.h ../../functions/ckeditor.h
init.o: ../../functions/cp.h ../../functions/default.h
init.o: ../../functions/download.h ../../functions/emacs.h
init.o: ../../functions/env.h ../../functions/last.h ../../functions/login.h
init.o: ../../functions/env.h ../../functions/imgcrop.h
init.o: ../../functions/last.h ../../functions/login.h
init.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h
init.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h
init.o: ../../functions/mv.h ../../functions/nicedit.h ../../functions/node.h
@ -157,9 +158,10 @@ templates.o: ../../functions/chmod.h ../../functions/privchanger.h
templates.o: ../../functions/chown.h ../../functions/ckeditor.h
templates.o: ../../functions/cp.h ../../functions/default.h
templates.o: ../../functions/download.h ../../functions/emacs.h
templates.o: ../../functions/env.h ../../functions/last.h
templates.o: ../../functions/login.h ../../functions/logout.h
templates.o: ../../functions/ln.h ../../functions/ls.h ../../functions/man.h
templates.o: ../../functions/env.h ../../functions/imgcrop.h
templates.o: ../../functions/last.h ../../functions/login.h
templates.o: ../../functions/logout.h ../../functions/ln.h
templates.o: ../../functions/ls.h ../../functions/man.h
templates.o: ../../functions/meta.h ../../functions/mkdir.h
templates.o: ../../functions/mv.h ../../functions/nicedit.h
templates.o: ../../functions/node.h ../../functions/passwd.h

View File

@ -78,7 +78,8 @@ init.o: ../../functions/chmod.h ../../functions/privchanger.h
init.o: ../../functions/chown.h ../../functions/ckeditor.h
init.o: ../../functions/cp.h ../../functions/default.h
init.o: ../../functions/download.h ../../functions/emacs.h
init.o: ../../functions/env.h ../../functions/last.h ../../functions/login.h
init.o: ../../functions/env.h ../../functions/imgcrop.h
init.o: ../../functions/last.h ../../functions/login.h
init.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h
init.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h
init.o: ../../functions/mv.h ../../functions/nicedit.h ../../functions/node.h
@ -149,9 +150,9 @@ templates.o: ../../functions/privchanger.h ../../functions/chown.h
templates.o: ../../functions/ckeditor.h ../../functions/cp.h
templates.o: ../../functions/default.h ../../functions/download.h
templates.o: ../../functions/emacs.h ../../functions/env.h
templates.o: ../../functions/last.h ../../functions/login.h
templates.o: ../../functions/logout.h ../../functions/ln.h
templates.o: ../../functions/ls.h ../../functions/man.h
templates.o: ../../functions/imgcrop.h ../../functions/last.h
templates.o: ../../functions/login.h ../../functions/logout.h
templates.o: ../../functions/ln.h ../../functions/ls.h ../../functions/man.h
templates.o: ../../functions/meta.h ../../functions/mkdir.h
templates.o: ../../functions/mv.h ../../functions/nicedit.h
templates.o: ../../functions/node.h ../../functions/passwd.h

View File

@ -47,7 +47,8 @@ init.o: ../../functions/chmod.h ../../functions/privchanger.h
init.o: ../../functions/chown.h ../../functions/ckeditor.h
init.o: ../../functions/cp.h ../../functions/default.h
init.o: ../../functions/download.h ../../functions/emacs.h
init.o: ../../functions/env.h ../../functions/last.h ../../functions/login.h
init.o: ../../functions/env.h ../../functions/imgcrop.h
init.o: ../../functions/last.h ../../functions/login.h
init.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h
init.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h
init.o: ../../functions/mv.h ../../functions/nicedit.h ../../functions/node.h
@ -127,9 +128,10 @@ templates.o: ../../functions/chmod.h ../../functions/privchanger.h
templates.o: ../../functions/chown.h ../../functions/ckeditor.h
templates.o: ../../functions/cp.h ../../functions/default.h
templates.o: ../../functions/download.h ../../functions/emacs.h
templates.o: ../../functions/env.h ../../functions/last.h
templates.o: ../../functions/login.h ../../functions/logout.h
templates.o: ../../functions/ln.h ../../functions/ls.h ../../functions/man.h
templates.o: ../../functions/env.h ../../functions/imgcrop.h
templates.o: ../../functions/last.h ../../functions/login.h
templates.o: ../../functions/logout.h ../../functions/ln.h
templates.o: ../../functions/ls.h ../../functions/man.h
templates.o: ../../functions/meta.h ../../functions/mkdir.h
templates.o: ../../functions/mv.h ../../functions/nicedit.h
templates.o: ../../functions/node.h ../../functions/passwd.h

View File

@ -51,21 +51,22 @@ createthread.o: ../../functions/chmod.h ../../functions/privchanger.h
createthread.o: ../../functions/chown.h ../../functions/ckeditor.h
createthread.o: ../../functions/cp.h ../../functions/default.h
createthread.o: ../../functions/download.h ../../functions/emacs.h
createthread.o: ../../functions/env.h ../../functions/last.h
createthread.o: ../../functions/login.h ../../functions/logout.h
createthread.o: ../../functions/ln.h ../../functions/ls.h
createthread.o: ../../functions/man.h ../../functions/meta.h
createthread.o: ../../functions/mkdir.h ../../functions/mv.h
createthread.o: ../../functions/nicedit.h ../../functions/node.h
createthread.o: ../../functions/passwd.h ../../functions/priv.h
createthread.o: ../../functions/pw.h ../../functions/reload.h
createthread.o: ../../functions/rm.h ../../functions/rmuser.h
createthread.o: ../../functions/sort.h ../../functions/specialdefault.h
createthread.o: ../../functions/stat.h ../../functions/subject.h
createthread.o: ../../functions/template.h ../../functions/tinymce.h
createthread.o: ../../functions/uname.h ../../functions/upload.h
createthread.o: ../../functions/uptime.h ../../functions/who.h
createthread.o: ../../functions/vim.h ../../core/htmlfilter.h
createthread.o: ../../functions/env.h ../../functions/imgcrop.h
createthread.o: ../../functions/last.h ../../functions/login.h
createthread.o: ../../functions/logout.h ../../functions/ln.h
createthread.o: ../../functions/ls.h ../../functions/man.h
createthread.o: ../../functions/meta.h ../../functions/mkdir.h
createthread.o: ../../functions/mv.h ../../functions/nicedit.h
createthread.o: ../../functions/node.h ../../functions/passwd.h
createthread.o: ../../functions/priv.h ../../functions/pw.h
createthread.o: ../../functions/reload.h ../../functions/rm.h
createthread.o: ../../functions/rmuser.h ../../functions/sort.h
createthread.o: ../../functions/specialdefault.h ../../functions/stat.h
createthread.o: ../../functions/subject.h ../../functions/template.h
createthread.o: ../../functions/tinymce.h ../../functions/uname.h
createthread.o: ../../functions/upload.h ../../functions/uptime.h
createthread.o: ../../functions/who.h ../../functions/vim.h
createthread.o: ../../core/htmlfilter.h
funthread.o: ../../core/misc.h ../../core/item.h ../../core/requesttypes.h
funthread.o: ../../../pikotools/textstream/textstream.h
funthread.o: ../../../pikotools/space/space.h
@ -156,7 +157,8 @@ init.o: ../../functions/chmod.h ../../functions/privchanger.h
init.o: ../../functions/chown.h ../../functions/ckeditor.h
init.o: ../../functions/cp.h ../../functions/default.h
init.o: ../../functions/download.h ../../functions/emacs.h
init.o: ../../functions/env.h ../../functions/last.h ../../functions/login.h
init.o: ../../functions/env.h ../../functions/imgcrop.h
init.o: ../../functions/last.h ../../functions/login.h
init.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h
init.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h
init.o: ../../functions/mv.h ../../functions/nicedit.h ../../functions/node.h
@ -219,7 +221,8 @@ reply.o: ../../functions/privchanger.h ../../core/request.h
reply.o: ../../functions/chown.h ../../functions/ckeditor.h
reply.o: ../../functions/cp.h ../../functions/default.h
reply.o: ../../functions/download.h ../../functions/emacs.h
reply.o: ../../functions/env.h ../../functions/last.h ../../functions/login.h
reply.o: ../../functions/env.h ../../functions/imgcrop.h
reply.o: ../../functions/last.h ../../functions/login.h
reply.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h
reply.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h
reply.o: ../../functions/mv.h ../../functions/nicedit.h
@ -333,9 +336,10 @@ templates.o: ../../functions/chmod.h ../../functions/privchanger.h
templates.o: ../../functions/chown.h ../../functions/ckeditor.h
templates.o: ../../functions/cp.h ../../functions/default.h
templates.o: ../../functions/download.h ../../functions/emacs.h
templates.o: ../../functions/env.h ../../functions/last.h
templates.o: ../../functions/login.h ../../functions/logout.h
templates.o: ../../functions/ln.h ../../functions/ls.h ../../functions/man.h
templates.o: ../../functions/env.h ../../functions/imgcrop.h
templates.o: ../../functions/last.h ../../functions/login.h
templates.o: ../../functions/logout.h ../../functions/ln.h
templates.o: ../../functions/ls.h ../../functions/man.h
templates.o: ../../functions/meta.h ../../functions/mkdir.h
templates.o: ../../functions/mv.h ../../functions/nicedit.h
templates.o: ../../functions/node.h ../../functions/passwd.h
@ -400,9 +404,10 @@ threadinfo.o: ../../functions/privchanger.h ../../core/request.h
threadinfo.o: ../../functions/chown.h ../../functions/ckeditor.h
threadinfo.o: ../../functions/cp.h ../../functions/default.h
threadinfo.o: ../../functions/download.h ../../functions/emacs.h
threadinfo.o: ../../functions/env.h ../../functions/last.h
threadinfo.o: ../../functions/login.h ../../functions/logout.h
threadinfo.o: ../../functions/ln.h ../../functions/ls.h ../../functions/man.h
threadinfo.o: ../../functions/env.h ../../functions/imgcrop.h
threadinfo.o: ../../functions/last.h ../../functions/login.h
threadinfo.o: ../../functions/logout.h ../../functions/ln.h
threadinfo.o: ../../functions/ls.h ../../functions/man.h
threadinfo.o: ../../functions/meta.h ../../functions/mkdir.h
threadinfo.o: ../../functions/mv.h ../../functions/nicedit.h
threadinfo.o: ../../functions/node.h ../../functions/passwd.h

View File

@ -50,22 +50,23 @@ createticket.o: ../../functions/chmod.h ../../functions/privchanger.h
createticket.o: ../../functions/chown.h ../../functions/ckeditor.h
createticket.o: ../../functions/cp.h ../../functions/default.h
createticket.o: ../../functions/download.h ../../functions/emacs.h
createticket.o: ../../functions/env.h ../../functions/last.h
createticket.o: ../../functions/login.h ../../functions/logout.h
createticket.o: ../../functions/ln.h ../../functions/ls.h
createticket.o: ../../functions/man.h ../../functions/meta.h
createticket.o: ../../functions/mkdir.h ../../functions/mv.h
createticket.o: ../../functions/nicedit.h ../../functions/node.h
createticket.o: ../../functions/passwd.h ../../functions/priv.h
createticket.o: ../../functions/pw.h ../../functions/reload.h
createticket.o: ../../functions/rm.h ../../functions/rmuser.h
createticket.o: ../../functions/sort.h ../../functions/specialdefault.h
createticket.o: ../../functions/stat.h ../../functions/subject.h
createticket.o: ../../functions/template.h ../../functions/tinymce.h
createticket.o: ../../functions/uname.h ../../functions/upload.h
createticket.o: ../../functions/uptime.h ../../functions/who.h
createticket.o: ../../functions/vim.h ../../core/htmlfilter.h
createticket.o: ../../templates/templates.h ../../templates/patterncacher.h
createticket.o: ../../functions/env.h ../../functions/imgcrop.h
createticket.o: ../../functions/last.h ../../functions/login.h
createticket.o: ../../functions/logout.h ../../functions/ln.h
createticket.o: ../../functions/ls.h ../../functions/man.h
createticket.o: ../../functions/meta.h ../../functions/mkdir.h
createticket.o: ../../functions/mv.h ../../functions/nicedit.h
createticket.o: ../../functions/node.h ../../functions/passwd.h
createticket.o: ../../functions/priv.h ../../functions/pw.h
createticket.o: ../../functions/reload.h ../../functions/rm.h
createticket.o: ../../functions/rmuser.h ../../functions/sort.h
createticket.o: ../../functions/specialdefault.h ../../functions/stat.h
createticket.o: ../../functions/subject.h ../../functions/template.h
createticket.o: ../../functions/tinymce.h ../../functions/uname.h
createticket.o: ../../functions/upload.h ../../functions/uptime.h
createticket.o: ../../functions/who.h ../../functions/vim.h
createticket.o: ../../core/htmlfilter.h ../../templates/templates.h
createticket.o: ../../templates/patterncacher.h
createticket.o: ../../templates/indexpatterns.h ../../templates/patterns.h
createticket.o: ../../templates/changepatterns.h
createticket.o: ../../templates/htmltextstream.h ../../core/sessionmanager.h
@ -115,9 +116,9 @@ editticket.o: ../../functions/privchanger.h ../../functions/chown.h
editticket.o: ../../functions/ckeditor.h ../../functions/cp.h
editticket.o: ../../functions/default.h ../../functions/download.h
editticket.o: ../../functions/emacs.h ../../functions/env.h
editticket.o: ../../functions/last.h ../../functions/login.h
editticket.o: ../../functions/logout.h ../../functions/ln.h
editticket.o: ../../functions/ls.h ../../functions/man.h
editticket.o: ../../functions/imgcrop.h ../../functions/last.h
editticket.o: ../../functions/login.h ../../functions/logout.h
editticket.o: ../../functions/ln.h ../../functions/ls.h ../../functions/man.h
editticket.o: ../../functions/meta.h ../../functions/mkdir.h
editticket.o: ../../functions/mv.h ../../functions/nicedit.h
editticket.o: ../../functions/node.h ../../functions/passwd.h
@ -185,9 +186,10 @@ funticket.o: ../../functions/chmod.h ../../functions/privchanger.h
funticket.o: ../../functions/chown.h ../../functions/ckeditor.h
funticket.o: ../../functions/cp.h ../../functions/default.h
funticket.o: ../../functions/download.h ../../functions/emacs.h
funticket.o: ../../functions/env.h ../../functions/last.h
funticket.o: ../../functions/login.h ../../functions/logout.h
funticket.o: ../../functions/ln.h ../../functions/ls.h ../../functions/man.h
funticket.o: ../../functions/env.h ../../functions/imgcrop.h
funticket.o: ../../functions/last.h ../../functions/login.h
funticket.o: ../../functions/logout.h ../../functions/ln.h
funticket.o: ../../functions/ls.h ../../functions/man.h
funticket.o: ../../functions/meta.h ../../functions/mkdir.h
funticket.o: ../../functions/mv.h ../../functions/nicedit.h
funticket.o: ../../functions/node.h ../../functions/passwd.h
@ -252,7 +254,8 @@ init.o: ../../functions/chmod.h ../../functions/privchanger.h
init.o: ../../functions/chown.h ../../functions/ckeditor.h
init.o: ../../functions/cp.h ../../functions/default.h
init.o: ../../functions/download.h ../../functions/emacs.h
init.o: ../../functions/env.h ../../functions/last.h ../../functions/login.h
init.o: ../../functions/env.h ../../functions/imgcrop.h
init.o: ../../functions/last.h ../../functions/login.h
init.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h
init.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h
init.o: ../../functions/mv.h ../../functions/nicedit.h ../../functions/node.h
@ -326,15 +329,15 @@ showtickets.o: ../../functions/privchanger.h ../../functions/chown.h
showtickets.o: ../../functions/ckeditor.h ../../functions/cp.h
showtickets.o: ../../functions/default.h ../../functions/download.h
showtickets.o: ../../functions/emacs.h ../../functions/env.h
showtickets.o: ../../functions/last.h ../../functions/login.h
showtickets.o: ../../functions/logout.h ../../functions/ln.h
showtickets.o: ../../functions/ls.h ../../functions/man.h
showtickets.o: ../../functions/meta.h ../../functions/mkdir.h
showtickets.o: ../../functions/mv.h ../../functions/nicedit.h
showtickets.o: ../../functions/node.h ../../functions/passwd.h
showtickets.o: ../../functions/priv.h ../../functions/pw.h
showtickets.o: ../../functions/reload.h ../../functions/rm.h
showtickets.o: ../../functions/rmuser.h ../../core/run.h
showtickets.o: ../../functions/imgcrop.h ../../functions/last.h
showtickets.o: ../../functions/login.h ../../functions/logout.h
showtickets.o: ../../functions/ln.h ../../functions/ls.h
showtickets.o: ../../functions/man.h ../../functions/meta.h
showtickets.o: ../../functions/mkdir.h ../../functions/mv.h
showtickets.o: ../../functions/nicedit.h ../../functions/node.h
showtickets.o: ../../functions/passwd.h ../../functions/priv.h
showtickets.o: ../../functions/pw.h ../../functions/reload.h
showtickets.o: ../../functions/rm.h ../../functions/rmuser.h ../../core/run.h
showtickets.o: ../../functions/sort.h ../../functions/specialdefault.h
showtickets.o: ../../functions/stat.h ../../functions/subject.h
showtickets.o: ../../functions/template.h ../../core/timezone.h
@ -396,9 +399,10 @@ templates.o: ../../functions/chmod.h ../../functions/privchanger.h
templates.o: ../../functions/chown.h ../../functions/ckeditor.h
templates.o: ../../functions/cp.h ../../functions/default.h
templates.o: ../../functions/download.h ../../functions/emacs.h
templates.o: ../../functions/env.h ../../functions/last.h
templates.o: ../../functions/login.h ../../functions/logout.h
templates.o: ../../functions/ln.h ../../functions/ls.h ../../functions/man.h
templates.o: ../../functions/env.h ../../functions/imgcrop.h
templates.o: ../../functions/last.h ../../functions/login.h
templates.o: ../../functions/logout.h ../../functions/ln.h
templates.o: ../../functions/ls.h ../../functions/man.h
templates.o: ../../functions/meta.h ../../functions/mkdir.h
templates.o: ../../functions/mv.h ../../functions/nicedit.h
templates.o: ../../functions/node.h ../../functions/passwd.h
@ -468,9 +472,9 @@ ticketinfo.o: ../../functions/privchanger.h ../../functions/chown.h
ticketinfo.o: ../../functions/ckeditor.h ../../functions/cp.h
ticketinfo.o: ../../functions/default.h ../../functions/download.h
ticketinfo.o: ../../functions/emacs.h ../../functions/env.h
ticketinfo.o: ../../functions/last.h ../../functions/login.h
ticketinfo.o: ../../functions/logout.h ../../functions/ln.h
ticketinfo.o: ../../functions/ls.h ../../functions/man.h
ticketinfo.o: ../../functions/imgcrop.h ../../functions/last.h
ticketinfo.o: ../../functions/login.h ../../functions/logout.h
ticketinfo.o: ../../functions/ln.h ../../functions/ls.h ../../functions/man.h
ticketinfo.o: ../../functions/meta.h ../../functions/mkdir.h
ticketinfo.o: ../../functions/mv.h ../../functions/nicedit.h
ticketinfo.o: ../../functions/node.h ../../functions/passwd.h

View File

@ -123,13 +123,13 @@ dir.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
dir.o: ../functions/privchanger.h ../functions/chown.h
dir.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
dir.o: ../functions/download.h ../functions/emacs.h ../functions/env.h
dir.o: ../functions/last.h ../functions/login.h ../functions/logout.h
dir.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
dir.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
dir.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
dir.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h
dir.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h
dir.o: ../functions/specialdefault.h ../functions/stat.h
dir.o: ../functions/imgcrop.h ../functions/last.h ../functions/login.h
dir.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
dir.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
dir.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
dir.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
dir.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
dir.o: ../functions/sort.h ../functions/specialdefault.h ../functions/stat.h
dir.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h
dir.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h
dir.o: ../functions/who.h ../functions/vim.h miscspace.h
@ -204,13 +204,13 @@ env.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
env.o: ../functions/privchanger.h ../functions/chown.h
env.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
env.o: ../functions/download.h ../functions/emacs.h ../functions/env.h
env.o: ../functions/last.h ../functions/login.h ../functions/logout.h
env.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
env.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
env.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
env.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h
env.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h
env.o: ../functions/specialdefault.h ../functions/stat.h
env.o: ../functions/imgcrop.h ../functions/last.h ../functions/login.h
env.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
env.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
env.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
env.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
env.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
env.o: ../functions/sort.h ../functions/specialdefault.h ../functions/stat.h
env.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h
env.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h
env.o: ../functions/who.h ../functions/vim.h
@ -355,14 +355,15 @@ ipban.o: ../functions/functionparser.h ../functions/adduser.h
ipban.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h
ipban.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h
ipban.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
ipban.o: ../functions/env.h ../functions/last.h ../functions/login.h
ipban.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
ipban.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
ipban.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
ipban.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
ipban.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
ipban.o: ../functions/sort.h ../functions/specialdefault.h
ipban.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
ipban.o: ../functions/env.h ../functions/imgcrop.h ../functions/last.h
ipban.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
ipban.o: ../functions/ls.h ../functions/man.h ../functions/meta.h
ipban.o: ../functions/mkdir.h ../functions/mv.h ../functions/nicedit.h
ipban.o: ../functions/node.h ../functions/passwd.h ../functions/priv.h
ipban.o: ../functions/pw.h ../functions/reload.h ../functions/rm.h
ipban.o: ../functions/rmuser.h ../functions/sort.h
ipban.o: ../functions/specialdefault.h ../functions/stat.h
ipban.o: ../functions/subject.h ../functions/template.h
ipban.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
ipban.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
item.o: templates.h ../../ezc/src/ezc.h ../../ezc/src/generator.h
@ -498,14 +499,14 @@ login.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
login.o: ../functions/privchanger.h ../functions/chown.h
login.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
login.o: ../functions/download.h ../functions/emacs.h ../functions/env.h
login.o: ../functions/last.h ../functions/login.h ../functions/logout.h
login.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
login.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
login.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
login.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h
login.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h
login.o: ../functions/specialdefault.h ../functions/stat.h
login.o: ../functions/subject.h ../functions/template.h
login.o: ../functions/imgcrop.h ../functions/last.h ../functions/login.h
login.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
login.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
login.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
login.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
login.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
login.o: ../functions/sort.h ../functions/specialdefault.h
login.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
login.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
login.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
ls.o: templates.h ../../ezc/src/ezc.h ../../ezc/src/generator.h
@ -579,13 +580,14 @@ man.o: ../functions/functionparser.h ../functions/adduser.h
man.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h
man.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h
man.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
man.o: ../functions/env.h ../functions/last.h ../functions/login.h
man.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
man.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
man.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
man.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
man.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
man.o: ../functions/sort.h ../functions/specialdefault.h ../functions/stat.h
man.o: ../functions/env.h ../functions/imgcrop.h ../functions/last.h
man.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
man.o: ../functions/ls.h ../functions/man.h ../functions/meta.h
man.o: ../functions/mkdir.h ../functions/mv.h ../functions/nicedit.h
man.o: ../functions/node.h ../functions/passwd.h ../functions/priv.h
man.o: ../functions/pw.h ../functions/reload.h ../functions/rm.h
man.o: ../functions/rmuser.h ../functions/sort.h
man.o: ../functions/specialdefault.h ../functions/stat.h
man.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h
man.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h
man.o: ../functions/who.h ../functions/vim.h
@ -764,13 +766,14 @@ priv.o: ../functions/functionparser.h ../functions/adduser.h
priv.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h
priv.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h
priv.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
priv.o: ../functions/env.h ../functions/last.h ../functions/login.h
priv.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
priv.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
priv.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
priv.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
priv.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
priv.o: ../functions/sort.h ../functions/specialdefault.h ../functions/stat.h
priv.o: ../functions/env.h ../functions/imgcrop.h ../functions/last.h
priv.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
priv.o: ../functions/ls.h ../functions/man.h ../functions/meta.h
priv.o: ../functions/mkdir.h ../functions/mv.h ../functions/nicedit.h
priv.o: ../functions/node.h ../functions/passwd.h ../functions/priv.h
priv.o: ../functions/pw.h ../functions/reload.h ../functions/rm.h
priv.o: ../functions/rmuser.h ../functions/sort.h
priv.o: ../functions/specialdefault.h ../functions/stat.h
priv.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h
priv.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h
priv.o: ../functions/who.h ../functions/vim.h
@ -947,13 +950,14 @@ sys.o: ../functions/functionparser.h ../functions/adduser.h
sys.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h
sys.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h
sys.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
sys.o: ../functions/env.h ../functions/last.h ../functions/login.h
sys.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
sys.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
sys.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
sys.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
sys.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
sys.o: ../functions/sort.h ../functions/specialdefault.h ../functions/stat.h
sys.o: ../functions/env.h ../functions/imgcrop.h ../functions/last.h
sys.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
sys.o: ../functions/ls.h ../functions/man.h ../functions/meta.h
sys.o: ../functions/mkdir.h ../functions/mv.h ../functions/nicedit.h
sys.o: ../functions/node.h ../functions/passwd.h ../functions/priv.h
sys.o: ../functions/pw.h ../functions/reload.h ../functions/rm.h
sys.o: ../functions/rmuser.h ../functions/sort.h
sys.o: ../functions/specialdefault.h ../functions/stat.h
sys.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h
sys.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h
sys.o: ../functions/who.h ../functions/vim.h ../templates/templates.h
@ -1037,17 +1041,17 @@ templates.o: ../functions/cat.h ../functions/chmod.h
templates.o: ../functions/privchanger.h ../functions/chown.h
templates.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
templates.o: ../functions/download.h ../functions/emacs.h ../functions/env.h
templates.o: ../functions/last.h ../functions/login.h ../functions/logout.h
templates.o: ../functions/ln.h ../functions/ls.h ../functions/man.h
templates.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h
templates.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
templates.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h
templates.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h
templates.o: ../functions/specialdefault.h ../functions/stat.h
templates.o: ../functions/subject.h ../functions/template.h
templates.o: ../functions/tinymce.h ../functions/uname.h
templates.o: ../functions/upload.h ../functions/uptime.h ../functions/who.h
templates.o: ../functions/vim.h ../templates/templates.h
templates.o: ../functions/imgcrop.h ../functions/last.h ../functions/login.h
templates.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
templates.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
templates.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
templates.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
templates.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
templates.o: ../functions/sort.h ../functions/specialdefault.h
templates.o: ../functions/stat.h ../functions/subject.h
templates.o: ../functions/template.h ../functions/tinymce.h
templates.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h
templates.o: ../functions/who.h ../functions/vim.h ../templates/templates.h
textextstream.o: textextstream.h ../core/textstream.h misc.h localefilter.h
textextstream.o: locale.h ../../pikotools/space/spaceparser.h
textextstream.o: ../../pikotools/space/space.h
@ -1238,14 +1242,15 @@ winix.o: ../functions/functionparser.h ../functions/adduser.h
winix.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h
winix.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h
winix.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
winix.o: ../functions/env.h ../functions/last.h ../functions/login.h
winix.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
winix.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h
winix.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
winix.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h
winix.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h
winix.o: ../functions/sort.h ../functions/specialdefault.h
winix.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
winix.o: ../functions/env.h ../functions/imgcrop.h ../functions/last.h
winix.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
winix.o: ../functions/ls.h ../functions/man.h ../functions/meta.h
winix.o: ../functions/mkdir.h ../functions/mv.h ../functions/nicedit.h
winix.o: ../functions/node.h ../functions/passwd.h ../functions/priv.h
winix.o: ../functions/pw.h ../functions/reload.h ../functions/rm.h
winix.o: ../functions/rmuser.h ../functions/sort.h
winix.o: ../functions/specialdefault.h ../functions/stat.h
winix.o: ../functions/subject.h ../functions/template.h
winix.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
winix.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
winix.o: ../templates/templates.h ../core/misc.h