added: to the Item: auth_path - a path to a static file (if auth is different from auth_none)

added: function 'mv' (move)



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@596 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
Tomasz Sowa 2010-03-15 01:47:26 +00:00
parent ebd868fa33
commit 6fbcffe63b
33 changed files with 1122 additions and 319 deletions

View File

@ -5,29 +5,29 @@ adduser.o: ../templates/patterncacher.h ../templates/misc.h
adduser.o: ../templates/localefilter.h ../core/locale.h
adduser.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
adduser.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
adduser.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
adduser.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
adduser.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
adduser.o: ../core/compress.h ../core/acceptencodingparser.h
adduser.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
adduser.o: ../core/postmultiparser.h ../core/ticket.h ../core/data.h
adduser.o: ../core/dirs.h ../core/dircontainer.h ../core/users.h
adduser.o: ../core/ugcontainer.h ../core/groups.h ../core/group.h
adduser.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
adduser.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
adduser.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
adduser.o: ../core/request.h ../core/requesttypes.h ../core/session.h
adduser.o: ../core/rebus.h ../core/function.h ../core/compress.h
adduser.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
adduser.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/data.h
adduser.o: ../core/dirs.h ../core/users.h ../core/groups.h
adduser.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
adduser.o: ../core/mount.h ../core/loadavg.h ../core/db.h
adduser.o: ../core/mount.h ../core/loadavg.h
cat.o: content.h ../core/item.h ../templates/templates.h
cat.o: ../templates/patterncacher.h ../templates/misc.h
cat.o: ../templates/localefilter.h ../core/locale.h
cat.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
cat.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
cat.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
cat.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
cat.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
cat.o: ../core/compress.h ../core/acceptencodingparser.h
cat.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
cat.o: ../core/postmultiparser.h ../core/ticket.h ../core/error.h
cat.o: ../core/data.h ../core/dirs.h ../core/dircontainer.h ../core/users.h
cat.o: ../core/ugcontainer.h ../core/groups.h ../core/group.h
cat.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
cat.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
cat.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
cat.o: ../core/request.h ../core/requesttypes.h ../core/session.h
cat.o: ../core/rebus.h ../core/function.h ../core/compress.h
cat.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
cat.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/error.h
cat.o: ../core/data.h ../core/dirs.h ../core/users.h ../core/groups.h
cat.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
cat.o: ../core/mount.h ../core/loadavg.h
content.o: content.h ../core/item.h ../templates/templates.h
@ -35,31 +35,30 @@ content.o: ../templates/patterncacher.h ../templates/misc.h
content.o: ../templates/localefilter.h ../core/locale.h
content.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
content.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
content.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
content.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
content.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
content.o: ../core/compress.h ../core/acceptencodingparser.h
content.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
content.o: ../core/postmultiparser.h ../core/ticket.h ../core/error.h
content.o: ../core/db.h ../core/group.h ../core/dircontainer.h
content.o: ../core/ugcontainer.h ../core/data.h ../core/dirs.h
content.o: ../core/users.h ../core/groups.h ../core/functions.h
content.o: ../core/lastcontainer.h ../core/mounts.h ../core/mount.h
content.o: ../core/loadavg.h ../core/misc.h ../core/plugin.h
content.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
content.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
content.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
content.o: ../core/request.h ../core/requesttypes.h ../core/session.h
content.o: ../core/rebus.h ../core/function.h ../core/compress.h
content.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
content.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/error.h
content.o: ../core/data.h ../core/dirs.h ../core/users.h ../core/groups.h
content.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
content.o: ../core/mount.h ../core/loadavg.h ../core/misc.h ../core/plugin.h
content.o: ../core/request.h ../core/data.h ../core/pluginmsg.h
createthread.o: content.h ../core/item.h ../templates/templates.h
createthread.o: ../templates/patterncacher.h ../templates/misc.h
createthread.o: ../templates/localefilter.h ../core/locale.h
createthread.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
createthread.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
createthread.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
createthread.o: ../core/group.h ../core/thread.h ../core/error.h
createthread.o: ../core/log.h ../core/dircontainer.h ../core/ugcontainer.h
createthread.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
createthread.o: ../core/session.h ../core/item.h ../core/error.h
createthread.o: ../core/log.h ../core/user.h ../core/rebus.h
createthread.o: ../core/function.h ../core/thread.h ../core/compress.h
createthread.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
createthread.o: ../core/htmlfilter.h ../core/postmultiparser.h
createthread.o: ../core/ticket.h ../core/error.h ../core/db.h ../core/group.h
createthread.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/mount.h
createthread.o: ../core/session.h ../core/rebus.h ../core/function.h
createthread.o: ../core/compress.h ../core/acceptencodingparser.h
createthread.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
createthread.o: ../core/postmultiparser.h ../core/error.h ../core/mount.h
createthread.o: ../core/data.h ../core/dirs.h ../core/users.h
createthread.o: ../core/groups.h ../core/functions.h ../core/lastcontainer.h
createthread.o: ../core/mounts.h ../core/mount.h ../core/loadavg.h
@ -68,14 +67,14 @@ createticket.o: ../templates/patterncacher.h ../templates/misc.h
createticket.o: ../templates/localefilter.h ../core/locale.h
createticket.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
createticket.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
createticket.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
createticket.o: ../core/group.h ../core/thread.h ../core/error.h
createticket.o: ../core/log.h ../core/dircontainer.h ../core/ugcontainer.h
createticket.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
createticket.o: ../core/session.h ../core/item.h ../core/error.h
createticket.o: ../core/log.h ../core/user.h ../core/rebus.h
createticket.o: ../core/function.h ../core/thread.h ../core/compress.h
createticket.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
createticket.o: ../core/htmlfilter.h ../core/postmultiparser.h
createticket.o: ../core/ticket.h ../core/error.h ../core/db.h ../core/group.h
createticket.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/mount.h
createticket.o: ../core/session.h ../core/rebus.h ../core/function.h
createticket.o: ../core/compress.h ../core/acceptencodingparser.h
createticket.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
createticket.o: ../core/postmultiparser.h ../core/error.h ../core/mount.h
createticket.o: ../core/data.h ../core/dirs.h ../core/users.h
createticket.o: ../core/groups.h ../core/functions.h ../core/lastcontainer.h
createticket.o: ../core/mounts.h ../core/mount.h ../core/loadavg.h
@ -84,63 +83,61 @@ default.o: ../templates/patterncacher.h ../templates/misc.h
default.o: ../templates/localefilter.h ../core/locale.h
default.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
default.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
default.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
default.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
default.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
default.o: ../core/compress.h ../core/acceptencodingparser.h
default.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
default.o: ../core/postmultiparser.h ../core/ticket.h ../core/error.h
default.o: ../core/db.h ../core/group.h ../core/dircontainer.h
default.o: ../core/ugcontainer.h ../core/data.h ../core/dirs.h
default.o: ../core/users.h ../core/groups.h ../core/functions.h
default.o: ../core/lastcontainer.h ../core/mounts.h ../core/mount.h
default.o: ../core/loadavg.h
default.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
default.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
default.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
default.o: ../core/request.h ../core/requesttypes.h ../core/session.h
default.o: ../core/rebus.h ../core/function.h ../core/compress.h
default.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
default.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/error.h
default.o: ../core/data.h ../core/dirs.h ../core/users.h ../core/groups.h
default.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
default.o: ../core/mount.h ../core/loadavg.h
download.o: content.h ../core/item.h ../templates/templates.h
download.o: ../templates/patterncacher.h ../templates/misc.h
download.o: ../templates/localefilter.h ../core/locale.h
download.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
download.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
download.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
download.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
download.o: ../core/user.h ../core/rebus.h ../core/function.h
download.o: ../core/thread.h ../core/compress.h
download.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
download.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
download.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
download.o: ../core/request.h ../core/requesttypes.h ../core/session.h
download.o: ../core/rebus.h ../core/function.h ../core/compress.h
download.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
download.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/ticket.h
download.o: ../core/data.h ../core/dirs.h ../core/dircontainer.h
download.o: ../core/users.h ../core/ugcontainer.h ../core/groups.h
download.o: ../core/group.h ../core/functions.h ../core/lastcontainer.h
download.o: ../core/mounts.h ../core/mount.h ../core/loadavg.h
download.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/data.h
download.o: ../core/dirs.h ../core/users.h ../core/groups.h
download.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
download.o: ../core/mount.h ../core/loadavg.h
editticket.o: content.h ../core/item.h ../templates/templates.h
editticket.o: ../templates/patterncacher.h ../templates/misc.h
editticket.o: ../templates/localefilter.h ../core/locale.h
editticket.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
editticket.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
editticket.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
editticket.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
editticket.o: ../core/user.h ../core/rebus.h ../core/function.h
editticket.o: ../core/thread.h ../core/compress.h
editticket.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
editticket.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
editticket.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
editticket.o: ../core/request.h ../core/requesttypes.h ../core/session.h
editticket.o: ../core/rebus.h ../core/function.h ../core/compress.h
editticket.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
editticket.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/ticket.h
editticket.o: ../core/error.h ../core/db.h ../core/group.h
editticket.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/mount.h
editticket.o: ../core/data.h ../core/dirs.h ../core/users.h ../core/groups.h
editticket.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
editticket.o: ../core/mount.h ../core/loadavg.h
editticket.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/error.h
editticket.o: ../core/mount.h ../core/data.h ../core/dirs.h ../core/users.h
editticket.o: ../core/groups.h ../core/functions.h ../core/lastcontainer.h
editticket.o: ../core/mounts.h ../core/mount.h ../core/loadavg.h
emacs.o: content.h ../core/item.h ../templates/templates.h
emacs.o: ../templates/patterncacher.h ../templates/misc.h
emacs.o: ../templates/localefilter.h ../core/locale.h
emacs.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
emacs.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
emacs.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
emacs.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
emacs.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
emacs.o: ../core/compress.h ../core/acceptencodingparser.h
emacs.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
emacs.o: ../core/postmultiparser.h ../core/ticket.h ../core/error.h
emacs.o: ../core/db.h ../core/group.h ../core/dircontainer.h
emacs.o: ../core/ugcontainer.h ../core/data.h ../core/dirs.h ../core/users.h
emacs.o: ../core/groups.h ../core/functions.h ../core/lastcontainer.h
emacs.o: ../core/mounts.h ../core/mount.h ../core/loadavg.h ../core/notify.h
emacs.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
emacs.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
emacs.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
emacs.o: ../core/request.h ../core/requesttypes.h ../core/session.h
emacs.o: ../core/rebus.h ../core/function.h ../core/compress.h
emacs.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
emacs.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/error.h
emacs.o: ../core/data.h ../core/dirs.h ../core/users.h ../core/groups.h
emacs.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
emacs.o: ../core/mount.h ../core/loadavg.h ../core/notify.h
emacs.o: ../templatesnotify/templatesnotify.h ../core/mount.h
emacs.o: ../templates/misc.h ../core/misc.h
last.o: content.h ../core/item.h ../templates/templates.h
@ -148,207 +145,230 @@ last.o: ../templates/patterncacher.h ../templates/misc.h
last.o: ../templates/localefilter.h ../core/locale.h
last.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
last.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
last.o: ../core/ticket.h
last.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
last.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
last.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
login.o: content.h ../core/item.h ../templates/templates.h
login.o: ../templates/patterncacher.h ../templates/misc.h
login.o: ../templates/localefilter.h ../core/locale.h
login.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
login.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
login.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
login.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
login.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
login.o: ../core/compress.h ../core/acceptencodingparser.h
login.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
login.o: ../core/postmultiparser.h ../core/ticket.h ../core/error.h
login.o: ../core/db.h ../core/group.h ../core/dircontainer.h
login.o: ../core/ugcontainer.h ../core/data.h ../core/dirs.h ../core/users.h
login.o: ../core/groups.h ../core/functions.h ../core/lastcontainer.h
login.o: ../core/mounts.h ../core/mount.h ../core/loadavg.h
login.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
login.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
login.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
login.o: ../core/request.h ../core/requesttypes.h ../core/session.h
login.o: ../core/rebus.h ../core/function.h ../core/compress.h
login.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
login.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/error.h
login.o: ../core/data.h ../core/dirs.h ../core/users.h ../core/groups.h
login.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
login.o: ../core/mount.h ../core/loadavg.h
logout.o: content.h ../core/item.h ../templates/templates.h
logout.o: ../templates/patterncacher.h ../templates/misc.h
logout.o: ../templates/localefilter.h ../core/locale.h
logout.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
logout.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
logout.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
logout.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
logout.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
logout.o: ../core/compress.h ../core/acceptencodingparser.h
logout.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
logout.o: ../core/postmultiparser.h ../core/ticket.h ../core/data.h
logout.o: ../core/dirs.h ../core/dircontainer.h ../core/users.h
logout.o: ../core/ugcontainer.h ../core/groups.h ../core/group.h
logout.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
logout.o: ../core/mount.h ../core/loadavg.h
logout.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
logout.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
logout.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
logout.o: ../core/request.h ../core/requesttypes.h ../core/session.h
logout.o: ../core/rebus.h ../core/function.h ../core/compress.h
logout.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
logout.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/data.h
logout.o: ../core/dirs.h ../core/users.h ../core/groups.h ../core/functions.h
logout.o: ../core/lastcontainer.h ../core/mounts.h ../core/mount.h
logout.o: ../core/loadavg.h
ls.o: content.h ../core/item.h ../templates/templates.h
ls.o: ../templates/patterncacher.h ../templates/misc.h
ls.o: ../templates/localefilter.h ../core/locale.h ../confparser/confparser.h
ls.o: ../templates/ckeditorgetparser.h ../core/httpsimpleparser.h
ls.o: ../core/log.h ../core/thread.h ../core/ticket.h ../core/request.h
ls.o: ../core/requesttypes.h ../core/session.h ../core/item.h ../core/error.h
ls.o: ../core/log.h ../core/user.h ../core/rebus.h ../core/function.h
ls.o: ../core/thread.h ../core/compress.h ../core/acceptencodingparser.h
ls.o: ../core/log.h ../core/thread.h ../core/ticket.h ../core/db.h
ls.o: ../core/item.h ../core/user.h ../core/group.h ../core/thread.h
ls.o: ../core/error.h ../core/log.h ../core/dircontainer.h
ls.o: ../core/ugcontainer.h ../core/ticket.h ../core/request.h
ls.o: ../core/requesttypes.h ../core/session.h ../core/rebus.h
ls.o: ../core/function.h ../core/compress.h ../core/acceptencodingparser.h
ls.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
ls.o: ../core/postmultiparser.h ../core/ticket.h ../core/db.h ../core/group.h
ls.o: ../core/dircontainer.h ../core/ugcontainer.h
ls.o: ../core/postmultiparser.h
misc_item.o: content.h ../core/item.h ../templates/templates.h
misc_item.o: ../templates/patterncacher.h ../templates/misc.h
misc_item.o: ../templates/localefilter.h ../core/locale.h
misc_item.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
misc_item.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
misc_item.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
misc_item.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
misc_item.o: ../core/user.h ../core/rebus.h ../core/function.h
misc_item.o: ../core/thread.h ../core/compress.h
misc_item.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
misc_item.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
misc_item.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
misc_item.o: ../core/request.h ../core/requesttypes.h ../core/session.h
misc_item.o: ../core/rebus.h ../core/function.h ../core/compress.h
misc_item.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
misc_item.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/ticket.h
misc_item.o: ../core/misc.h ../core/db.h ../core/group.h
misc_item.o: ../core/dircontainer.h ../core/ugcontainer.h
misc_item.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/misc.h
misc_specialfile.o: content.h ../core/item.h ../templates/templates.h
misc_specialfile.o: ../templates/patterncacher.h ../templates/misc.h
misc_specialfile.o: ../templates/localefilter.h ../core/locale.h
misc_specialfile.o: ../confparser/confparser.h
misc_specialfile.o: ../templates/ckeditorgetparser.h
misc_specialfile.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
misc_specialfile.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
misc_specialfile.o: ../core/session.h ../core/item.h ../core/error.h
misc_specialfile.o: ../core/log.h ../core/user.h ../core/rebus.h
misc_specialfile.o: ../core/function.h ../core/thread.h ../core/compress.h
misc_specialfile.o: ../core/ticket.h ../core/db.h ../core/item.h
misc_specialfile.o: ../core/user.h ../core/group.h ../core/thread.h
misc_specialfile.o: ../core/error.h ../core/log.h ../core/dircontainer.h
misc_specialfile.o: ../core/ugcontainer.h ../core/ticket.h ../core/request.h
misc_specialfile.o: ../core/requesttypes.h ../core/session.h ../core/rebus.h
misc_specialfile.o: ../core/function.h ../core/compress.h
misc_specialfile.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
misc_specialfile.o: ../core/htmlfilter.h ../core/postmultiparser.h
misc_specialfile.o: ../core/ticket.h ../core/data.h ../core/dirs.h
misc_specialfile.o: ../core/dircontainer.h ../core/users.h
misc_specialfile.o: ../core/ugcontainer.h ../core/groups.h ../core/group.h
misc_specialfile.o: ../core/functions.h ../core/lastcontainer.h
misc_specialfile.o: ../core/mounts.h ../core/mount.h ../core/loadavg.h
misc_specialfile.o: ../core/data.h ../core/dirs.h ../core/users.h
misc_specialfile.o: ../core/groups.h ../core/functions.h
misc_specialfile.o: ../core/lastcontainer.h ../core/mounts.h ../core/mount.h
misc_specialfile.o: ../core/loadavg.h
mkdir.o: content.h ../core/item.h ../templates/templates.h
mkdir.o: ../templates/patterncacher.h ../templates/misc.h
mkdir.o: ../templates/localefilter.h ../core/locale.h
mkdir.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
mkdir.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
mkdir.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
mkdir.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
mkdir.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
mkdir.o: ../core/compress.h ../core/acceptencodingparser.h
mkdir.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
mkdir.o: ../core/postmultiparser.h ../core/ticket.h ../core/error.h
mkdir.o: ../core/db.h ../core/group.h ../core/dircontainer.h
mkdir.o: ../core/ugcontainer.h ../core/data.h ../core/dirs.h ../core/users.h
mkdir.o: ../core/groups.h ../core/functions.h ../core/lastcontainer.h
mkdir.o: ../core/mounts.h ../core/mount.h ../core/loadavg.h ../core/notify.h
mkdir.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
mkdir.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
mkdir.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
mkdir.o: ../core/request.h ../core/requesttypes.h ../core/session.h
mkdir.o: ../core/rebus.h ../core/function.h ../core/compress.h
mkdir.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
mkdir.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/error.h
mkdir.o: ../core/data.h ../core/dirs.h ../core/users.h ../core/groups.h
mkdir.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
mkdir.o: ../core/mount.h ../core/loadavg.h ../core/notify.h
mkdir.o: ../templatesnotify/templatesnotify.h ../core/mount.h
mkdir.o: ../templates/misc.h
mv.o: content.h ../core/item.h ../templates/templates.h
mv.o: ../templates/patterncacher.h ../templates/misc.h
mv.o: ../templates/localefilter.h ../core/locale.h ../confparser/confparser.h
mv.o: ../templates/ckeditorgetparser.h ../core/httpsimpleparser.h
mv.o: ../core/log.h ../core/thread.h ../core/ticket.h ../core/db.h
mv.o: ../core/item.h ../core/user.h ../core/group.h ../core/thread.h
mv.o: ../core/error.h ../core/log.h ../core/dircontainer.h
mv.o: ../core/ugcontainer.h ../core/ticket.h ../core/request.h
mv.o: ../core/requesttypes.h ../core/session.h ../core/rebus.h
mv.o: ../core/function.h ../core/compress.h ../core/acceptencodingparser.h
mv.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
mv.o: ../core/postmultiparser.h ../core/data.h ../core/dirs.h ../core/users.h
mv.o: ../core/groups.h ../core/functions.h ../core/lastcontainer.h
mv.o: ../core/mounts.h ../core/mount.h ../core/loadavg.h
node.o: content.h ../core/item.h ../templates/templates.h
node.o: ../templates/patterncacher.h ../templates/misc.h
node.o: ../templates/localefilter.h ../core/locale.h
node.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
node.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
node.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
node.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
node.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
node.o: ../core/compress.h ../core/acceptencodingparser.h
node.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
node.o: ../core/postmultiparser.h ../core/ticket.h
node.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
node.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
node.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
node.o: ../core/request.h ../core/requesttypes.h ../core/session.h
node.o: ../core/rebus.h ../core/function.h ../core/compress.h
node.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
node.o: ../core/htmlfilter.h ../core/postmultiparser.h
priv.o: content.h ../core/item.h ../templates/templates.h
priv.o: ../templates/patterncacher.h ../templates/misc.h
priv.o: ../templates/localefilter.h ../core/locale.h
priv.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
priv.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
priv.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
priv.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
priv.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
priv.o: ../core/compress.h ../core/acceptencodingparser.h
priv.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
priv.o: ../core/postmultiparser.h ../core/ticket.h ../core/error.h
priv.o: ../core/db.h ../core/group.h ../core/dircontainer.h
priv.o: ../core/ugcontainer.h ../core/data.h ../core/dirs.h ../core/users.h
priv.o: ../core/groups.h ../core/functions.h ../core/lastcontainer.h
priv.o: ../core/mounts.h ../core/mount.h ../core/loadavg.h
priv.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
priv.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
priv.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
priv.o: ../core/request.h ../core/requesttypes.h ../core/session.h
priv.o: ../core/rebus.h ../core/function.h ../core/compress.h
priv.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
priv.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/error.h
priv.o: ../core/data.h ../core/dirs.h ../core/users.h ../core/groups.h
priv.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
priv.o: ../core/mount.h ../core/loadavg.h
reload.o: content.h ../core/item.h ../templates/templates.h
reload.o: ../templates/patterncacher.h ../templates/misc.h
reload.o: ../templates/localefilter.h ../core/locale.h
reload.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
reload.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
reload.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
reload.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
reload.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
reload.o: ../core/compress.h ../core/acceptencodingparser.h
reload.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
reload.o: ../core/postmultiparser.h ../core/ticket.h ../core/error.h
reload.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
reload.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
reload.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
reload.o: ../core/request.h ../core/requesttypes.h ../core/session.h
reload.o: ../core/rebus.h ../core/function.h ../core/compress.h
reload.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
reload.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/error.h
reload.o: ../core/notify.h ../templatesnotify/templatesnotify.h
reload.o: ../core/mount.h ../templates/misc.h
rm.o: content.h ../core/item.h ../templates/templates.h
rm.o: ../templates/patterncacher.h ../templates/misc.h
rm.o: ../templates/localefilter.h ../core/locale.h ../confparser/confparser.h
rm.o: ../templates/ckeditorgetparser.h ../core/httpsimpleparser.h
rm.o: ../core/log.h ../core/thread.h ../core/ticket.h ../core/request.h
rm.o: ../core/requesttypes.h ../core/session.h ../core/item.h ../core/error.h
rm.o: ../core/log.h ../core/user.h ../core/rebus.h ../core/function.h
rm.o: ../core/thread.h ../core/compress.h ../core/acceptencodingparser.h
rm.o: ../core/log.h ../core/thread.h ../core/ticket.h ../core/db.h
rm.o: ../core/item.h ../core/user.h ../core/group.h ../core/thread.h
rm.o: ../core/error.h ../core/log.h ../core/dircontainer.h
rm.o: ../core/ugcontainer.h ../core/ticket.h ../core/request.h
rm.o: ../core/requesttypes.h ../core/session.h ../core/rebus.h
rm.o: ../core/function.h ../core/compress.h ../core/acceptencodingparser.h
rm.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
rm.o: ../core/postmultiparser.h ../core/ticket.h ../core/error.h ../core/db.h
rm.o: ../core/group.h ../core/dircontainer.h ../core/ugcontainer.h
rm.o: ../core/data.h ../core/dirs.h ../core/users.h ../core/groups.h
rm.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
rm.o: ../core/mount.h ../core/loadavg.h
rm.o: ../core/postmultiparser.h ../core/error.h ../core/data.h ../core/dirs.h
rm.o: ../core/users.h ../core/groups.h ../core/functions.h
rm.o: ../core/lastcontainer.h ../core/mounts.h ../core/mount.h
rm.o: ../core/loadavg.h
run.o: content.h ../core/item.h ../templates/templates.h
run.o: ../templates/patterncacher.h ../templates/misc.h
run.o: ../templates/localefilter.h ../core/locale.h
run.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
run.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
run.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
run.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
run.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
run.o: ../core/compress.h ../core/acceptencodingparser.h
run.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
run.o: ../core/postmultiparser.h ../core/ticket.h ../core/error.h
run.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
run.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
run.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
run.o: ../core/request.h ../core/requesttypes.h ../core/session.h
run.o: ../core/rebus.h ../core/function.h ../core/compress.h
run.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
run.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/error.h
thread.o: content.h ../core/item.h ../templates/templates.h
thread.o: ../templates/patterncacher.h ../templates/misc.h
thread.o: ../templates/localefilter.h ../core/locale.h
thread.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
thread.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
thread.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
thread.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
thread.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
thread.o: ../core/compress.h ../core/acceptencodingparser.h
thread.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
thread.o: ../core/postmultiparser.h ../core/ticket.h ../core/db.h
thread.o: ../core/group.h ../core/dircontainer.h ../core/ugcontainer.h
thread.o: ../core/data.h ../core/dirs.h ../core/users.h ../core/groups.h
thread.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
thread.o: ../core/mount.h ../core/loadavg.h ../core/mount.h
thread.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
thread.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
thread.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
thread.o: ../core/request.h ../core/requesttypes.h ../core/session.h
thread.o: ../core/rebus.h ../core/function.h ../core/compress.h
thread.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
thread.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/data.h
thread.o: ../core/dirs.h ../core/users.h ../core/groups.h ../core/functions.h
thread.o: ../core/lastcontainer.h ../core/mounts.h ../core/mount.h
thread.o: ../core/loadavg.h ../core/mount.h
ticket.o: content.h ../core/item.h ../templates/templates.h
ticket.o: ../templates/patterncacher.h ../templates/misc.h
ticket.o: ../templates/localefilter.h ../core/locale.h
ticket.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
ticket.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
ticket.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
ticket.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
ticket.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
ticket.o: ../core/compress.h ../core/acceptencodingparser.h
ticket.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
ticket.o: ../core/postmultiparser.h ../core/ticket.h ../core/db.h
ticket.o: ../core/group.h ../core/dircontainer.h ../core/ugcontainer.h
ticket.o: ../core/data.h ../core/dirs.h ../core/users.h ../core/groups.h
ticket.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
ticket.o: ../core/mount.h ../core/loadavg.h ../core/mount.h
ticket.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
ticket.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
ticket.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
ticket.o: ../core/request.h ../core/requesttypes.h ../core/session.h
ticket.o: ../core/rebus.h ../core/function.h ../core/compress.h
ticket.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
ticket.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/data.h
ticket.o: ../core/dirs.h ../core/users.h ../core/groups.h ../core/functions.h
ticket.o: ../core/lastcontainer.h ../core/mounts.h ../core/mount.h
ticket.o: ../core/loadavg.h ../core/mount.h
upload.o: content.h ../core/item.h ../templates/templates.h
upload.o: ../templates/patterncacher.h ../templates/misc.h
upload.o: ../templates/localefilter.h ../core/locale.h
upload.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
upload.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
upload.o: ../core/ticket.h ../core/request.h ../core/requesttypes.h
upload.o: ../core/session.h ../core/item.h ../core/error.h ../core/log.h
upload.o: ../core/user.h ../core/rebus.h ../core/function.h ../core/thread.h
upload.o: ../core/compress.h ../core/acceptencodingparser.h
upload.o: ../core/acceptbaseparser.h ../core/htmlfilter.h
upload.o: ../core/postmultiparser.h ../core/ticket.h ../core/data.h
upload.o: ../core/dirs.h ../core/dircontainer.h ../core/users.h
upload.o: ../core/ugcontainer.h ../core/groups.h ../core/group.h
upload.o: ../core/functions.h ../core/lastcontainer.h ../core/mounts.h
upload.o: ../core/mount.h ../core/loadavg.h ../core/misc.h
upload.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
upload.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
upload.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h
upload.o: ../core/request.h ../core/requesttypes.h ../core/session.h
upload.o: ../core/rebus.h ../core/function.h ../core/compress.h
upload.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
upload.o: ../core/htmlfilter.h ../core/postmultiparser.h ../core/data.h
upload.o: ../core/dirs.h ../core/users.h ../core/groups.h ../core/functions.h
upload.o: ../core/lastcontainer.h ../core/mounts.h ../core/mount.h
upload.o: ../core/loadavg.h ../core/misc.h
who.o: content.h ../core/item.h ../templates/templates.h
who.o: ../templates/patterncacher.h ../templates/misc.h
who.o: ../templates/localefilter.h ../core/locale.h
who.o: ../confparser/confparser.h ../templates/ckeditorgetparser.h
who.o: ../core/httpsimpleparser.h ../core/log.h ../core/thread.h
who.o: ../core/ticket.h
who.o: ../core/ticket.h ../core/db.h ../core/item.h ../core/user.h
who.o: ../core/group.h ../core/thread.h ../core/error.h ../core/log.h
who.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/ticket.h

View File

@ -1 +1 @@
o = adduser.o cat.o content.o createthread.o createticket.o default.o download.o editticket.o emacs.o last.o login.o logout.o ls.o misc_item.o misc_specialfile.o mkdir.o node.o priv.o reload.o rm.o run.o thread.o ticket.o upload.o who.o
o = adduser.o cat.o content.o createthread.o createticket.o default.o download.o editticket.o emacs.o last.o login.o logout.o ls.o misc_item.o misc_specialfile.o mkdir.o mv.o node.o priv.o reload.o rm.o run.o thread.o ticket.o upload.o who.o

View File

@ -211,10 +211,10 @@ void Content::MakeStandardFunction()
else
if( request.pfunction->code == FUN_UPTIME )
{ /* do nothing */ }
/* else
else
if( request.pfunction->code == FUN_MV )
FunMv();
else
/* else
if( request.pfunction->code == FUN_UNAME )
FunUname();
*/
@ -309,6 +309,10 @@ void Content::MakePost()
PostFunAddUser();
break;
case FUN_MV:
PostFunMv();
break;
default:
log << log1 << "Content: unknown post function" << logend;
break;
@ -375,6 +379,9 @@ void Content::Make()
if( request.session->spam_score > 0 )
log << log1 << "Content: spam score: " << request.session->spam_score << logend;
if( request.IsParam("noredirect") )
request.redirect_to.clear();
if( !request.redirect_to.empty() )
return;
@ -397,7 +404,7 @@ void Content::Make()
// !! mozna zrobic jakas obsluge kiedy nie mozemy sie redirectnac, np gdy wystapil blad
// !! moze zwracac jakas wartosc?
void Content::RedirectTo(const Item & item)
void Content::RedirectTo(const Item & item, const char * postfix)
{
std::string path;
@ -418,11 +425,14 @@ std::string path;
request.redirect_to += path;
request.redirect_to += item.url;
}
if( postfix )
request.redirect_to += postfix;
}
void Content::RedirectTo(long item_id)
void Content::RedirectTo(long item_id, const char * postfix)
{
std::string path;
Item * pdir;
@ -455,6 +465,9 @@ Item * pdir;
log << log1 << "Content: Can't redirect: no such item: id: " << item_id << logend;
}
}
if( postfix )
request.redirect_to += postfix;
}

View File

@ -18,6 +18,7 @@
#include "../templates/templates.h"
#include "../core/thread.h"
#include "../core/ticket.h"
#include "../core/db.h"
@ -39,6 +40,34 @@ class Content
void PostFunAddUser();
void FunAddUser();
/*
mv
*/
bool MoveIsTheSameFile(const Item & item);
void MoveAuth(Item & item);
void MoveFile(Item & item, bool redirect = true);
void MoveDir(Item & item, bool redirect = true);
void MoveAuthPrepareQuery();
void MoveAuthContentOfDir(const Item & item);
bool MoveParseDir(long & dir_id, std::string & dir, std::string & file);
bool MoveCheckAccessFromToDir();
bool MoveCheckAccessFrom();
bool MoveCheckAccessTo(long dir_id);
bool MoveCheckMountPoints(long dir_id);
void MoveContentOfDir();
void PostFunMv();
void FunMv();
std::string mv_dir;
std::string mv_file;
std::string mv_new_path;
long mv_dir_id;
std::vector<Item> mv_auth;
Db::ItemQuery mv_auth_iq;
void SetDefaultFunctionForFile();
void SetDefaultFunctionForDir();
void SetDefaultFunction();
@ -143,13 +172,13 @@ class Content
void PostFunCreateThreadLogAndRedirect();
void PostFunCreateThread();
bool UploadCreatePath(std::string & path);
bool UploadCreatePath();
void UploadSaveFile(const std::string & tmp_filename, const std::string & destination);
void UploadMulti();
void UploadSingle();
bool FunUploadCheckAbuse();
void PostFunUpload();
std::string tmp_path;
bool FunCreateTicketCheckAccess();
void FunCreateTicket();
@ -177,8 +206,8 @@ class Content
void ReadTicketExpected(Ticket & ticket);
void ReadTicketProgress(Ticket & ticket);
void RedirectTo(const Item & item);
void RedirectTo(long item_id);
void RedirectTo(const Item & item, const char * postfix = 0);
void RedirectTo(long item_id, const char * postfix = 0);
void RedirectToLastDir();
void CheckGetPostTimes(time_t difference = 10);

View File

@ -20,7 +20,7 @@ void Content::FunDownload()
// !! moze wywalic to no_item i wszedzie w takich miejscach dac poprostu permission_denied?
if( !request.is_item )
{
log << log1 << "Content: pv function requires an item" << logend;
log << log1 << "Content: download function requires an item" << logend;
request.status = WINIX_ERR_NO_ITEM;
return;
}
@ -28,19 +28,14 @@ void Content::FunDownload()
if( !request.HasReadAccess(request.item) ||
request.item.auth == Item::auth_none ||
data.auth_simplefs_dir.empty() )
request.item.auth_path.empty() )
{
request.status = WINIX_ERR_PERMISSION_DENIED;
return;
}
request.send_as_attachment = request.IsParam("attachment");
if( !request.MakePath(request.x_sendfile) )
{
request.status = WINIX_ERR_PERMISSION_DENIED;
return;
}
request.x_sendfile = request.item.auth_path;
}

361
content/mv.cpp Executable file
View File

@ -0,0 +1,361 @@
/*
* This file is a part of Winix
* and is not publicly distributed
*
* Copyright (c) 2008-2010, Tomasz Sowa
* All rights reserved.
*
*/
#include <errno.h>
#include "content.h"
#include "../core/request.h"
#include "../core/data.h"
bool Content::MoveCheckAccessFromToDir()
{
Item * last;
Item * last_but_one = 0;
last = request.dir_table[request.dir_table.size()-1];
if( request.dir_table.size() >= 2 )
last_but_one = request.dir_table[request.dir_table.size()-2];
if( request.method != Request::post )
{
// used in GET (HEAD in the future?)
if( !request.HasWriteAccess(*last) &&
(!last_but_one || !request.HasWriteAccess(*last_but_one)) )
return false;
}
else
{
// used in POST when the moving is performed
if( request.IsPostVar("onlycontent") )
return request.HasWriteAccess(*last);
else
if( last_but_one )
return request.HasWriteAccess(*last_but_one);
else
return false; // you cannot move the root directory
}
return true;
}
bool Content::MoveCheckAccessFrom()
{
if( request.is_item )
{
// moving a file
if( !request.HasWriteAccess(*request.dir_table.back()) )
{
request.status = WINIX_ERR_PERMISSION_DENIED;
return false;
}
}
else
{
if( !MoveCheckAccessFromToDir() )
{
request.status = WINIX_ERR_PERMISSION_DENIED;
return false;
}
}
return true;
}
bool Content::MoveCheckAccessTo(long dir_id)
{
Item * pdir = data.dirs.GetDir(dir_id);
if( !pdir )
{
request.status = WINIX_ERR_INCORRECT_DIR;
return false;
}
if( !request.HasReadExecAccessToPath(dir_id) || !request.HasWriteAccess(*pdir) )
{
request.status = WINIX_ERR_PERMISSION_DENIED;
return false;
}
return true;
}
bool Content::MoveCheckMountPoints(long dir_id)
{
/*
Mount * new_mount = data.mounts.CalcMount(dir_id);
if( !new_mount )
{
if( data.mounts.pmount->type != Mount::cms )
{
request.status = WINIX_DIFFERENT_MOUNT_POINTS;
return false;
}
return true;
}
if( new_mount->type != data.mounts.pmount->type )
{
request.status = WINIX_DIFFERENT_MOUNT_POINTS;
return false;
}
*/
return true;
}
bool Content::MoveParseDir(long & dir_id, std::string & dir, std::string & file)
{
std::string * move_to = request.PostVar("moveto");
if( !move_to )
{
request.status = WINIX_ERR_PERMISSION_DENIED;
return false;
}
int res = data.dirs.AnalyzePath(*move_to, dir_id, dir, file);
if( res == 1 )
request.status = WINIX_ERR_NO_ROOT_DIR;
else
if( res != 0 )
request.status = WINIX_ERR_INCORRECT_DIR;
return res == 0;
}
void Content::MoveAuth(Item & item)
{
if( !request.MakePath(item, mv_new_path, true) )
{
request.status = WINIX_ERR_PERMISSION_DENIED;
return;
}
if( rename(item.auth_path.c_str(), mv_new_path.c_str()) == 0 )
{
log << log1 << "Content: moved static file from: " << item.auth_path << ", to: " << mv_new_path << logend;
item.auth_path = mv_new_path;
request.status = db.EditAuthById(item, item.id);
}
else
{
int err = errno;
log << log1 << "Content: can't move a file from: " << item.auth_path << ", to: " << mv_new_path << ", ";
log.SystemErr(err);
log << logend;
request.status = WINIX_ERR_PERMISSION_DENIED;
}
}
bool Content::MoveIsTheSameFile(const Item & item)
{
if( mv_file.empty() )
{
if( item.parent_id == mv_dir_id )
return true; // nothing to do
}
else
{
if( item.parent_id == mv_dir_id && item.url == mv_file )
return true; // nothing to do
}
return false;
}
void Content::MoveFile(Item & item, bool redirect)
{
if( MoveIsTheSameFile(item) )
return;
if( !mv_file.empty() )
{
item.url = mv_file;
PrepareUrl(item);
}
item.parent_id = mv_dir_id;
request.status = db.EditParentUrlById(item, item.id);
if( request.status == WINIX_ERR_OK )
{
log << log2 << "Content: the file was moved to: " << mv_dir << item.url << logend;
if( item.auth != Item::auth_none )
MoveAuth(item);
if( redirect )
RedirectTo(item);
}
}
void Content::MoveContentOfDir()
{
Db::ItemQuery iq;
iq.sel_parent_id = true;
iq.sel_type = true;
iq.sel_url = true;
iq.sel_auth = true;
iq.WhereParentId(request.dir_table.back()->id);
db.GetItems(request.item_table, iq);
for(size_t i=0 ; i<request.item_table.size() ; ++i)
{
if( request.item_table[i].type == Item::dir )
MoveDir(request.item_table[i], false);
else
MoveFile(request.item_table[i], false);
}
RedirectToLastDir();
}
void Content::MoveAuthPrepareQuery()
{
mv_auth_iq.SetAll(true, false);
mv_auth_iq.sel_parent_id = true;
mv_auth_iq.sel_type = true;
mv_auth_iq.sel_url = true;
mv_auth_iq.sel_auth = true;
mv_auth_iq.WhereType(Item::file);
mv_auth_iq.WhereAuth(Item::auth_none, false);
}
void Content::MoveAuthContentOfDir(const Item & item)
{
DirContainer::ParentIterator i = data.dirs.FindFirstParent(item.id);
// go through all directories
for( ; i != data.dirs.ParentEnd() ; i = data.dirs.NextParent(i) )
MoveAuthContentOfDir(*(i->second));
mv_auth_iq.WhereParentId(item.id);
// don't use request.item here (is used in MoveContentOfDir())
db.GetItems(mv_auth, mv_auth_iq);
for(size_t i=0 ; i<mv_auth.size() ; ++i)
MoveAuth(mv_auth[i]);
}
void Content::MoveDir(Item & item, bool redirect)
{
if( mv_file.empty() && mv_dir_id == item.id )
return; // nothing to do
if( mv_dir_id == item.id || data.dirs.HasParent(mv_dir_id, item.id) )
{
log << log1 << "Content: cannot move directory to inside it" << logend;
request.status = WINIX_ERR_INCORRECT_DIR;
return;
}
if( !data.dirs.ChangeParent(item.id, mv_dir_id) )
{
request.status = WINIX_ERR_INCORRECT_DIR;
return;
}
item.parent_id = mv_dir_id;
if( !mv_file.empty() )
{
item.url = mv_file;
PrepareUrl(item);
}
request.status = db.EditParentUrlById(item, item.id);
if( request.status == WINIX_ERR_OK )
{
log << log2 << "Content: the directory was moved to: " << mv_dir << item.url << logend;
MoveAuthContentOfDir(item);
if( redirect )
RedirectToLastDir();
}
}
void Content::PostFunMv()
{
if( MoveCheckAccessFrom() &&
MoveParseDir(mv_dir_id, mv_dir, mv_file) &&
MoveCheckAccessTo(mv_dir_id) &&
MoveCheckMountPoints(mv_dir_id) )
{
if( request.is_item )
{
MoveFile(request.item);
}
else
{
MoveAuthPrepareQuery();
if( request.IsPostVar("onlycontent") )
{
if( mv_file.empty() )
MoveContentOfDir();
else
request.status = WINIX_ERR_INCORRECT_DIR;
}
else
{
MoveDir(*request.dir_table.back());
}
}
}
}
void Content::FunMv()
{
MoveCheckAccessFrom();
}

View File

@ -33,9 +33,9 @@ return true;
bool Content::UploadCreatePath(std::string & path)
bool Content::UploadCreatePath()
{
if( !request.MakePath(path, true) )
if( !request.MakePath(request.item, true) )
{
request.status = WINIX_ERR_PERMISSION_DENIED;
return false;
@ -107,18 +107,21 @@ void Content::UploadMulti()
{
const char * file_name = i->second.filename.c_str();
request.item.subject = file_name;
request.item.url = file_name;
request.item.auth = SelectFileType(file_name);
request.item.subject = file_name;
request.item.url = file_name;
request.item.auth = SelectFileType(file_name);
PrepareUrl(request.item);
PostFunEmacsAdd(); // always adding a new item
if( !UploadCreatePath(tmp_path) )
if( !UploadCreatePath() )
return;
if( request.status == WINIX_ERR_OK )
UploadSaveFile(i->second.tmp_filename, tmp_path);
{
UploadSaveFile(i->second.tmp_filename, request.item.auth_path);
request.status = db.EditAuthById(request.item, request.item.id);
}
}
RedirectToLastDir();
@ -149,23 +152,19 @@ void Content::UploadSingle()
PostFunEmacsAdd(); // always adding a new item
// url can be changed by PostFunEmacsAdd()
if( !UploadCreatePath() )
return;
if( request.status == WINIX_ERR_OK )
{
const std::string & tmp_filename = request.post_file_table.begin()->second.tmp_filename;
if( !UploadCreatePath(tmp_path) )
return;
UploadSaveFile(tmp_filename, tmp_path);
UploadSaveFile(tmp_filename, request.item.auth_path);
request.status = db.EditAuthById(request.item, request.item.id);
}
if( request.status == WINIX_ERR_OK )
{
if( !request.IsParam("ckeditor_upload") )
RedirectTo(request.item);
}
RedirectTo(request.item, "/cat");
}

View File

@ -83,15 +83,15 @@ requestcontroller.o: ../templates/templates.h ../templates/patterncacher.h
requestcontroller.o: misc.h item.h ../templates/ckeditorgetparser.h
requestcontroller.o: ../core/httpsimpleparser.h ../core/log.h
requestcontroller.o: ../core/locale.h ../confparser/confparser.h
requestcontroller.o: ../core/thread.h ../core/ticket.h sessionmanager.h
requestcontroller.o: sessioncontainer.h session.h error.h log.h user.h
requestcontroller.o: rebus.h functionparser.h requesttypes.h data.h dirs.h
requestcontroller.o: dircontainer.h users.h ugcontainer.h groups.h group.h
requestcontroller.o: ../core/thread.h ../core/ticket.h ../core/db.h user.h
requestcontroller.o: group.h thread.h error.h log.h dircontainer.h
requestcontroller.o: ugcontainer.h ticket.h sessionmanager.h
requestcontroller.o: sessioncontainer.h session.h rebus.h functionparser.h
requestcontroller.o: requesttypes.h data.h dirs.h users.h groups.h
requestcontroller.o: functions.h function.h lastcontainer.h mounts.h mount.h
requestcontroller.o: loadavg.h request.h thread.h compress.h
requestcontroller.o: acceptencodingparser.h acceptbaseparser.h htmlfilter.h
requestcontroller.o: postmultiparser.h ticket.h postparser.h
requestcontroller.o: httpsimpleparser.h cookieparser.h notify.h
requestcontroller.o: loadavg.h request.h compress.h acceptencodingparser.h
requestcontroller.o: acceptbaseparser.h htmlfilter.h postmultiparser.h
requestcontroller.o: postparser.h httpsimpleparser.h cookieparser.h notify.h
requestcontroller.o: ../templatesnotify/templatesnotify.h ../core/mount.h
requestcontroller.o: ../templates/misc.h ../templates/localefilter.h
session.o: session.h item.h error.h log.h user.h rebus.h

View File

@ -301,7 +301,8 @@ return status;
//!! wywalic z nazwy 'Subject' nic nie jest robione z tytulem
// ta metoda uzywana tez jest w EditParentUrlById()
bool Db::AddItemCreateUrlSubject(Item & item)
{
bool is_that_url;
@ -455,7 +456,7 @@ Error Db::AddItemIntoItem(Item & item)
AssertConnection();
std::ostringstream query;
query << "insert into core.item (user_id, group_id, privileges, date_creation, date_modification, type, "
"parent_id, content_id, auth, default_item, subject, guest_name, url) values (";
"parent_id, content_id, auth, auth_path, default_item, subject, guest_name, url) values (";
query << '\'' << item.user_id << "', ";
query << '\'' << item.group_id << "', ";
query << '\'' << item.privileges << "', ";
@ -464,7 +465,8 @@ Error Db::AddItemIntoItem(Item & item)
query << '\'' << static_cast<int>(item.type) << "', ";
query << '\'' << item.parent_id << "', ";
query << '\'' << item.content_id << "', ";
query << '\'' << static_cast<int>(item.auth) << "', ";
query << '\'' << static_cast<int>(item.auth) << "', ";
query << '\'' << Escape(item.auth_path) << "', ";
query << '\'' << item.default_item << "', ";
query << '\'' << Escape(item.subject) << "', ";
query << '\'' << Escape(item.guest_name) << "', ";
@ -561,7 +563,7 @@ Error Db::EditItemInItem(Item & item, bool with_url)
AssertConnection();
std::ostringstream query;
query << "update core.item set (user_id, group_id, privileges, date_creation, date_modification, type, "
"default_item, parent_id, subject, guest_name, auth";
"default_item, parent_id, subject, guest_name, auth, auth_path";
if( with_url )
query << ", url";
@ -577,7 +579,8 @@ Error Db::EditItemInItem(Item & item, bool with_url)
query << '\'' << item.parent_id << "', ";
query << '\'' << Escape(item.subject) << "', ";
query << '\'' << Escape(item.guest_name) << "', ";
query << '\'' << static_cast<int>(item.auth) << "' ";
query << '\'' << static_cast<int>(item.auth) << "', ";
query << '\'' << Escape(item.auth_path) << "' ";
if( with_url )
{
@ -802,7 +805,7 @@ PGresult * Db::GetItemsQuery(const ItemQuery & iq)
if( iq.sel_url ) query << " ,url";
if( iq.sel_type ) query << " ,type";
if( iq.sel_default_item ) query << " ,default_item";
if( iq.sel_auth ) query << " ,auth";
if( iq.sel_auth ) query << " ,auth, auth_path";
query << " from core.item";
@ -818,7 +821,19 @@ PGresult * Db::GetItemsQuery(const ItemQuery & iq)
if( iq.where_id ) { query << if_and << "id='" << iq.id << "'" ; if_and = add_and; }
if( iq.where_parent_id ) { query << if_and << "parent_id='" << iq.parent_id << "'" ; if_and = add_and; }
if( iq.where_type ) { query << if_and << "type='" << static_cast<int>(iq.type) << "'" ; if_and = add_and; }
if( iq.where_auth ) { query << if_and << "auth='" << static_cast<int>(iq.auth) << "'" ; if_and = add_and; }
if( iq.where_auth )
{
query << if_and << "auth";
if(iq.auth_equal )
query << "=";
else
query << "!=";
query << "'" << static_cast<int>(iq.auth) << "'";
if_and = add_and;
}