Commit 05c7408a authored by Frank Bergmann's avatar Frank Bergmann

- OpenACS 5.9

parent e1cecbd2
......@@ -8,15 +8,17 @@
<singleton-p>t</singleton-p>
<auto-mount>attachments</auto-mount>
<version name="0.10" url="http://openacs.org/repository/download/apm/attachments-0.10.apm">
<version name="0.11d2" url="http://openacs.org/repository/download/apm/attachments-0.11d2.apm">
<owner url="http://openacs.org">OpenACS</owner>
<summary>Attachment support</summary>
<release-date>2003-11-10</release-date>
<maturity>2</maturity>
<release-date>2013-09-08</release-date>
<vendor url="http://openacs.org">OpenACS</vendor>
<description format="text/plain">Provide widgets and datamodel to support attachments on arbitrary objects. Used by forums.</description>
<provides url="attachments" version="0.10"/>
<requires url="file-storage" version="5.4.0"/>
<provides url="attachments" version="0.11d2"/>
<requires url="acs-kernel" version="5.8.1"/>
<requires url="file-storage" version="5.8.1"/>
<parameters>
<parameter datatype="string" min_n_values="1" max_n_values="1" name="RelativeUrl" default="attach" description="The relative url of this package when mounted under a client."/>
......
......@@ -5,28 +5,51 @@
<msg key="Add_File">Добавить файл</msg>
<msg key="Add_folder_Link">Добавить ссылку на папку</msg>
<msg key="Add_pretty_name">Добавить %pretty_name%</msg>
<msg key="Are_you_sure_detach">Вы уверены, что хотите удалить это вложение?</msg>
<msg key="Attach">Прикрепить</msg>
<msg key="attach_new">Прикрепить &lt;b&gt;новый&lt;/b&gt;:</msg>
<msg key="Attach_URL">Прикрепить URL</msg>
<msg key="Attachment">Вложение</msg>
<msg key="Can_delete">Это единственный объект который прилагается к данному сообщению. Вы также можете выбрать удаление этого из хранилища файлов.</msg>
<msg key="Choose">Выбрать</msg>
<msg key="delete_from_fs">Удалить это вложение из хранилища файлов?</msg>
<msg key="Description">Описание:</msg>
<msg key="Detach">Отделить</msg>
<msg key="Detach_file_from">Отделить файл от %object_name%</msg>
<msg key="File">Файл</msg>
<msg key="Last_Modified">Дата изм.</msg>
<msg key="Last_Modified">Последнее изменение</msg>
<msg key="lt_Add_Attachment_Folder">Добавить ссылку на папку вложений</msg>
<msg key="lt_Attach_a_File_to_pret">Прикрепить файл к %pretty_object_name%</msg>
<msg key="lt_contentscontent_size_">%contents.content_size% элемент</msg>
<msg key="lt_contentscontent_size__1">%contents.content_size% байт</msg>
<msg key="lt_Created_by_the_attach">Создано пакетом вложений</msg>
<msg key="lt_dont_know_how_to_deal">Неизвестно, как поступить с вложением типа %content_type%</msg>
<msg key="lt_Error_Attachment_root">Ошибка: Корневая папка вложения и корневая папка хранилища файла различны!</msg>
<msg key="lt_Error_empty_folder_id">Ошибка: пустой folder_id!</msg>
<msg key="lt_Folder_folder_name_is">Папка %folder_name% пуста</msg>
<msg key="lt_Found_file-storage_fo">Обнаружена папка хранилища XXX папки XXX ... хотите их связать?</msg>
<msg key="lt_No_file-storage_folde">Не найдены связанные папки файлового хранилища. Не хотели бы создать?</msg>
<msg key="lt_No_such_attachment_fo">Похожие вложения для этого объекта отсутствует</msg>
<msg key="lt_The_specified_parent_">Указаная родительская папка отсутствует.</msg>
<msg key="lt_To_attach_a_file_alre">Для того, чтобы приложить файл, находящийся в папке, откройте папку, нажав на её название, затем нажмите на &amp;quot;[ Choose ]&amp;quot; для связи с файлом. Если у вас есть соответствующие системные права, вы также сможете загрузить новый файл в папку. Для этого, откройте папку, нажав на ссылку. Ссылка &quot;Attach a new: File | URL&quot; будет доступна только если вы имеете соответствующие права.</msg>
<msg key="lt_Upload_New_Attachment">Загрузить новое вложение</msg>
<msg key="lt_Use_the_Browse_button">Нажав на кнопку &quot;Browse...&quot;, выберите файл, затем нажмите &quot;Open&quot; (&quot;Открыть&quot;).</msg>
<msg key="lt_Use_the_Browse_button">Используйте кнопку &quot;Browse...&quot; для выбора файла, затем нажмите &quot;Open&quot; (&quot;Открыть&quot;).</msg>
<msg key="lt_You_are_attaching_a_d">Вы присоединяете документ к %pretty_object_name%.</msg>
<msg key="lt_You_probably_clicked_">Вероятно, вы нажали на кнопку Добавить более одного раза. Проверьте, правильно ли загрузился файл в выбранную папку &lt;a href=&quot;%folder_url%&quot;&gt;папку&lt;/a&gt;, или воспользуйтесь кнопкой Назад для возврата и обновления версии файла.</msg>
<msg key="lt_Your_file_is_larger_t">Размер вашего файла больше разрешённого в этой системе (%max_number_of_bytes% байт)</msg>
<msg key="Name">Имя</msg>
<msg key="No_such_type">Тип отсутствует</msg>
<msg key="No_such_type">Такой тип отсутствует</msg>
<msg key="Object">Объект</msg>
<msg key="on_Object">к Объекту</msg>
<msg key="Only_detach">Это вложение прилагается к другим объектам. Вы можете только удалить его из данного объекта, но не удалить из хранилища файлов.</msg>
<msg key="remove">удалить</msg>
<msg key="Size">Размер</msg>
<msg key="Title">Название:</msg>
<msg key="Top">Верх страницы</msg>
<msg key="Top">Наверх</msg>
<msg key="Type">Тип</msg>
<msg key="URL">URL</msg>
<msg key="URL_1">URL:</msg>
<msg key="Version_filename_">Версия файла:</msg>
<msg key="you_are_attaching_document_to_object">Вы прикрепляете новый документ к %pretty_object_name%.</msg>
<msg key="you_are_attaching_url_to_object">Вы прикрепляете новый url к %pretty_object_name%.</msg>
</message_catalog>
......@@ -31,7 +31,7 @@ namespace eval attachments {
{-package_id ""}
} {
} {
if {[empty_string_p $package_id]} {
if {$package_id eq ""} {
# Get the package ID from the parent URL
array set parent_node [site_node::get_parent -node_id [ad_conn node_id]]
set package_id $parent_node(object_id)
......@@ -91,7 +91,7 @@ namespace eval attachments {
} {
toggle approved_p for attachment
} {
if {[empty_string_p $approved_p]} {
if {$approved_p eq ""} {
set approved_p [ad_decode [db_string select_attachment_approved_p {}] f t f]
}
......
<master>
<property name="title">#attachments.lt_Add_Attachment_Folder# </property>
<property name="doc(title)">#attachments.lt_Add_Attachment_Folder# </property>
<h3>#attachments.Add_folder_Link#</h3>
......
<master>
<property name="&doc">doc</property>
<property name="context">@context;noquote@</property>
<property name="context">@context;literal@</property>
<p>#attachments.lt_You_are_attaching_a_d#</p>
......
......@@ -25,17 +25,17 @@ set to_object_id $object_id
permission::require_permission -object_id $to_object_id -privilege write
# Give the object a nasty name if it doesn't have a pretty name
if {[empty_string_p $pretty_object_name]} {
if {$pretty_object_name eq ""} {
set pretty_object_name "[_ attachments.Object] #$to_object_id"
}
# Load up file storage information
if {[empty_string_p $folder_id]} {
if {$folder_id eq ""} {
set folder_id [attachments::get_root_folder]
}
# sanity check
if {[empty_string_p $folder_id]} {
if {$folder_id eq ""} {
ad_return_complaint 1 "[_ attachments.lt_Error_empty_folder_id]"
ad_script_abort
}
......
<master>
<property name="title">@title@</property>
<property name="context">@context@</property>
<property name="doc(title)">@title;literal@</property>
<property name="context">@context;literal@</property>
<formtemplate id="detach"></formtemplate>
\ No newline at end of file
......@@ -8,8 +8,8 @@ ad_page_contract {
@creation-date 2006-07-13
@cvs-id $Id$
} {
object_id:notnull
attachment_id:notnull
object_id:naturalnum,notnull
attachment_id:naturalnum,notnull
{return_url ""}
} -properties {
} -validate {
......@@ -72,7 +72,9 @@ ad_form \
} -on_request {
} -on_submit {
attachments::unattach -object_id $object_id -attachment_id $attachment_id
if {[exists_and_not_null delete_button] && !$attached_to_other_objects_n} {
if {([info exists delete_button] && $delete_button ne "")
&& !$attached_to_other_objects_n
} {
fs::delete_file -item_id $attachment_id
}
} -after_submit {
......
......@@ -8,8 +8,8 @@ ad_page_contract {
@creation-date 2 July 2002
@cvs-id $Id$
} {
object_id:integer,notnull
attachment_id:integer,notnull
object_id:naturalnum,notnull
attachment_id:naturalnum,notnull
}
# Permission check
......@@ -19,7 +19,7 @@ permission::require_permission -object_id $object_id -privilege read
# (and check that this is the right attachment while we're at it)
set version_id [db_string select_version_id {} -default {}]
if {[empty_string_p $version_id]} {
if {$version_id eq ""} {
ad_return_complaint "bad attachment"
ad_script_abort
return
......
......@@ -5,23 +5,23 @@ ad_page_contract {
@creation-date 6 Nov 2000
@cvs-id $Id$
} {
folder_id:integer,notnull
folder_id:naturalnum,notnull
upload_file:notnull,trim
upload_file.tmpfile:tmpfile
object_id:integer,notnull
object_id:naturalnum,notnull
return_url:notnull
title:notnull,trim
description
} -validate {
valid_folder -requires {folder_id:integer} {
if ![fs_folder_p $folder_id] {
if {![fs_folder_p $folder_id]} {
ad_complain "[_ attachments.lt_The_specified_parent_]"
}
}
max_size -requires {upload_file} {
set n_bytes [file size ${upload_file.tmpfile}]
set max_bytes [ad_parameter "MaximumFileSize"]
set max_bytes [parameter::get -parameter "MaximumFileSize"]
if { $n_bytes > $max_bytes } {
# Max number of bytes is used in the error message
set max_number_of_bytes [util_commify_number $max_bytes]
......@@ -31,10 +31,10 @@ ad_page_contract {
}
# Check for write permission on this folder
ad_require_permission $folder_id write
permission::require_permission -object_id $folder_id -privilege write
# Get the filename part of the upload file
if ![regexp {[^//\\]+$} $upload_file filename] {
if {![regexp {[^//\\]+$} $upload_file filename]} {
# no match
set filename $upload_file
}
......
<master>
<property name="title">#attachments.lt_Upload_New_Attachment#</property>
<property name="context">@context;noquote@</property>
<property name="doc(title)">#attachments.lt_Upload_New_Attachment#</property>
<property name="context">@context;literal@</property>
<p>#attachments.you_are_attaching_document_to_object#</p>
......@@ -11,10 +11,10 @@
<input type=hidden name="return_url" value="@return_url@">
</div>
<table border=0>
<table border="0">
<tr>
<td align=right>
<td align="right">
<label for="upload_file">#attachments.Version_filename_#</label></td>
<td><input type="file" name="upload_file" id="upload_file" size=20></td>
</tr>
......@@ -31,11 +31,11 @@
<tr>
<if @lock_title_p@ eq 0>
<td align=right><label for="title">#attachments.Title#</label></td>
<td align="right"><label for="title">#attachments.Title#</label></td>
<td><input size=30 name="title" id="title" value="@title@"></td>
</if>
<else>
<td align=right> #attachments.Title#
<td align="right"> #attachments.Title#
<input type=hidden name=title value=@title@>
</td>
<td>@title@</td>
......@@ -43,7 +43,7 @@
</tr>
<tr>
<td valign=top align=right>
<td valign="top" align="right">
<label for="description">#attachments.Description#</label>
</td>
<td>
......
......@@ -5,15 +5,15 @@ ad_page_contract {
@creation-date 6 Nov 2000
@cvs-id $Id$
} {
folder_id:integer,notnull
object_id:integer,notnull
folder_id:naturalnum,notnull
object_id:naturalnum,notnull
return_url:notnull
pretty_object_name:notnull
{title ""}
{lock_title_p 0}
{lock_title_p:boolean 0}
} -validate {
valid_folder -requires {folder_id:integer} {
if ![fs_folder_p $folder_id] {
if {![fs_folder_p $folder_id]} {
ad_complain "[_ attachments.lt_The_specified_parent_]"
}
}
......@@ -26,7 +26,7 @@ ad_page_contract {
# check for write permission on the folder
ad_require_permission $folder_id write
permission::require_permission -object_id $folder_id -privilege write
# set templating datasources
......@@ -37,7 +37,7 @@ set context [_ attachments.Add_File]
# double-click protection
# if title isn't passed in ignore lock_title_p
if {[empty_string_p $title]} {
if {$title eq ""} {
set lock_title_p 0
}
......@@ -4,16 +4,16 @@ ad_page_contract {
@author Ben Adida (ben@openforce.net)
} {
{object_id:integer,notnull}
{attachment_id:integer,notnull}
{object_id:naturalnum,notnull}
{attachment_id:naturalnum,notnull}
}
# We check permissions on the object
permission::require_permission -object_id $object_id -privilege read
# Get information about attachment
set content_type [item::get_type $attachment_id]
if { [string length $content_type] == 0 } {
set content_type [content::item::get_content_type -item_id $attachment_id]
if { $content_type eq "" } {
ad_return_complaint 1 [_ attachments.lt_No_such_attachment_fo]
return
}
......
......@@ -5,15 +5,15 @@ ad_page_contract {
@creation-date 6 Nov 2000
@cvs-id $Id$
} {
folder_id:integer,notnull
object_id:integer,notnull
folder_id:naturalnum,notnull
object_id:naturalnum,notnull
return_url:notnull
title:notnull,trim
description
url:notnull,trim
} -validate {
valid_folder -requires {folder_id:integer} {
if ![fs_folder_p $folder_id] {
if {![fs_folder_p $folder_id]} {
ad_complain "[_ attachments.lt_The_specified_parent_]"
}
}
......@@ -21,7 +21,7 @@ ad_page_contract {
}
# Check for write permission on this folder
ad_require_permission $folder_id write
permission::require_permission -object_id $folder_id -privilege write
db_transaction {
......
<master>
<property name="title">#attachments.Attach_URL#</property>
<property name="context">@context;noquote@</property>
<property name="doc(title)">#attachments.Attach_URL#</property>
<property name="context">@context;literal@</property>
<p>
#attachments.you_are_attaching_url_to_object#
......@@ -14,15 +14,15 @@
<input type=hidden name="return_url" value="@return_url@">
</div>
<table border=0>
<table border="0">
<tr>
<if @lock_title_p@ eq 0>
<td align=right><label for="title">#attachments.Title#</label></td>
<td align="right"><label for="title">#attachments.Title#</label></td>
<td><input size=30 name="title" value="@title@" id="title"></td>
</if>
<else>
<td align=right>#attachments.Title#</td>
<td align="right">#attachments.Title#</td>
<td>
@title@
<input type=hidden name="title" value="@title@">
......@@ -31,12 +31,12 @@
</tr>
<tr>
<td align=right><label for="url">#attachments.URL_1#</label></td>
<td align="right"><label for="url">#attachments.URL_1#</label></td>
<td><input size=50 name="url" value="http://" id="url"></td>
</tr>
<tr>
<td valign=top align=right><label for="description">#attachments.Description#</label></td>
<td valign="top" align="right"><label for="description">#attachments.Description#</label></td>
<td><textarea rows=5 cols=50 name="description" id="description"></textarea></td>
</tr>
......
ad_page_contract {
page to add a new nonversioned object to the system
@author Ben Adida (ben@openforce.net)
@author arjun (arjun@openforce.net)
@creation-date 01 April 2002
@cvs-id $Id$
} {
folder_id:integer,notnull
object_id:integer,notnull
return_url:notnull
pretty_object_name:notnull
{type "fs_url"}
{title ""}
{lock_title_p 0}
} -validate {
valid_folder -requires {folder_id:integer} {
if ![fs_folder_p $folder_id] {
ad_complain "[_ attachments.lt_The_specified_parent_]"
}
}
} -properties {
folder_id:onevalue
context:onevalue
}
# check for write permission on the folder
ad_require_permission $folder_id write
# set templating datasources
set pretty_name "URL"
if {[empty_string_p $pretty_name]} {
return -code error "[_ attachments.No_such_type]"
}
set context [_ attachments.Add_pretty_name [list pretty_name $pretty_name]]
#set context [fs_context_bar_list -final [_ attachments.Add_pretty_name [list pretty_name $pretty_name]] $folder_id]
# Should probably generate the item_id and version_id now for
# double-click protection
# if title isn't passed in ignore lock_title_p
if {[empty_string_p $title]} {
set lock_title_p 0
}
ad_page_contract {
page to add a new nonversioned object to the system
@author Ben Adida (ben@openforce.net)
@author arjun (arjun@openforce.net)
@creation-date 01 April 2002
@cvs-id $Id$
} {
folder_id:naturalnum,notnull
object_id:naturalnum,notnull
return_url:notnull
pretty_object_name:notnull
{type "fs_url"}
{title ""}
{lock_title_p:boolean 0}
} -validate {
valid_folder -requires {folder_id:integer} {
if {![fs_folder_p $folder_id]} {
ad_complain "[_ attachments.lt_The_specified_parent_]"
}
}
} -properties {
folder_id:onevalue
context:onevalue
}
# check for write permission on the folder
permission::require_permission -object_id $folder_id -privilege write
# set templating datasources
set pretty_name "URL"
if {$pretty_name eq ""} {
return -code error "[_ attachments.No_such_type]"
}
set context [_ attachments.Add_pretty_name [list pretty_name $pretty_name]]
#set context [fs_context_bar_list -final [_ attachments.Add_pretty_name [list pretty_name $pretty_name]] $folder_id]
# Should probably generate the item_id and version_id now for
# double-click protection
# if title isn't passed in ignore lock_title_p
if {$title eq ""} {
set lock_title_p 0
}
......@@ -5,8 +5,8 @@ ad_page_contract {
@cvs-id $Id$
} -query {
{object_id:integer,notnull}
{item_id:integer,notnull}
{object_id:naturalnum,notnull}
{item_id:naturalnum,notnull}
{approved_p ""}
{return_url:notnull}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment