OSDN Git Service

c5b1450343e277870376cf3b90823b780c1af944
[acs/acs.git] / webapp / modules / User / actions / FolderAction.class.php
1 <?php
2 /**
3  * ¥æ¡¼¥¶¤Î¥Õ¥©¥ë¥Àɽ¼¨
4  *
5  * @author  $Author: w-ota $
6  * @version $Revision: 1.10 $ $Date: 2006/05/26 08:44:05 $
7  */
8 //require_once(ACS_CLASS_DIR . 'ACSUserFolder.class.php');
9 class FolderAction extends BaseAction
10 {
11         /**
12          * ½é´ü²èÌÌ
13          * GET¥á¥½¥Ã¥É¤Î¾ì¹ç¡¢¸Æ¤Ð¤ì¤ë
14          */
15         function getDefaultView () {
16
17                 $context = $this->getContext();
18                 $controller = $context->getController();
19                 $request = $context->getRequest();
20                 $user = $context->getUser();
21
22                 /* ¥¨¥é¡¼¤ò¼èÆÀ */
23                 //$error_row = $user->getAttribute('error_row');
24                 //$user->removeAttribute('error_row');
25                 
26                 $target_user_community_id = $request->getParameter('id');
27                 $acs_user_info_row = $user->getAttribute('acs_user_info_row');
28                 $target_user_community_folder_id = $request->getParameter('folder_id');
29                 $mode = $request->getParameter('mode'); // É½¼¨¥â¡¼¥É
30
31                 $user_folder_obj = new ACSUserFolder($target_user_community_id,
32                                                                                          $acs_user_info_row,
33                                                                                          $target_user_community_folder_id);
34
35                 $target_user_info_row = ACSUser::get_user_info_row_by_user_community_id($request->getParameter('id'));
36
37
38                 // ¥°¥ë¡¼¥×ɽ¼¨
39                 $file_detail_info_row_array = array();
40                 if ($mode == 'group') {
41                         // ¥Õ¥¡¥¤¥ë¥ª¥Ö¥¸¥§¥¯¥È¤ÎÇÛÎó
42                         $target_folder_obj      = $user_folder_obj->get_folder_obj();
43                         $file_obj_array    = $target_folder_obj->get_file_obj_array();
44
45                         foreach ($file_obj_array as $file_obj) {
46                                 $file_detail_info_row = ACSFileDetailInfo::get_file_detail_info_row($file_obj->get_file_id());
47                                 if (!$file_detail_info_row['file_id']) {
48                                         // ¥Õ¥¡¥¤¥ë¾ÜºÙ¾ðÊó¤¬ÀßÄꤵ¤ì¤Æ¤Ê¤¤¾ì¹ç
49                                         $file_detail_info_row['file_id'] = $file_obj->get_file_id();
50                                 }
51                                 $file_detail_info_row['display_file_name'] = $file_obj->get_display_file_name();
52                                 $file_detail_info_row['thumbnail_server_file_name'] = $file_obj->get_thumbnail_server_file_name();
53                                 array_push($file_detail_info_row_array, $file_detail_info_row);
54                         }
55
56                         // ¥Õ¥¡¥¤¥ë¥«¥Æ¥´¥ê¥³¡¼¥É¤´¤È¤Î¥Õ¥¡¥¤¥ë¥³¥ó¥Æ¥ó¥Ä¼ïÊ̤ÎÏ¢ÁÛÇÛÎó¤ò¼èÆÀ¤¹¤ë
57                         $file_contents_type_master_row_array_array = ACSFileDetailInfo::get_file_contents_type_master_row_array_array();
58                 }
59
60
61                 // ¥Õ¥©¥ë¥À¤Î¸ø³«ÈϰϤǥ¢¥¯¥»¥¹À©¸æ
62                 if (!$user_folder_obj->has_privilege($target_user_info_row)) {
63                         $controller->forward(SECURE_MODULE, SECURE_ACTION);
64                         return;
65                 }
66
67                 $request->setAttribute('target_user_info_row', $target_user_info_row);
68                 $request->setAttribute('user_folder_obj', $user_folder_obj);
69                 $request->setAttribute('error_row', $error_row);
70
71                 $request->setAttribute('mode', $mode);
72                 if ($mode == 'group') {
73                         $request->setAttribute('file_detail_info_row_array', $file_detail_info_row_array);
74                         $request->setAttribute('file_contents_type_master_row_array_array', $file_contents_type_master_row_array_array);
75                 }
76
77                 return View::SUCCESS;
78         }
79
80         function execute() {
81                 return $this->getDefaultView();
82         }
83         
84         function isSecure () {
85                 return false;
86         }
87
88         function getRequestMethods () {
89                 return Request::POST | Request::GET;
90         }
91 }
92 ?>