From 2ab57d4d0aeef7ebfb16de7427f06d81cdae2d0d Mon Sep 17 00:00:00 2001
From: Julio Montoya '.Security::remove_XSS($my_folder_data['description']).'
';
+ if ($docData) {
+ $url = api_get_path(WEB_CODE_PATH).'work/add_document.php?action=delete&id='.$workId.'&document_id='.$documentId;
+ $link = Display::url(get_lang('Delete'), $url);
+ echo $docData['title'].' '.$link.'
';
+ }
+
}
echo '';
}
diff --git a/main/work/upload.php b/main/work/upload.php
index 66ffa4d1f2..95bdf390fa 100644
--- a/main/work/upload.php
+++ b/main/work/upload.php
@@ -26,6 +26,7 @@ $work_table = Database :: get_course_table(TABLE_STUDENT_PUBLICATION);
$is_allowed_to_edit = api_is_allowed_to_edit();
$course_id = api_get_course_int_id();
$user_id = api_get_user_id();
+$userInfo = api_get_user_info();
$session_id = api_get_session_id();
$course_code = api_get_course_id();
$course_info = api_get_course_info();
@@ -121,7 +122,7 @@ $form->addElement('header', $form_title);
$show_progress_bar = false;
if ($submitGroupWorkUrl) {
- // For user comming from group space to publish his work
+ // For user coming from group space to publish his work
$realUrl = str_replace($_configuration['root_sys'], api_get_path(WEB_PATH), str_replace("\\", '/', realpath($submitGroupWorkUrl)));
$form->addElement('hidden', 'newWorkUrl', $submitGroupWorkUrl);
$text_document = $form->addElement('text', 'document', get_lang('Document'));
@@ -162,6 +163,12 @@ if ($show_progress_bar) {
$form->add_real_progress_bar('uploadWork', 'file');
}
+$documentTemplateData = getDocumentTemplateFromWork($work_id, $course_info);
+if (!empty($documentTemplateData)) {
+ $defaults['title'] = $userInfo['complete_name'].'_'.$documentTemplateData['title'].'_'.substr(api_get_utc_datetime(), 0, 10);
+ $defaults['description'] = $documentTemplateData['file_content'];
+}
+
$form->setDefaults($defaults);
$error_message = null;
$_course = api_get_course_info();
diff --git a/main/work/work.lib.php b/main/work/work.lib.php
index 1a02643c75..d94fc22441 100644
--- a/main/work/work.lib.php
+++ b/main/work/work.lib.php
@@ -1774,7 +1774,8 @@ function get_work_user_list($start, $limit, $column, $direction, $work_id, $wher
if ($work['contains_file']) {
$link_to_download = ''.Display::return_icon('save.png', get_lang('Save'),array(), ICON_SIZE_SMALL).' ';
} else {
- $link_to_download = ''.Display::return_icon('default.png', get_lang('View'),array(), ICON_SIZE_SMALL).' ';
+ //api_get_cidreq()
+ //$link_to_download = ''.Display::return_icon('default.png', get_lang('View'),array(), ICON_SIZE_SMALL).' ';
}
$send_to = Portfolio::share('work', $work['id'], array('style' => 'white-space:nowrap;'));
@@ -1830,7 +1831,7 @@ function get_work_user_list($start, $limit, $column, $direction, $work_id, $wher
$action .= Display::return_icon('edit_na.png', get_lang('Modify'),array(), ICON_SIZE_SMALL);
}
if (api_get_course_setting('student_delete_own_publication') == 1) {
- $action .= ''.Display::return_icon('delete.png',get_lang('Delete'),'',ICON_SIZE_SMALL).'';
+ $action .= ' '.Display::return_icon('delete.png',get_lang('Delete'),'',ICON_SIZE_SMALL).'';
}
} else {
$action .= Display::return_icon('edit_na.png', get_lang('Modify'),array(), ICON_SIZE_SMALL);
@@ -2146,6 +2147,9 @@ function getDocumentToWork($documentId, $workId, $courseId)
function getAllDocumentToWork($workId, $courseId)
{
+ if (ADD_DOCUMENT_TO_WORK == false) {
+ return array();
+ }
$table = Database::get_course_table(TABLE_STUDENT_PUBLICATION_REL_DOCUMENT);
$params = array(
'work_id = ? and c_id = ?' => array($workId, $courseId)
@@ -2220,10 +2224,15 @@ function userIsSubscribedToWork($userId, $workId, $courseId)
return true;
}
$subscribedUsers = getAllUserToWork($workId, $courseId);
+
if (empty($subscribedUsers)) {
return true;
} else {
- if (in_array($userId, $subscribedUsers)) {
+ $subscribedUsersIdList = array();
+ foreach ($subscribedUsers as $item) {
+ $subscribedUsersIdList[] = $item['user_id'];
+ }
+ if (in_array($userId, $subscribedUsersIdList)) {
return true;
}
}
@@ -2244,3 +2253,20 @@ function allowOnlySubscribedUser($userId, $workId, $courseId)
}
+function getDocumentTemplateFromWork($workId, $courseInfo)
+{
+ $documents = getAllDocumentToWork($workId, $courseInfo['real_id']);
+ if (!empty($documents)) {
+ foreach ($documents as $doc) {
+ $docData = DocumentManager::get_document_data_by_id($doc['document_id'], $courseInfo['code']);
+ $fileInfo = pathinfo($docData['path']);
+ if ($fileInfo['extension'] == 'html') {
+ if (file_exists($docData['absolute_path']) && is_file($docData['absolute_path'])) {
+ $docData['file_content'] = file_get_contents($docData['absolute_path']);
+ return $docData;
+ }
+ }
+ }
+ }
+ return array();
+}
diff --git a/main/work/work_list.php b/main/work/work_list.php
index a39d9cb209..93c9558ec2 100644
--- a/main/work/work_list.php
+++ b/main/work/work_list.php
@@ -37,7 +37,6 @@ $url_dir = api_get_path(WEB_CODE_PATH).'work/work.php?'.api_get_cidreq();
allowOnlySubscribedUser(api_get_user_id(), $workId, $courseInfo['real_id']);
-
if (!empty($group_id)) {
$group_properties = GroupManager :: get_group_properties($group_id);
$show_work = false;
@@ -79,6 +78,21 @@ if (!empty($my_folder_data['description'])) {
echo '