Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
I
intranet-rest-fs-openacs
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
intranet-rest-fs-openacs
Commits
5e017e04
Commit
5e017e04
authored
Jan 22, 2019
by
Frank Bergmann
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
- Fixed version handling
parent
dc2d95f7
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
20 additions
and
11 deletions
+20
-11
file-tree.json.tcl
www/file-tree.json.tcl
+20
-11
No files found.
www/file-tree.json.tcl
View file @
5e017e04
...
...
@@ -55,7 +55,7 @@ set top_level [db_string top_level "select tree_level(tree_sortkey) from cr_item
set
sql
"
select
ci.item_id as file_id,
c
i.live_revision
as live_version_id,
c
oalesce(ci.live_revision,0)
as live_version_id,
ci.parent_id,
cr.revision_id, -- CR revision (OpenACS and PO files)
fv.version_id, -- CR revision (only PO files)
...
...
@@ -69,8 +69,14 @@ set sql "
ELSE ci.content_type
END AS type,
CASE WHEN bts.open_p = 'o' THEN 'true' ELSE 'false' END as expanded,
ci.*,
cr.*,
coalesce((select file_status_id from im_files where file_id = ci.item_id),0) as file_status_id,
coalesce((select file_type_id from im_files where file_id = ci.item_id),0) as file_type_id,
ci.latest_revision,
cr.title,
cr.description,
cr.publish_date,
cr.mime_type,
cr.content_length,
fv.*
from
cr_items parent_ci,
...
...
@@ -83,7 +89,6 @@ set sql "
bts.page_url = 'default' and
bts.user_id = :current_user_id
)
LEFT OUTER JOIN im_files f ON (ci.item_id = f.file_id)
-- add cr_revisions = file_versions using OUTER JOIN
LEFT OUTER JOIN cr_revisions cr ON (cr.item_id = ci.item_id)
LEFT OUTER JOIN im_file_versions fv ON (cr.revision_id = fv.version_id)
...
...
@@ -100,14 +105,16 @@ set sql "
# Write the list of files to a multirow,
# while storing the versions in a hash
multirow create file_multirow file_id parent_id
revision_id version_id file_name level num_children type
expanded
multirow create file_multirow file_id parent_id
live_version_id latest_version_id file_name level num_children type file_type_id file_status_id version_type_id version_status_id
expanded
set
file_id
""
set
old_file_id
""
db_foreach files
$sql
{
# Collect file versions in a hash
if
{
""
eq
$version
_status_id
}
{
set version_status_id
[
im_file_status_active
]
}
if
{
""
eq
$version
_type_id
}
{
set version_type_id
[
im_file_type_default
]
}
if
{
""
eq
$version
_status_id
}
{
set version_status_id
[
im_file_version_status_active
]
}
if
{
""
eq
$version
_type_id
}
{
set version_type_id
[
im_file_version_type_default
]
}
if
{
""
eq
$file
_status_id
}
{
set file_status_id
[
im_file_status_active
]
}
if
{
""
eq
$file
_type_id
}
{
set file_type_id
[
im_file_type_default
]
}
if
{
""
eq
$revision
_id
}
{
set revision_id 0
}
if
{
""
eq
$content
_length
}
{
set content_length 0
}
if
{
""
eq
$version
_sha1 && 0 ne
$revision
_id
}
{
...
...
@@ -132,8 +139,8 @@ db_foreach files $sql {
\"
mime_type
\"
:
\"
$mime
_type
\"
,
\"
title
\"
:
\"
[
im_quotejson
$title
]
\"
,
\"
description
\"
:
\"
[
im_quotejson
$description
]
\"
,
\"
status_id
\"
:
$version
_status_id,
\"
type_id
\"
:
$version
_type_id,
\"
version_
status_id
\"
:
$version
_status_id,
\"
version_
type_id
\"
:
$version
_type_id,
\"
creation_date
\"
:
\"
$version
_creation_date
\"
,
\"
modification_date
\"
:
\"
$version
_modification_date
\"
,
\"
sha1
\"
:
\"
$version
_sha1
\"
,
...
...
@@ -144,14 +151,14 @@ db_foreach files $sql {
# write out the multirow entry for the file
if
{
$old
_file_id ne
$file
_id
}
{
multirow append file_multirow
$file
_id
$parent
_id
$
revision
_id
$version
_id
$file
_name
$level
$num
_children
$type
$expanded
multirow append file_multirow
$file
_id
$parent
_id
$
live
_version_id
$latest
_revision
$file
_name
$level
$num
_children
$type
$file
_type_id
$file
_status_id
$version
_type_id
$version
_status_id
$expanded
set old_file_id
$file
_id
}
}
# Write out the last file multirow
if
{
""
ne
$file
_id
}
{
multirow append file_multirow
$file
_id
$parent
_id
$
revision
_id
$version
_id
$file
_name
$level
$num
_children
$type
$expanded
multirow append file_multirow
$file
_id
$parent
_id
$
live
_version_id
$latest
_revision
$file
_name
$level
$num
_children
$type
$file
_type_id
$file
_status_id
$version
_type_id
$version
_status_id
$expanded
}
#ad_return_complaint 1 [array get version_hash
]
...
...
@@ -224,6 +231,8 @@ ${indent}\t\"live_version_id\":$live_version_id,
${indent}
\t\"
name
\"
:
\"
$quoted
_file_name
\"
,
${indent}
\t\"
iconCls
\"
:
\"
icon-
$type
\"
,
${indent}
\t\"
expanded
\"
:
$expanded
,
${indent}
\t\"
status_id
\"
:
$file
_status_id,
${indent}
\t\"
type_id
\"
:
$file
_type_id,
"
if
{
"file"
eq
$type
}
{
append file_json
"
\
...
...
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