Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
sencha-filestorage
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
project-open
sencha-filestorage
Commits
7aafbf02
Commit
7aafbf02
authored
Jan 28, 2013
by
Frank Bergmann
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
- working on AJAX Filestorage
parent
42b5418a
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
125 additions
and
0 deletions
+125
-0
file-add.tcl
www/file-add.tcl
+90
-0
file-delete.tcl
www/file-delete.tcl
+35
-0
No files found.
www/file-add.tcl
0 → 100644
View file @
7aafbf02
ad_page_contract
{
page to add a new file to the system
@author Kevin Scaldeferri
(
kevin@arsdigita.com
)
@creation-date 6 Nov 2000
@cvs-id $Id$
}
{
{
ticket_id:integer
""
}
upload_file:trim,optional
upload_file.tmpfile:tmpfile,optional
{
title
""
}
{
description
""
}
}
if
{[
info
exists upload_file
]}
{
if
{
""
==
$title
}
{
set title
$upload
_file
}
}
else
{
ns_log Notice
"file-add: failure: upload_file does not exist"
ns_return 200
"text/html"
"{
\"
result
\"
: {
\"
success
\"
: false,
\"
errors
\"
: {
\"
upload_file
\"
:
\"
You have to specify a file to upload
\"
}
}
}"
ad_script_abort
}
# -------------------------------------------------------------
# Security
# -------------------------------------------------------------
set
user_id
[
im_rest_cookie_auth_user_id
]
# Get package. ad_conn package_id doesn't seem to work...
set
package_id
[
db_string package
"select min(package_id) from apm_packages where package_key = 'file-storage'"
]
set
mime_type
[
cr_filename_to_mime_type -create --
$upload
_file
]
set
folder_id
[
im_fs_content_folder_for_object -object_id
$ticket
_id
]
ns_log Notice
"file-add: user_id=
$user
_id, ticket_id=
$ticket
_id, mime_type=
$mime
_type, folder_id=
$folder
_id, upload_file=
[
im_opt_val upload_file
]
, title=
$title
, upload_file.tmpfile=
${upload_file.tmpfile}
"
set
permission_p
[
permission::permission_p
\
-object_id
$folder
_id
\
-party_id
$user
_id
\
-privilege
"write"
\
]
ns_log Notice
"file-add: permission_p=
$permission
_p"
if
{
1 !=
$permission
_p
}
{
ns_log Notice
"file-add: failure: User
\#
$user
_id doesn't have write permissions to folder
\#
$folder
_id"
doc_return 200
"text/html"
"{
\"
result
\"
: {
\"
success
\"
: false,
\"
errors
\"
: {
\"
permission
\"
:
\"
You do not have permission to write to folder
\#
$folder
_id
\"
}
}
}"
ad_script_abort
}
# -------------------------------------------------------------
# Create the new file in the FS
# -------------------------------------------------------------
if
{
""
!=
$upload
_file
}
{
set this_file_id
""
fs::add_file
\
-name
$upload
_file
\
-parent_id
$folder
_id
\
-tmp_filename
${upload_file.tmpfile}
\
-creation_user
$user
_id
\
-creation_ip
[
ad_conn peeraddr
]
\
-title
$title
\
-description
$description
\
-package_id
$package
_id
\
-mime_type
$mime
_type
}
set
folder_path
[
db_string folder_path
"select fs_folder_path from im_biz_objects where object_id = :ticket_id"
]
ns_log Notice
"file-add: success"
doc_return 200
"text/html"
"{
\"
result
\"
: {
\"
success
\"
: true,
\"
message
\"
:
\"
File successfully created
\"
,
\"
data
\"
:
\[
{
\"
fs_folder_id
\"
:
$folder
_id,
\"
fs_folder_path
\"
:
\"
$folder
_path
\"
}
\]
}
}"
ad_script_abort
www/file-delete.tcl
0 → 100644
View file @
7aafbf02
ad_page_contract
{
Delete a filestorage file
@author Frank Bergmann
@creation-date 6 May 2011
@cvs-id $Id$
}
{
item_id:integer
}
set
user_id
[
ad_conn user_id
]
# Get package. ad_conn package_id doesn't seem to work...
set
package_id
[
db_string package
"select min(package_id) from apm_packages where package_key = 'file-storage'"
]
ns_log Notice
"file-delete: item_id=
$item
_id, package_id=
$package
_id"
permission::require_permission
\
-object_id
$item
_id
\
-party_id
$user
_id
\
-privilege
"write"
fs::delete_file -item_id
$item
_id
db_release_unused_handles
ad_http_cache_control
ns_log Notice
"file-delete: success"
ns_return 200
"text/html"
"{
\"
result
\"
: {
\"
success
\"
: true,
\"
errors
\"
: {
\"
email
\"
:
\"
already taken
\"
}
}
}"
ad_script_abort
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment