+
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/default/multimedia_view_main_toolbar.html.bk b/multimedia/templates/default/multimedia_view_main_toolbar.html.bk
new file mode 100644
index 0000000..de4adf7
--- /dev/null
+++ b/multimedia/templates/default/multimedia_view_main_toolbar.html.bk
@@ -0,0 +1,122 @@
+<{strip}>
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_player_list.xml b/multimedia/templates/jplayer/multimedia_player_list.xml
new file mode 100644
index 0000000..1e187a8
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_player_list.xml
@@ -0,0 +1,29 @@
+"?>
+<{strip}>
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_edit_display.html b/multimedia/templates/jplayer/multimedia_view_edit_display.html
new file mode 100644
index 0000000..8e344d6
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_edit_display.html
@@ -0,0 +1,103 @@
+<{strip}>
+<{* 動画配信表示方法変更画面用テンプレート *}>
+
+<{include file="../multimedia_script.html"}>
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_edit_entry.html b/multimedia/templates/jplayer/multimedia_view_edit_entry.html
new file mode 100644
index 0000000..727c16d
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_edit_entry.html
@@ -0,0 +1,77 @@
+<{strip}>
+
+<{include file="../multimedia_script.html"}>
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_handle.html b/multimedia/templates/jplayer/multimedia_view_handle.html
new file mode 100644
index 0000000..7c689bd
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_handle.html
@@ -0,0 +1,10 @@
+<{strip}>
+<{* ハンドル名用テンプレート *}>
+<{if empty($smarty.session._login_id|smarty:nodefaults)}>
+ <{$handle}>
+<{else}>
+
+<{/if}>
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_album_entry.html b/multimedia/templates/jplayer/multimedia_view_main_album_entry.html
new file mode 100644
index 0000000..f9aa56f
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_album_entry.html
@@ -0,0 +1,101 @@
+<{strip}>
+
+<{include file="../multimedia_script.html"}>
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_album_jacket.html b/multimedia/templates/jplayer/multimedia_view_main_album_jacket.html
new file mode 100644
index 0000000..72a7d64
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_album_jacket.html
@@ -0,0 +1,7 @@
+<{strip}>
+<{if empty($action.album_obj.upload_id|smarty:nodefaults)}>
+
+<{/if}>
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_album_sequence.html b/multimedia/templates/jplayer/multimedia_view_main_album_sequence.html
new file mode 100644
index 0000000..d39eeb9
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_album_sequence.html
@@ -0,0 +1,79 @@
+<{strip}>
+<{if $action.album_count == 0}>
+ <{$lang.multimedia_no_album|smarty:nodefaults}>
+ <{include file="../multimedia_script.html"}>
+<{else}>
+
+ <{include file="../multimedia_script.html"}>
+
+<{/if}>
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_channel.html b/multimedia/templates/jplayer/multimedia_view_main_channel.html
new file mode 100644
index 0000000..2f25d57
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_channel.html
@@ -0,0 +1,86 @@
+<{strip}>
+<{if !$action.album_edit_flag}>
+ <{include file = "multimedia_view_main_search.html"}>
+
+<{include file="../multimedia_script.html"}>
+
+<{/strip}>
diff --git a/multimedia/templates/jplayer/multimedia_view_main_channel_operation.html b/multimedia/templates/jplayer/multimedia_view_main_channel_operation.html
new file mode 100644
index 0000000..24a88d9
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_channel_operation.html
@@ -0,0 +1,38 @@
+<{strip}>
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_comment.html b/multimedia/templates/jplayer/multimedia_view_main_comment.html
new file mode 100644
index 0000000..5f5075a
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_comment.html
@@ -0,0 +1,56 @@
+<{strip}>
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_item.html b/multimedia/templates/jplayer/multimedia_view_main_item.html
new file mode 100644
index 0000000..b086a35
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_item.html
@@ -0,0 +1,20 @@
+<{strip}>
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_item_detail.html b/multimedia/templates/jplayer/multimedia_view_main_item_detail.html
new file mode 100644
index 0000000..cdec39e
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_item_detail.html
@@ -0,0 +1,124 @@
+<{strip}>
+
+<{include file="../multimedia_script.html"}>
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_item_edit.html b/multimedia/templates/jplayer/multimedia_view_main_item_edit.html
new file mode 100644
index 0000000..2894cf1
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_item_edit.html
@@ -0,0 +1,72 @@
+<{strip}>
+<{* 動画登録画面用テンプレート *}>
+
+<{include file="../multimedia_script.html"}>
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_item_iframe.html b/multimedia/templates/jplayer/multimedia_view_main_item_iframe.html
new file mode 100644
index 0000000..81d8a2d
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_item_iframe.html
@@ -0,0 +1,2 @@
+<{strip}>
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_item_info.html b/multimedia/templates/jplayer/multimedia_view_main_item_info.html
new file mode 100644
index 0000000..124e521
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_item_info.html
@@ -0,0 +1,28 @@
+<{strip}>
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_item_init.html b/multimedia/templates/jplayer/multimedia_view_main_item_init.html
new file mode 100644
index 0000000..1786863
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_item_init.html
@@ -0,0 +1,219 @@
+<{strip}>
+<{include file = "multimedia_view_main_search.html"}>
+
+<{include file="../multimedia_script.html"}>
+<{if $action.drag_drop == $smarty.const._ON}>
+
+<{/if}>
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_item_search_list.html b/multimedia/templates/jplayer/multimedia_view_main_item_search_list.html
new file mode 100644
index 0000000..a16aa48
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_item_search_list.html
@@ -0,0 +1,37 @@
+<{strip}>
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_item_thumbnail.html b/multimedia/templates/jplayer/multimedia_view_main_item_thumbnail.html
new file mode 100644
index 0000000..cb0dd7a
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_item_thumbnail.html
@@ -0,0 +1,27 @@
+<{strip}>
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_item_upload.html b/multimedia/templates/jplayer/multimedia_view_main_item_upload.html
new file mode 100644
index 0000000..6c3140a
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_item_upload.html
@@ -0,0 +1,107 @@
+<{strip}>
+
+<{include file="../multimedia_script.html"}>
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_list.html b/multimedia/templates/jplayer/multimedia_view_main_list.html
new file mode 100644
index 0000000..5504b50
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_list.html
@@ -0,0 +1,25 @@
+<{strip}>
+<{include file = "multimedia_view_main_search.html"}>
+
+<{include file="../multimedia_script.html"}>
+<{*
+<{include file="../multimedia_jquery_script.html"}>
+*}>
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_list_operation.html b/multimedia/templates/jplayer/multimedia_view_main_list_operation.html
new file mode 100644
index 0000000..ad89fa2
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_list_operation.html
@@ -0,0 +1,68 @@
+<{strip}>
+<{if $action.multimedia_obj.album_authority}>
+
+<{include file = "multimedia_view_main_toolbar.html" from="list"}>
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_pager.html b/multimedia/templates/jplayer/multimedia_view_main_pager.html
new file mode 100644
index 0000000..0e16341
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_pager.html
@@ -0,0 +1,35 @@
+<{strip}>
+<{if $action.pager.total_page > 1}>
+
+<{/if}>
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_play.html b/multimedia/templates/jplayer/multimedia_view_main_play.html
new file mode 100644
index 0000000..26dae42
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_play.html
@@ -0,0 +1,77 @@
+<{strip}>
+
+
+
+
+
+
+
+
+
+
+
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_search.html b/multimedia/templates/jplayer/multimedia_view_main_search.html
new file mode 100644
index 0000000..fc87958
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_search.html
@@ -0,0 +1,53 @@
+
+
\ No newline at end of file
diff --git a/multimedia/templates/jplayer/multimedia_view_main_toolbar.html b/multimedia/templates/jplayer/multimedia_view_main_toolbar.html
new file mode 100644
index 0000000..de4adf7
--- /dev/null
+++ b/multimedia/templates/jplayer/multimedia_view_main_toolbar.html
@@ -0,0 +1,122 @@
+<{strip}>
+
multimedia_video_box<{/if}>">
+
+
+<{/strip}>
\ No newline at end of file
diff --git a/multimedia/templates/multimedia_jquery_script.html b/multimedia/templates/multimedia_jquery_script.html
new file mode 100644
index 0000000..dc3e15e
--- /dev/null
+++ b/multimedia/templates/multimedia_jquery_script.html
@@ -0,0 +1,26 @@
+
+
+
+
+<{*
+
+
+
+
+
+
+
+*}>
\ No newline at end of file
diff --git a/multimedia/validator/Validator_AlbumExist.class.php b/multimedia/validator/Validator_AlbumExist.class.php
index c727124..5b47f3e 100644
--- a/multimedia/validator/Validator_AlbumExist.class.php
+++ b/multimedia/validator/Validator_AlbumExist.class.php
@@ -1,46 +1,46 @@
-getComponent("multimediaView");
-
- $album = $multimediaView->getAlbum($attributes);
- if(empty($album)) {
- return $errStr;
- }
-
- $request =& $container->getComponent("Request");
- $request->setParameter("album", $album);
-
- return;
- }
-}
+getComponent("multimediaView");
+
+ $album = $multimediaView->getAlbum($attributes);
+ if(empty($album)) {
+ return $errStr;
+ }
+
+ $request =& $container->getComponent("Request");
+ $request->setParameter("album", $album);
+
+ return;
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/validator/Validator_CommentExist.class.php b/multimedia/validator/Validator_CommentExist.class.php
index eb1dfcc..97d8132 100644
--- a/multimedia/validator/Validator_CommentExist.class.php
+++ b/multimedia/validator/Validator_CommentExist.class.php
@@ -1,43 +1,43 @@
-getComponent("DbObject");
-
- $comment = $db->selectExecute("multimedia_comment", array("comment_id" => intval($attributes)));
- if(empty($comment)) {
- return $errStr;
- }
-
- return;
- }
-}
+getComponent("DbObject");
+
+ $comment = $db->selectExecute("multimedia_comment", array("comment_id" => intval($attributes)));
+ if(empty($comment)) {
+ return $errStr;
+ }
+
+ return;
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/validator/Validator_ItemExist.class.php b/multimedia/validator/Validator_ItemExist.class.php
index 5e5ff38..4b0c418 100644
--- a/multimedia/validator/Validator_ItemExist.class.php
+++ b/multimedia/validator/Validator_ItemExist.class.php
@@ -1,46 +1,46 @@
-getComponent("multimediaView");
-
- $item = $multimediaView->getItem($attributes);
- if(empty($item)) {
- return $errStr;
- }
-
- $request =& $container->getComponent("Request");
- $request->setParameter("item", $item);
-
- return;
- }
-}
+getComponent("multimediaView");
+
+ $item = $multimediaView->getItem($attributes);
+ if(empty($item)) {
+ return $errStr;
+ }
+
+ $request =& $container->getComponent("Request");
+ $request->setParameter("item", $item);
+
+ return;
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/validator/Validator_ItemUpload.class.php b/multimedia/validator/Validator_ItemUpload.class.php
index 9bedf7b..8ee103e 100644
--- a/multimedia/validator/Validator_ItemUpload.class.php
+++ b/multimedia/validator/Validator_ItemUpload.class.php
@@ -1,191 +1,323 @@
-getComponent("DbObject");
- $fileUpload =& $container->getComponent("FileUpload");
- $uploadsAction =& $container->getComponent("uploadsAction");
-
- $filterChain =& $container->getComponent("FilterChain");
- $smartyAssign =& $filterChain->getFilterByName("SmartyAssign");
- $multimediaAction =& $container->getComponent("multimediaAction");
-
- if(!isset($attributes['multimedia_id']) || !isset($attributes['album_id']) || !isset($attributes['privacy'])) {
- return $smartyAssign->getLang("_invalid_input");
- }
-
- //ffmpeg拡張のチェック
- if(!$multimediaAction->hasFfmpegLib()) {
- $extension_fullname = PHP_EXTENSION_DIR . "/" . MULTIMEDIA_EXTENSION.".".PHP_SHLIB_SUFFIX;
- return sprintf($smartyAssign->getLang("multimedia_item_upload_video_extension_error"), $extension_fullname);
- }
-
- //アップロードしたファイルの処理
- $files = $uploadsAction->uploads();
- $params = array(
- "album_id" => $attributes['album_id']
- );
-
- $itemSequence = $db->maxExecute("multimedia_item", "item_sequence", $params);
- $actionChain =& $container->getComponent("ActionChain");
- $action_name = $actionChain->getCurActionName();
- $pathList = explode("_", $action_name);
- $dirname = $pathList[0];
- $file_path = $dirname."/";
-
- foreach($files as $file) {
- $itemSequence++;
- $file_dir = FILEUPLOADS_DIR.$file_path;
-
- if($file['extension'] != "flv") {
- $item_name = str_replace(".". $file['extension'], "", $file['physical_file_name']);
- $str_cmd = "/usr/local/bin/ffmpeg -y -i ".$file_dir.$file['physical_file_name']." -ar 44100 ".$file_dir.$item_name.".flv 2>&1";
- exec($str_cmd, $arr, $ret);
- if($ret != 0) {
- $uploadsAction->delUploadsById($file['upload_id']);
- return sprintf($smartyAssign->getLang("multimedia_item_upload_video_convert_error"), $ret);
- }else {
- unlink($file_dir.$file['physical_file_name']);
- }
- $file['physical_file_name'] = $item_name.".flv";
- $upload_params = array(
- "file_name" => $file['physical_file_name'],
- "physical_file_name" => $file['physical_file_name'],
- "file_size" => filesize($file_dir.$file['physical_file_name']),
- "extension" => "flv"
- );
- $where_params = array(
- "upload_id" => $file['upload_id']
- );
- if(!$uploadsAction->updUploads($upload_params, $where_params)) {
- $uploadsAction->delUploadsById($file['upload_id']);
- return $smartyAssign->getLang("multimedia_item_upload_video_update_error");
- }
- }
-
- //サムネイルを作成
- $movie = $file_dir.$file['physical_file_name'];
- $mov = new ffmpeg_movie($movie);
- if ($mov->hasVideo()) {
- $duration = $mov->getDuration();
- $frame = $mov->getFrame(ceil($mov->getFrameCount()/2));
- if($frame === false) {
- $frame = $mov->getFrame(1);
- if($frame === false) {
- $uploadsAction->delUploadsById($file['upload_id']);
- return $smartyAssign->getLang("multimedia_item_upload_thmbnail_get_error");
- }
- }
-
- if(!function_exists("gd_info")) {
- $uploadsAction->delUploadsById($file['upload_id']);
- return $smartyAssign->getLang("multimedia_item_upload_video_nogd_error");
- }
- $image = $frame->toGDImage();
- if($image === false) {
- $uploadsAction->delUploadsById($file['upload_id']);
- return $smartyAssign->getLang("multimedia_item_upload_thmbnail_create_error");
- }
- $width_orig = $frame->getWidth();
- $height_orig = $frame->getHeight();
- $scale = min(MULTIMEDIA_MOVIE_THUMBNAIL_WIDTH/$width_orig, MULTIMEDIA_MOVIE_THUMBNAIL_HEIGHT/$height_orig);
- $width = (int)($width_orig*$scale);
- $height = (int)($height_orig*$scale);
- $delta_width = (int)((MULTIMEDIA_MOVIE_THUMBNAIL_WIDTH - $width)/2);
- $delta_height = (int)((MULTIMEDIA_MOVIE_THUMBNAIL_HEIGHT - $height)/2);
-
- $gb_result = false;
- $gb_result = $image_p = imagecreatetruecolor(MULTIMEDIA_MOVIE_THUMBNAIL_WIDTH, MULTIMEDIA_MOVIE_THUMBNAIL_HEIGHT);
- $gb_result = $back = imagecolorallocate($image_p, 0, 0, 0);
- $gb_result = imagefill($image_p, 0, 0, $back);
- $gb_result = imagecopyresampled($image_p, $image, $delta_width, $delta_height, 0, 0, $width, $height, $width_orig, $height_orig);
-
- $gb_result = imageJpeg($image_p, $file_dir.$file['upload_id'].MULTIMEDIA_MOVIE_THUMBNAIL_NAME);
- $gb_result = imageDestroy($image);
- $gb_result = imageDestroy($image_p);
- if($gb_result === false) {
- $uploadsAction->delUploadsById($file['upload_id']);
- return $smartyAssign->getLang("multimedia_item_upload_thmbnail_create_error");
- }
-
- $session =& $container->getComponent("Session");
- $request =& $container->getComponent("Request");
- $multimedia_obj = $request->getParameter("multimedia_obj");
- $auth_id = $session->getParameter("_auth_id");
- if($auth_id >= _AUTH_CHIEF || $multimedia_obj['confirm_flag'] == _OFF) {
- $agree_flag = _ON;
- }else {
- $agree_flag = _OFF;
- }
- $params = array(
- "album_id" => $attributes['album_id'],
- "multimedia_id" => $attributes['multimedia_id'],
- "item_name" => empty($attributes['item_name'])?str_replace(".". $file['extension'], "", $file['file_name']):$attributes['item_name'],
- "agree_flag" => $agree_flag,
- "item_sequence" => $itemSequence,
- "upload_id" => $file['upload_id'],
- "duration" => $duration,
- "file_path" => $file_path,
- "item_path" => "?". ACTION_KEY. "=". $file['action_name']. "&upload_id=". $file['upload_id'],
- "item_description" => $attributes['item_description'],
- "privacy" => $attributes['privacy']
- );
-
- $item_id = $db->insertExecute("multimedia_item", $params, true, "item_id");
- if (!$item_id) {
- $uploadsAction->delUploadsById($file['upload_id']);
- return $smartyAssign->getLang("multimedia_item_upload_video_insert_error");
- }
- if(!$multimediaAction->setItemTag($item_id, $attributes['item_tag'])) {
- $uploadsAction->delUploadsById($file['upload_id']);
- return $smartyAssign->getLang("multimedia_item_upload_video_tag_error");
- }
- }else {
- $uploadsAction->delUploadsById($file['upload_id']);
- return $smartyAssign->getLang("multimedia_item_upload_video_type_error");
- }
-
- if(!$multimediaAction->setItemCount($attributes['album_id'], 1)) {
- return $smartyAssign->getLang("multimedia_item_upload_video_count_error");
- }
-
- $result = $db->updateExecute("multimedia_album", array("item_upload_time" => timezone_date()), array("album_id" => $attributes['album_id']), true);
- if($result === false) {
- return $smartyAssign->getLang("multimedia_item_upload_video_insert_error");
- }
- }
-
- return;
- }
-}
-?>
\ No newline at end of file
+getComponent("DbObject");
+ $fileUpload =& $container->getComponent("FileUpload");
+ $uploadsAction =& $container->getComponent("uploadsAction");
+
+ $filterChain =& $container->getComponent("FilterChain");
+ $smartyAssign =& $filterChain->getFilterByName("SmartyAssign");
+ $multimediaAction =& $container->getComponent("multimediaAction");
+
+ if(!isset($attributes['multimedia_id']) || !isset($attributes['album_id']) || !isset($attributes['privacy'])) {
+ return $smartyAssign->getLang("_invalid_input");
+ }
+
+ //ffmpegのチェック
+ if(!$multimediaAction->hasFfmpeg()) {
+ return sprintf($smartyAssign->getLang("multimedia_item_upload_video_no_ffmpeg_error"), MULTIMEDIA_FFMPEG_PATH);
+ }
+
+ //MP4Boxのチェック
+ if(!$multimediaAction->hasMp4box()) {
+ return sprintf($smartyAssign->getLang("multimedia_item_upload_video_no_mp4box_error"), MULTIMEDIA_MP4BOX_PATH);
+ }
+
+ // PHP GDライブラリのチェック
+ if(!function_exists("gd_info")) {
+ return $smartyAssign->getLang("multimedia_item_upload_video_no_gd_error");
+ }
+
+ //アップロードしたファイルの処理
+ $files = $uploadsAction->uploads();
+ $params = array(
+ "album_id" => $attributes['album_id']
+ );
+
+ $itemSequence = $db->maxExecute("multimedia_item", "item_sequence", $params);
+ $actionChain =& $container->getComponent("ActionChain");
+ $action_name = $actionChain->getCurActionName();
+ $pathList = explode("_", $action_name);
+ $dirname = $pathList[0];
+ $file_path = $dirname."/";
+
+ foreach($files as $file) {
+ $itemSequence++;
+ $file_dir = FILEUPLOADS_DIR.$file_path;
+
+ //動画パスを定義
+ $temp_video_path = null; // MP4Box変換前
+ $video_path = null; // MP4Box変換後
+
+ $item_name = str_replace(".". $file['extension'], "", $file['physical_file_name']);
+ $temp_video_path = $file_dir . $item_name . "_temp.mp4"; // MP4Box変換前
+ $video_path = $file_dir . $item_name . ".mp4"; // MP4Box変換後
+
+ if($file['extension'] != "mp4") {
+ //動画変換実施
+ $str_cmd = MULTIMEDIA_FFMPEG_PATH . " -y -i " . $file_dir . $file['physical_file_name']
+ ." " . MULTIMEDIA_FFMPEG_OPTION . " " . $temp_video_path . " 2>&1";
+ exec($str_cmd, $arr, $ret);
+
+ //変換エラー時
+ if($ret != 0) {
+ $uploadsAction->delUploadsById($file['upload_id']);
+ return sprintf($smartyAssign->getLang("multimedia_item_upload_video_convert_error"), $ret);
+ }else {
+ //元動画ファイルを削除
+ unlink($file_dir.$file['physical_file_name']);
+ }
+ }
+ //MP4のアップロード時
+ else {
+ // ファイル名称変更
+ rename($file_dir . $file['physical_file_name'], $temp_video_path);
+ }
+
+ //変換後の動画情報を取得
+ $str_cmd = MULTIMEDIA_FFMPEG_PATH . " -i " . $temp_video_path . " 2>&1";
+ exec($str_cmd, $stuout, $ret);
+
+ //情報を取得出来なかった場合
+ if($ret != 1) {
+ //ファイル削除(MP4Box変換前動画)
+ $multimediaAction->deleteFiles(array($temp_video_path));
+ return $smartyAssign->getLang("multimedia_item_upload_video_information_error");
+ }
+
+ //動画情報から時間、サイズを取得
+ foreach($stuout as $line) {
+ //時間を取得(フォーマット:Duration: 00:00:00.0)
+ preg_match("/Duration: [0-9]{2}:[0-9]{2}:[0-9]{2}\.\d+/s", $line, $matches);
+
+ //時間を取得出来た場合
+ if(count($matches) > 0) {
+ //「:」で文字列分割
+ $result_line = split(":",$matches[0]);
+
+ //動画の時間を計算
+ $duration = intval(trim($result_line[1])) * 3600 + intval($result_line[2]) * 60 + $result_line[3];
+ break;
+ }
+ }
+
+ //キャプチャ画像パスを定義
+ $captuer_image_path = $file_dir . $file['upload_id'] . MULTIMEDIA_MOVIE_CAPTUER_NAME;
+ //サムネイル画像パスを定義
+ $thumbmail_image_path = $file_dir.$file['upload_id'] . MULTIMEDIA_MOVIE_THUMBNAIL_NAME;
+
+ //キャプチャ画像切り出し
+ //切り出し定義秒数で分岐
+ switch(MULTIMEDIA_THUMBNAIL_SECONDS) {
+ //切り出し定義秒数が動画秒数未満である場合、切り出し定義秒数で画像切り出し
+ case MULTIMEDIA_THUMBNAIL_SECONDS < intval($duration):
+ $str_cmd = MULTIMEDIA_FFMPEG_PATH . " -i " . $temp_video_path . " -ss " . MULTIMEDIA_THUMBNAIL_SECONDS . " -vframes 1 -f image2 " . $captuer_image_path . " 2>&1";
+ break;
+ //切り出し定義秒数が動画秒数以上である場合、動画の半分の秒数で画像切り出し(切り出し定義秒数が未設定の場合も含む)
+ default:
+ $str_cmd = MULTIMEDIA_FFMPEG_PATH . " -i " . $temp_video_path . " -ss " . intval($duration /2) . " -vframes 1 -f image2 " . $captuer_image_path . " 2>&1";
+ break;
+ }
+
+ exec($str_cmd, $stuout, $ret);
+
+ //画像を作成出来なかった場合
+ if($ret != 0) {
+ //ファイル削除(MP4Box変換前動画)
+ $multimediaAction->deleteFiles(array($temp_video_path));
+ return $smartyAssign->getLang("multimedia_item_upload_thmbnail_create_error");
+ }
+
+ //キャプチャ画像サイズ等取得
+ list($width_orig, $height_orig, $type, $attr) = GetImageSize($captuer_image_path);
+
+ //比率等の計算
+ $scale = min(MULTIMEDIA_MOVIE_THUMBNAIL_WIDTH / $width_orig, MULTIMEDIA_MOVIE_THUMBNAIL_HEIGHT / $height_orig);
+ $width = (int)($width_orig * $scale);
+ $height = (int)($height_orig * $scale);
+ $delta_width = (int)((MULTIMEDIA_MOVIE_THUMBNAIL_WIDTH - $width) / 2);
+ $delta_height = (int)((MULTIMEDIA_MOVIE_THUMBNAIL_HEIGHT - $height) / 2);
+
+ //キャプチャ画像のキャンバスを生成
+ $image_orig = imagecreatefromjpeg($captuer_image_path);
+
+ //キャンバス作成に失敗した場合
+ if($image_orig === false) {
+ //ファイル削除(MP4Box変換前動画、キャプチャ動画)
+ $multimediaAction->deleteFiles(array($temp_video_path, $captuer_image_path));
+ return $smartyAssign->getLang("multimedia_item_upload_thmbnail_create_error");
+ }
+
+ $gb_result = false;
+
+ //サムネイル画像のキャンバスを作成
+ $image_p = imagecreatetruecolor(MULTIMEDIA_MOVIE_THUMBNAIL_WIDTH, MULTIMEDIA_MOVIE_THUMBNAIL_HEIGHT);
+
+ //サムネイル画像のキャンバス作成に失敗した場合
+ if($image_orig === false) {
+ //ファイル削除(MP4Box変換前動画、キャプチャ動画)
+ $multimediaAction->deleteFiles(array($temp_video_path, $captuer_image_path));
+ return $smartyAssign->getLang("multimedia_item_upload_thmbnail_create_error");
+ }
+
+ //黒色を取得(0が取得される)
+ $back = imagecolorallocate($image_p, 0, 0, 0);
+
+ //黒色の取得に失敗した場合(5.1.3以降はfalseを返し、その前までのバージョンでは-1を返す)
+ if($back === false || $back === -1) {
+ //ファイル削除(MP4Box変換前動画、キャプチャ動画)
+ $multimediaAction->deleteFiles(array($temp_video_path, $captuer_image_path));
+ return $smartyAssign->getLang("multimedia_item_upload_thmbnail_create_error");
+ }
+
+ //キャンバスを黒色で塗りつぶす
+ $gb_result = imagefill($image_p, 0, 0, $back);
+
+ //塗りつぶしに失敗した場合
+ if($gb_result === false) {
+ //ファイル削除(MP4Box変換前動画、キャプチャ動画)
+ $multimediaAction->deleteFiles(array($temp_video_path, $captuer_image_path));
+ return $smartyAssign->getLang("multimedia_item_upload_thmbnail_create_error");
+ }
+
+ //キャプチャ画像を縮小し、サムネイル画像のキャンバスに貼り付け
+ $gb_result = imagecopyresampled($image_p, $image_orig, $delta_width, $delta_height, 0, 0, $width, $height, $width_orig, $height_orig);
+
+ //貼り付けに失敗した場合
+ if($gb_result === false) {
+ //ファイル削除(MP4Box変換前動画、キャプチャ動画)
+ $multimediaAction->deleteFiles(array($temp_video_path, $captuer_image_path));
+ return $smartyAssign->getLang("multimedia_item_upload_thmbnail_create_error");
+ }
+
+ //サムネイル画像出力
+ $gb_result = imageJpeg($image_p, $thumbmail_image_path);
+
+ //サムネイル画像出力に失敗した場合
+ if($gb_result === false) {
+ //ファイル削除(MP4Box変換前動画、キャプチャ動画)
+ $multimediaAction->deleteFiles(array($temp_video_path, $captuer_image_path));
+ return $smartyAssign->getLang("multimedia_item_upload_thmbnail_create_error");
+ }
+
+ //GDリソースを解放(解放できない場合でも、サムネイル画像は作成完了しているため、エラーとして検知しない)
+ imageDestroy($image_orig);
+ imageDestroy($image_p);
+
+ //ファイル削除(キャプチャ画像)
+ $multimediaAction->deleteFiles(array($captuer_image_path));
+
+ //MP4Boxで動画変換実施(動画情報、キャプチャ画像切り出し後ではないと変換できない)
+ $str_cmd = MULTIMEDIA_MP4BOX_PATH . " -add " . $temp_video_path ." -brand mmp4:1 -new " . $video_path . " 2>&1";
+ exec($str_cmd, $arr, $ret);
+
+ //変換エラー時
+ if($ret != 0) {
+ //ファイル削除(MP4Box変換前動画、サムネイル動画)
+ $multimediaAction->deleteFiles(array($temp_video_path, $thumbmail_image_path));
+ return sprintf($smartyAssign->getLang("multimedia_item_upload_video_convert_error"), $ret);
+ }else {
+ //ファイル削除(MP4Box変換前動画)
+ $multimediaAction->deleteFiles(array($temp_video_path));
+ }
+
+ //動画情報更新
+ $file['physical_file_name'] = $item_name.".mp4";
+ $upload_params = array(
+ "file_name" => $file['physical_file_name'],
+ "physical_file_name" => $file['physical_file_name'],
+ "file_size" => filesize($video_path),
+ "extension" => "mp4",
+ "mimetype" => "video/mp4"
+ );
+ $where_params = array(
+ "upload_id" => $file['upload_id']
+ );
+ if(!$uploadsAction->updUploads($upload_params, $where_params)) {
+ //ファイル削除(MP4Box変換後動画、サムネイル動画)
+ $multimediaAction->deleteFiles(array($video_path, $thumbmail_image_path));
+ return $smartyAssign->getLang("multimedia_item_upload_video_update_error");
+ }
+
+ $session =& $container->getComponent("Session");
+ $request =& $container->getComponent("Request");
+ $multimedia_obj = $request->getParameter("multimedia_obj");
+ $auth_id = $session->getParameter("_auth_id");
+ if($auth_id >= _AUTH_CHIEF || $multimedia_obj['confirm_flag'] == _OFF) {
+ $agree_flag = _ON;
+ }else {
+ $agree_flag = _OFF;
+ }
+ $params = array(
+ "album_id" => $attributes['album_id'],
+ "multimedia_id" => $attributes['multimedia_id'],
+ "item_name" => empty($attributes['item_name'])?str_replace(".". $file['extension'], "", $file['file_name']):$attributes['item_name'],
+ "agree_flag" => $agree_flag,
+ "item_sequence" => $itemSequence,
+ "upload_id" => $file['upload_id'],
+ "duration" => $duration,
+ "file_path" => $file_path,
+ "item_path" => "?". ACTION_KEY. "=". $file['action_name']. "&upload_id=". $file['upload_id'],
+ "item_description" => $attributes['item_description'],
+ "privacy" => $attributes['privacy']
+ );
+
+ $item_id = $db->insertExecute("multimedia_item", $params, true, "item_id");
+
+ if (!$item_id) {
+ //ファイル削除(MP4Box変換後動画、サムネイル動画)
+ $multimediaAction->deleteFiles(array($video_path, $thumbmail_image_path));
+ return $smartyAssign->getLang("multimedia_item_upload_video_insert_error");
+ }
+ if(!$multimediaAction->setItemTag($item_id, $attributes['item_tag'])) {
+ //ファイル削除(MP4Box変換後動画、サムネイル動画)
+ $multimediaAction->deleteFiles(array($video_path, $thumbmail_image_path));
+ return $smartyAssign->getLang("multimedia_item_upload_video_tag_error");
+ }
+
+ if(!$multimediaAction->setItemCount($attributes['album_id'], 1)) {
+ return $smartyAssign->getLang("multimedia_item_upload_video_count_error");
+ }
+
+ $result = $db->updateExecute("multimedia_album", array("item_upload_time" => timezone_date()), array("album_id" => $attributes['album_id']), true);
+ if($result === false) {
+ return $smartyAssign->getLang("multimedia_item_upload_video_insert_error");
+ }
+ }
+
+ return;
+ }
+}
+?>
diff --git a/multimedia/validator/Validator_ItemUpload.class.php.org b/multimedia/validator/Validator_ItemUpload.class.php.org
new file mode 100644
index 0000000..f862a04
--- /dev/null
+++ b/multimedia/validator/Validator_ItemUpload.class.php.org
@@ -0,0 +1,191 @@
+getComponent("DbObject");
+ $fileUpload =& $container->getComponent("FileUpload");
+ $uploadsAction =& $container->getComponent("uploadsAction");
+
+ $filterChain =& $container->getComponent("FilterChain");
+ $smartyAssign =& $filterChain->getFilterByName("SmartyAssign");
+ $multimediaAction =& $container->getComponent("multimediaAction");
+
+ if(!isset($attributes['multimedia_id']) || !isset($attributes['album_id']) || !isset($attributes['privacy'])) {
+ return $smartyAssign->getLang("_invalid_input");
+ }
+
+ //ffmpeg拡張のチェック
+ if(!$multimediaAction->hasFfmpegLib()) {
+ $extension_fullname = PHP_EXTENSION_DIR . "/" . MULTIMEDIA_EXTENSION.".".PHP_SHLIB_SUFFIX;
+ return sprintf($smartyAssign->getLang("multimedia_item_upload_video_extension_error"), $extension_fullname);
+ }
+
+ //アップロードしたファイルの処理
+ $files = $uploadsAction->uploads();
+ $params = array(
+ "album_id" => $attributes['album_id']
+ );
+
+ $itemSequence = $db->maxExecute("multimedia_item", "item_sequence", $params);
+ $actionChain =& $container->getComponent("ActionChain");
+ $action_name = $actionChain->getCurActionName();
+ $pathList = explode("_", $action_name);
+ $dirname = $pathList[0];
+ $file_path = $dirname."/";
+
+ foreach($files as $file) {
+ $itemSequence++;
+ $file_dir = FILEUPLOADS_DIR.$file_path;
+
+ if($file['extension'] != "flv") {
+ $item_name = str_replace(".". $file['extension'], "", $file['physical_file_name']);
+ $str_cmd = "/usr/local/bin/ffmpeg -y -i ".$file_dir.$file['physical_file_name']." -ar 44100 ".$file_dir.$item_name.".flv 2>&1";
+ exec($str_cmd, $arr, $ret);
+ if($ret != 0) {
+ $uploadsAction->delUploadsById($file['upload_id']);
+ return sprintf($smartyAssign->getLang("multimedia_item_upload_video_convert_error"), $ret);
+ }else {
+ unlink($file_dir.$file['physical_file_name']);
+ }
+ $file['physical_file_name'] = $item_name.".flv";
+ $upload_params = array(
+ "file_name" => $file['physical_file_name'],
+ "physical_file_name" => $file['physical_file_name'],
+ "file_size" => filesize($file_dir.$file['physical_file_name']),
+ "extension" => "flv"
+ );
+ $where_params = array(
+ "upload_id" => $file['upload_id']
+ );
+ if(!$uploadsAction->updUploads($upload_params, $where_params)) {
+ $uploadsAction->delUploadsById($file['upload_id']);
+ return $smartyAssign->getLang("multimedia_item_upload_video_update_error");
+ }
+ }
+
+ //サムネイルを作成
+ $movie = $file_dir.$file['physical_file_name'];
+ $mov = new ffmpeg_movie($movie);
+ if ($mov->hasVideo()) {
+ $duration = $mov->getDuration();
+ $frame = $mov->getFrame(ceil($mov->getFrameCount()/2));
+ if($frame === false) {
+ $frame = $mov->getFrame(1);
+ if($frame === false) {
+ $uploadsAction->delUploadsById($file['upload_id']);
+ return $smartyAssign->getLang("multimedia_item_upload_thmbnail_get_error");
+ }
+ }
+
+ if(!function_exists("gd_info")) {
+ $uploadsAction->delUploadsById($file['upload_id']);
+ return $smartyAssign->getLang("multimedia_item_upload_video_nogd_error");
+ }
+ $image = $frame->toGDImage();
+ if($image === false) {
+ $uploadsAction->delUploadsById($file['upload_id']);
+ return $smartyAssign->getLang("multimedia_item_upload_thmbnail_create_error");
+ }
+ $width_orig = $frame->getWidth();
+ $height_orig = $frame->getHeight();
+ $scale = min(MULTIMEDIA_MOVIE_THUMBNAIL_WIDTH/$width_orig, MULTIMEDIA_MOVIE_THUMBNAIL_HEIGHT/$height_orig);
+ $width = (int)($width_orig*$scale);
+ $height = (int)($height_orig*$scale);
+ $delta_width = (int)((MULTIMEDIA_MOVIE_THUMBNAIL_WIDTH - $width)/2);
+ $delta_height = (int)((MULTIMEDIA_MOVIE_THUMBNAIL_HEIGHT - $height)/2);
+
+ $gb_result = false;
+ $gb_result = $image_p = imagecreatetruecolor(MULTIMEDIA_MOVIE_THUMBNAIL_WIDTH, MULTIMEDIA_MOVIE_THUMBNAIL_HEIGHT);
+ $gb_result = $back = imagecolorallocate($image_p, 0, 0, 0);
+ $gb_result = imagefill($image_p, 0, 0, $back);
+ $gb_result = imagecopyresampled($image_p, $image, $delta_width, $delta_height, 0, 0, $width, $height, $width_orig, $height_orig);
+
+ $gb_result = imageJpeg($image_p, $file_dir.$file['upload_id'].MULTIMEDIA_MOVIE_THUMBNAIL_NAME);
+ $gb_result = imageDestroy($image);
+ $gb_result = imageDestroy($image_p);
+ if($gb_result === false) {
+ $uploadsAction->delUploadsById($file['upload_id']);
+ return $smartyAssign->getLang("multimedia_item_upload_thmbnail_create_error");
+ }
+
+ $session =& $container->getComponent("Session");
+ $request =& $container->getComponent("Request");
+ $multimedia_obj = $request->getParameter("multimedia_obj");
+ $auth_id = $session->getParameter("_auth_id");
+ if($auth_id >= _AUTH_CHIEF || $multimedia_obj['confirm_flag'] == _OFF) {
+ $agree_flag = _ON;
+ }else {
+ $agree_flag = _OFF;
+ }
+ $params = array(
+ "album_id" => $attributes['album_id'],
+ "multimedia_id" => $attributes['multimedia_id'],
+ "item_name" => empty($attributes['item_name'])?str_replace(".". $file['extension'], "", $file['file_name']):$attributes['item_name'],
+ "agree_flag" => $agree_flag,
+ "item_sequence" => $itemSequence,
+ "upload_id" => $file['upload_id'],
+ "duration" => $duration,
+ "file_path" => $file_path,
+ "item_path" => "?". ACTION_KEY. "=". $file['action_name']. "&upload_id=". $file['upload_id'],
+ "item_description" => $attributes['item_description'],
+ "privacy" => $attributes['privacy']
+ );
+
+ $item_id = $db->insertExecute("multimedia_item", $params, true, "item_id");
+ if (!$item_id) {
+ $uploadsAction->delUploadsById($file['upload_id']);
+ return $smartyAssign->getLang("multimedia_item_upload_video_insert_error");
+ }
+ if(!$multimediaAction->setItemTag($item_id, $attributes['item_tag'])) {
+ $uploadsAction->delUploadsById($file['upload_id']);
+ return $smartyAssign->getLang("multimedia_item_upload_video_tag_error");
+ }
+ }else {
+ $uploadsAction->delUploadsById($file['upload_id']);
+ return $smartyAssign->getLang("multimedia_item_upload_video_type_error");
+ }
+
+ if(!$multimediaAction->setItemCount($attributes['album_id'], 1)) {
+ return $smartyAssign->getLang("multimedia_item_upload_video_count_error");
+ }
+
+ $result = $db->updateExecute("multimedia_album", array("item_upload_time" => timezone_date()), array("album_id" => $attributes['album_id']), true);
+ if($result === false) {
+ return $smartyAssign->getLang("multimedia_item_upload_video_insert_error");
+ }
+ }
+
+ return;
+ }
+}
+?>
\ No newline at end of file
diff --git a/multimedia/validator/Validator_MultimediaCount.class.php b/multimedia/validator/Validator_MultimediaCount.class.php
index fdd69ff..2157f01 100644
--- a/multimedia/validator/Validator_MultimediaCount.class.php
+++ b/multimedia/validator/Validator_MultimediaCount.class.php
@@ -1,46 +1,46 @@
-getComponent("multimediaView");
-
- $multimediaCount = $multimediaView->getMultimediaCount();
- if ($multimediaCount == 0) {
- return $errStr;
- }
-
- $request =& $container->getComponent("Request");
- $request->setParameter("multimediaCount", $multimediaCount);
-
- return;
- }
-}
+getComponent("multimediaView");
+
+ $multimediaCount = $multimediaView->getMultimediaCount();
+ if ($multimediaCount == 0) {
+ return $errStr;
+ }
+
+ $request =& $container->getComponent("Request");
+ $request->setParameter("multimediaCount", $multimediaCount);
+
+ return;
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/validator/Validator_MultimediaExist.class.php b/multimedia/validator/Validator_MultimediaExist.class.php
index e648afd..4d26c64 100644
--- a/multimedia/validator/Validator_MultimediaExist.class.php
+++ b/multimedia/validator/Validator_MultimediaExist.class.php
@@ -1,73 +1,73 @@
-getComponent("ActionChain");
- $actionName = $actionChain->getCurActionName();
- $multimediaView =& $container->getComponent("multimediaView");
- $request =& $container->getComponent('Request');
-
- if (empty($attributes['multimedia_id'])) {
- $attributes['multimedia_id'] =& $multimediaView->getCurrentMultimediaId();
- $request->setParameter('multimedia_id', $attributes['multimedia_id']);
- }
-
- if (empty($attributes['multimedia_id'])) {
- $attributes['multimedia_id'] =& $multimediaView->getFirstMultimediaId();
- $request->setParameter("multimedia_id", $attributes['multimedia_id']);
- }
-
- if (empty($attributes['multimedia_id']) && strpos($actionName, 'multimedia_view_edit') === 0) {
- return;
- }
-
- if (empty($attributes['multimedia_id']) && $actionName != 'multimedia_action_edit_initialize') {
- return $errStr;
- }
-
- if (empty($attributes['block_id'])) {
- $block =& $multimediaView->getBlock();
- if ($attributes['room_id'] != $block['room_id']) {
- return $errStr;
- }
-
- $attributes['block_id'] = $block['block_id'];
- $request->setParameter("block_id", $attributes['block_id']);
- }
-
- if ($actionName == 'multimedia_action_edit_initialize') {
- return;
- }
-
- if (!$multimediaView->multimediaExist()) {
- return $errStr;
- }
-
- return;
- }
-}
+getComponent("ActionChain");
+ $actionName = $actionChain->getCurActionName();
+ $multimediaView =& $container->getComponent("multimediaView");
+ $request =& $container->getComponent('Request');
+
+ if (empty($attributes['multimedia_id'])) {
+ $attributes['multimedia_id'] =& $multimediaView->getCurrentMultimediaId();
+ $request->setParameter('multimedia_id', $attributes['multimedia_id']);
+ }
+
+ if (empty($attributes['multimedia_id'])) {
+ $attributes['multimedia_id'] =& $multimediaView->getFirstMultimediaId();
+ $request->setParameter("multimedia_id", $attributes['multimedia_id']);
+ }
+
+ if (empty($attributes['multimedia_id']) && strpos($actionName, 'multimedia_view_edit') === 0) {
+ return;
+ }
+
+ if (empty($attributes['multimedia_id']) && $actionName != 'multimedia_action_edit_initialize') {
+ return $errStr;
+ }
+
+ if (empty($attributes['block_id'])) {
+ $block =& $multimediaView->getBlock();
+ if ($attributes['room_id'] != $block['room_id']) {
+ return $errStr;
+ }
+
+ $attributes['block_id'] = $block['block_id'];
+ $request->setParameter("block_id", $attributes['block_id']);
+ }
+
+ if ($actionName == 'multimedia_action_edit_initialize') {
+ return;
+ }
+
+ if (!$multimediaView->multimediaExist()) {
+ return $errStr;
+ }
+
+ return;
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/validator/Validator_MultimediaView.class.php b/multimedia/validator/Validator_MultimediaView.class.php
index 034688d..6dc49a6 100644
--- a/multimedia/validator/Validator_MultimediaView.class.php
+++ b/multimedia/validator/Validator_MultimediaView.class.php
@@ -1,60 +1,60 @@
-getComponent("Session");
- $auth_id = $session->getParameter("_auth_id");
-
- $multimediaView =& $container->getComponent("multimediaView");
-
- if ($auth_id < _AUTH_CHIEF) {
- $multimedia_id = $multimediaView->getCurrentMultimediaId();
- if ($multimedia_id != $attributes['multimedia_id']) {
- return $errStr;
- }
- }
-
- $actionChain =& $container->getComponent("ActionChain");
- $actionName = $actionChain->getCurActionName();
- if (empty($attributes["multimedia_id"])) {
- $multimedia_obj = $multimediaView->getDefaultMultimedia();
- } else {
- $multimedia_obj = $multimediaView->getCurrentMultimedia();
- }
-
- if (empty($multimedia_obj)) {
- return $errStr;
- }
-
- $request =& $container->getComponent("Request");
- $request->setParameter("multimedia_obj", $multimedia_obj);
-
- return;
- }
-}
+getComponent("Session");
+ $auth_id = $session->getParameter("_auth_id");
+
+ $multimediaView =& $container->getComponent("multimediaView");
+
+ if ($auth_id < _AUTH_CHIEF) {
+ $multimedia_id = $multimediaView->getCurrentMultimediaId();
+ if ($multimedia_id != $attributes['multimedia_id']) {
+ return $errStr;
+ }
+ }
+
+ $actionChain =& $container->getComponent("ActionChain");
+ $actionName = $actionChain->getCurActionName();
+ if (empty($attributes["multimedia_id"])) {
+ $multimedia_obj = $multimediaView->getDefaultMultimedia();
+ } else {
+ $multimedia_obj = $multimediaView->getCurrentMultimedia();
+ }
+
+ if (empty($multimedia_obj)) {
+ return $errStr;
+ }
+
+ $request =& $container->getComponent("Request");
+ $request->setParameter("multimedia_obj", $multimedia_obj);
+
+ return;
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/validator/Validator_MultimediaXml.class.php b/multimedia/validator/Validator_MultimediaXml.class.php
index 6abc9ce..c81b0e4 100644
--- a/multimedia/validator/Validator_MultimediaXml.class.php
+++ b/multimedia/validator/Validator_MultimediaXml.class.php
@@ -1,53 +1,53 @@
-getComponent("Session");
- $request =& $container->getComponent("Request");
- $db =& $container->getComponent("DbObject");
- $multimediaView =& $container->getComponent("multimediaView");
-
- $item = $multimediaView->getItem($attributes);
- if(empty($item)) {
- return $errStr;
- }
-
- $item_list = $multimediaView->getSimilarItems($attributes);
- if($item_list === false) {
- return $errStr;
- }
-
- $request->setParameter("item", $item);
- $request->setParameter("list", $item_list);
- return;
- }
-}
+getComponent("Session");
+ $request =& $container->getComponent("Request");
+ $db =& $container->getComponent("DbObject");
+ $multimediaView =& $container->getComponent("multimediaView");
+
+ $item = $multimediaView->getItem($attributes);
+ if(empty($item)) {
+ return $errStr;
+ }
+
+ $item_list = $multimediaView->getSimilarItems($attributes);
+ if($item_list === false) {
+ return $errStr;
+ }
+
+ $request->setParameter("item", $item);
+ $request->setParameter("list", $item_list);
+ return;
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/view/edit/entry/Entry.class.php b/multimedia/view/edit/entry/Entry.class.php
index ef89b8f..dcf5c1e 100644
--- a/multimedia/view/edit/entry/Entry.class.php
+++ b/multimedia/view/edit/entry/Entry.class.php
@@ -30,12 +30,6 @@ class Multimedia_View_Edit_Entry extends Action
*/
function execute()
{
- //ffmpeg拡張のチェック
- if(!$this->multimediaAction->hasFfmpegLib()) {
- $this->extension_fullname = PHP_EXTENSION_DIR . "/" . MULTIMEDIA_EXTENSION.".".PHP_SHLIB_SUFFIX;
- $this->ffmpeg_install_flag = false;
- }
-
$this->multimedia =& $this->multimediaView->getMultimedia();
if (empty($this->multimedia)) {
$this->multimedia =& $this->multimediaView->getDefaultMultimedia();
diff --git a/multimedia/view/main/album/entry/Entry.class.php b/multimedia/view/main/album/entry/Entry.class.php
index daaa2b3..b7efc4f 100644
--- a/multimedia/view/main/album/entry/Entry.class.php
+++ b/multimedia/view/main/album/entry/Entry.class.php
@@ -1,62 +1,62 @@
-albumJacketSamples = $this->fileView->getCurrentFiles(HTDOCS_DIR.MULTIMEDIA_SAMPLR_JACKET_PATH.MULTIMEDIA_SAMPLR_JACKET_DIR);
-
- if(empty($this->album_id)) {
- $config = $this->configView->getConfig($this->module_id, false);
- if ($config === false) {
- return $config;
- }
-
- $this->album_obj["multimedia_id"] = $this->multimedia_obj['multimedia_id'];
- $this->album_obj["album_jacket"] = $config["album_jacket"]["conf_value"];
- $this->album_obj["public_flag"] = _ON;
- }else {
- $this->album_obj = $this->multimediaView->getAlbum($this->album_id);
- if($this->album_obj === false) {
- return 'error';
- }
- }
-
- $this->album_number = $this->multimediaView->getAlbumCount($this->multimedia_obj['multimedia_id']);
- if ($this->album_number === false) {
- return 'error';
- }
- $this->album_number++;
- return 'success';
- }
-}
+albumJacketSamples = $this->fileView->getCurrentFiles(HTDOCS_DIR.MULTIMEDIA_SAMPLR_JACKET_PATH.MULTIMEDIA_SAMPLR_JACKET_DIR);
+
+ if(empty($this->album_id)) {
+ $config = $this->configView->getConfig($this->module_id, false);
+ if ($config === false) {
+ return $config;
+ }
+
+ $this->album_obj["multimedia_id"] = $this->multimedia_obj['multimedia_id'];
+ $this->album_obj["album_jacket"] = $config["album_jacket"]["conf_value"];
+ $this->album_obj["public_flag"] = _ON;
+ }else {
+ $this->album_obj = $this->multimediaView->getAlbum($this->album_id);
+ if($this->album_obj === false) {
+ return 'error';
+ }
+ }
+
+ $this->album_number = $this->multimediaView->getAlbumCount($this->multimedia_obj['multimedia_id']);
+ if ($this->album_number === false) {
+ return 'error';
+ }
+ $this->album_number++;
+ return 'success';
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/view/main/album/jacket/Jacket.class.php b/multimedia/view/main/album/jacket/Jacket.class.php
index 61bc34b..fa50b28 100644
--- a/multimedia/view/main/album/jacket/Jacket.class.php
+++ b/multimedia/view/main/album/jacket/Jacket.class.php
@@ -1,56 +1,56 @@
-upload_id)
- && $this->upload_id != $this->session->getParameter("multimedia_jacket_upload_id")) {
- return "error";
- }
-
- $album = $this->db->selectExecute("multimedia_album", array("album_id"=>$this->album_id));
- if (!empty($album) || isset($album[0])) {
- $this->album_obj = $album[0];
- }
-
- if (empty($this->upload_id)) {
- $imageSize = $this->multimediaView->getImageSize($this->album_jacket);
- } else {
- $imageSize = $this->multimediaView->getImageSize($this->upload_id);
- $this->album_obj["upload_id"] = $this->upload_id;
- }
-
- $this->album_obj["album_jacket"] = $this->album_jacket;
- $this->album_obj["jacket_style"] = $this->multimediaView->getImageStyle($imageSize[0], $imageSize[1], MULTIMEDIA_JACKET_WIDTH, MULTIMEDIA_JACKET_HEIGHT);
-
- return "success";
- }
-}
-?>
+upload_id)
+ && $this->upload_id != $this->session->getParameter("multimedia_jacket_upload_id")) {
+ return "error";
+ }
+
+ $album = $this->db->selectExecute("multimedia_album", array("album_id"=>$this->album_id));
+ if (!empty($album) || isset($album[0])) {
+ $this->album_obj = $album[0];
+ }
+
+ if (empty($this->upload_id)) {
+ $imageSize = $this->multimediaView->getImageSize($this->album_jacket);
+ } else {
+ $imageSize = $this->multimediaView->getImageSize($this->upload_id);
+ $this->album_obj["upload_id"] = $this->upload_id;
+ }
+
+ $this->album_obj["album_jacket"] = $this->album_jacket;
+ $this->album_obj["jacket_style"] = $this->multimediaView->getImageStyle($imageSize[0], $imageSize[1], MULTIMEDIA_JACKET_WIDTH, MULTIMEDIA_JACKET_HEIGHT);
+
+ return "success";
+ }
+}
+?>
diff --git a/multimedia/view/main/channel/Channel.class.php b/multimedia/view/main/channel/Channel.class.php
index 79110b1..5f31ce3 100644
--- a/multimedia/view/main/channel/Channel.class.php
+++ b/multimedia/view/main/channel/Channel.class.php
@@ -1,81 +1,81 @@
-album_count = $this->multimediaView->getAlbumCount($this->multimedia_obj['multimedia_id']);
- if($this->album_count === false) {
- return 'error';
- }
-
- if($this->album_count == 0) {
- return 'success';
- }
-
- if(!$this->album_edit_flag) {
- $visible_row = $this->session->getParameter("multimedia_channel_visible_row".$this->block_id);
- if ($this->visible_row != "") {
- if($visible_row != "" && $this->visible_row != $visible_row) {
- $this->now_page = 1;
- }
- $this->session->setParameter("multimedia_channel_visible_row".$this->block_id, $this->visible_row);
- }else if($visible_row != ""){
- $this->visible_row = $visible_row;
- }else {
- $this->visible_row = $this->multimedia_obj['album_visible_row'];
- }
-
- $now_page = $this->session->getParameter("multimedia_channel_now_page".$this->block_id);
- if(!empty($this->now_page)) {
- $this->session->setParameter("multimedia_channel_now_page".$this->block_id, $this->now_page);
- }else if(!empty($now_page)){
- $this->now_page = $now_page;
- }
- }
-
- $this->multimediaView->setPageInfo($this->pager, $this->album_count, $this->visible_row, $this->now_page);
- $order_params = array(
- "album_sequence" => "ASC"
- );
- $this->album_list = $this->multimediaView->getAlbumList($this->multimedia_obj['multimedia_id'], $order_params, $this->visible_row, $this->pager['disp_begin']);
- if($this->album_list === false) {
- return 'error';
- }
-
- return 'success';
- }
-}
+album_count = $this->multimediaView->getAlbumCount($this->multimedia_obj['multimedia_id']);
+ if($this->album_count === false) {
+ return 'error';
+ }
+
+ if($this->album_count == 0) {
+ return 'success';
+ }
+
+ if(!$this->album_edit_flag) {
+ $visible_row = $this->session->getParameter("multimedia_channel_visible_row".$this->block_id);
+ if ($this->visible_row != "") {
+ if($visible_row != "" && $this->visible_row != $visible_row) {
+ $this->now_page = 1;
+ }
+ $this->session->setParameter("multimedia_channel_visible_row".$this->block_id, $this->visible_row);
+ }else if($visible_row != ""){
+ $this->visible_row = $visible_row;
+ }else {
+ $this->visible_row = $this->multimedia_obj['album_visible_row'];
+ }
+
+ $now_page = $this->session->getParameter("multimedia_channel_now_page".$this->block_id);
+ if(!empty($this->now_page)) {
+ $this->session->setParameter("multimedia_channel_now_page".$this->block_id, $this->now_page);
+ }else if(!empty($now_page)){
+ $this->now_page = $now_page;
+ }
+ }
+
+ $this->multimediaView->setPageInfo($this->pager, $this->album_count, $this->visible_row, $this->now_page);
+ $order_params = array(
+ "album_sequence" => "ASC"
+ );
+ $this->album_list = $this->multimediaView->getAlbumList($this->multimedia_obj['multimedia_id'], $order_params, $this->visible_row, $this->pager['disp_begin']);
+ if($this->album_list === false) {
+ return 'error';
+ }
+
+ return 'success';
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/view/main/comment/Comment.class.php b/multimedia/view/main/comment/Comment.class.php
index f8476a7..a650058 100644
--- a/multimedia/view/main/comment/Comment.class.php
+++ b/multimedia/view/main/comment/Comment.class.php
@@ -1,54 +1,54 @@
-commentCount = $this->multimediaView->getCommentCount($this->item_id);
- if ($this->comments === false) {
- return 'error';
- }
- $this->multimediaView->setPageInfo($this->pager, $this->commentCount, MULTIMEDIA_VISIBLE_ITEM_COMMENT, $this->now_page);
- $this->comments = $this->multimediaView->getComments($this->item_id, $this->pager['disp_begin']);
- if ($this->comments === false) {
- return 'error';
- }
-
- return 'success';
- }
-}
-?>
+commentCount = $this->multimediaView->getCommentCount($this->item_id);
+ if ($this->comments === false) {
+ return 'error';
+ }
+ $this->multimediaView->setPageInfo($this->pager, $this->commentCount, MULTIMEDIA_VISIBLE_ITEM_COMMENT, $this->now_page);
+ $this->comments = $this->multimediaView->getComments($this->item_id, $this->pager['disp_begin']);
+ if ($this->comments === false) {
+ return 'error';
+ }
+
+ return 'success';
+ }
+}
+?>
diff --git a/multimedia/view/main/init/Init.class.php b/multimedia/view/main/init/Init.class.php
index 7f7b958..875e819 100644
--- a/multimedia/view/main/init/Init.class.php
+++ b/multimedia/view/main/init/Init.class.php
@@ -1,36 +1,37 @@
-multimedia_obj['display'] == MULTIMEDIA_DISPLAY_ALBUM || $this->album_edit_flag == _ON) {
- return 'channel';
- }else {
- return 'list';
- }
- }
-}
-?>
\ No newline at end of file
+multimedia_obj['display'] == MULTIMEDIA_DISPLAY_ALBUM || $this->album_edit_flag == _ON) {
+ return 'channel';
+ }else {
+ return 'list';
+ }
+ }
+}
+?>
diff --git a/multimedia/view/main/item/detail/Detail.class.php b/multimedia/view/main/item/detail/Detail.class.php
index 24ad265..0d08106 100644
--- a/multimedia/view/main/item/detail/Detail.class.php
+++ b/multimedia/view/main/item/detail/Detail.class.php
@@ -1,89 +1,94 @@
-dialog_name = $this->item['item_name'];
- $params = array(
- $this->item_id
- );
- $sql = "UPDATE {multimedia_item} ".
- "SET item_play_count = item_play_count + 1 ".
- "WHERE item_id = ? ";
- $result = $this->db->execute($sql, $params);
- if ($result === false) {
- return 'error';
- }
-
- $this->commentCount = $this->multimediaView->getCommentCount($this->item_id);
- if ($this->commentCount === false) {
- return 'error';
- }
-
- $action_name = $this->actionChain->getCurActionName();
- $pathList = explode("_", $action_name);
- $dirname = $pathList[0];
- $this->play_action = $dirname."_view_main_play";
- $this->xml_action = $dirname."_view_main_xml";
- $this->embed_code = '
';
- $this->item_list = $this->multimediaView->getSimilarItems($this->item_id);
- if ($this->item_list === false) {
- return 'error';
- }
-
- $this->tags = $this->multimediaView->getTags($this->item_id);
- if($this->tags === false) {
- return 'error';
- }
-
- $channel = $this->db->selectExecute("multimedia_album", array('album_id' => $this->item['album_id']));
- if($this->tags === false || !isset($channel[0])) {
- return 'error';
- }
- $this->channel = $channel[0];
-
- return 'success';
- }
-}
+dialog_name = $this->item['item_name'];
+
+ $this->commentCount = $this->multimediaView->getCommentCount($this->item_id);
+ if ($this->commentCount === false) {
+ return 'error';
+ }
+
+
+ $action_name = $this->actionChain->getCurActionName();
+ $pathList = explode("_", $action_name);
+ $dirname = $pathList[0];
+// $this->play_action = $dirname."_view_main_play";
+ $this->iframe_action = $dirname."_view_main_item_iframe";
+// $this->xml_action = $dirname."_view_main_xml";
+ $this->embed_code = '
';
+
+// $this->iframe_width = MULTIMEDIA_MOVIE_PLAYER_WIDTH + 2;
+// $this->iframe_height = MULTIMEDIA_MOVIE_PLAYER_HEIGHT + MULTIMEDIA_MOVIE_PLAYER_CONTROLLER_HEIGHT + 1;
+ $this->iframe_width = MULTIMEDIA_MOVIE_PLAYER_WIDTH;
+ $this->iframe_height = MULTIMEDIA_MOVIE_PLAYER_HEIGHT;
+
+ $this->item_list = $this->multimediaView->getSimilarItems($this->item_id);
+ if ($this->item_list === false) {
+ return 'error';
+ }
+
+ $this->tags = $this->multimediaView->getTags($this->item_id);
+ if($this->tags === false) {
+ return 'error';
+ }
+
+ $channel = $this->db->selectExecute("multimedia_album", array('album_id' => $this->item['album_id']));
+ if($this->tags === false || !isset($channel[0])) {
+ return 'error';
+ }
+ $this->channel = $channel[0];
+
+// list($this->action_path, $this->upload_id_string) = split("&", $this->item['item_path']);
+
+ return 'success';
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/view/main/item/edit/Edit.class.php b/multimedia/view/main/item/edit/Edit.class.php
index 1156171..f696e58 100644
--- a/multimedia/view/main/item/edit/Edit.class.php
+++ b/multimedia/view/main/item/edit/Edit.class.php
@@ -1,51 +1,51 @@
-filterChain->getFilterByName("SmartyAssign");
- $this->dialog_name = sprintf($smartyAssign->getLang("multimedia_item_edit_title"), $this->item["item_name"]);
-
- $order_params = array(
- "album_sequence" => "ASC"
- );
- $this->album_list = $this->multimediaView->getAlbumList($this->item['multimedia_id'], $order_params);
- if($this->album_list === false) {
- return 'error';
- }
- return 'success';
- }
-}
+filterChain->getFilterByName("SmartyAssign");
+ $this->dialog_name = sprintf($smartyAssign->getLang("multimedia_item_edit_title"), $this->item["item_name"]);
+
+ $order_params = array(
+ "album_sequence" => "ASC"
+ );
+ $this->album_list = $this->multimediaView->getAlbumList($this->item['multimedia_id'], $order_params);
+ if($this->album_list === false) {
+ return 'error';
+ }
+ return 'success';
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/view/main/item/iframe/Iframe.class.php b/multimedia/view/main/item/iframe/Iframe.class.php
new file mode 100644
index 0000000..5598731
--- /dev/null
+++ b/multimedia/view/main/item/iframe/Iframe.class.php
@@ -0,0 +1,314 @@
+multimediaView->getItem($this->item_id);
+
+ $smartyAssign =& $this->filterChain->getFilterByName('SmartyAssign');
+
+ //動画情報が存在しない場合
+ if(empty($item)) {
+ //エラーメッセージを格納
+ $errStr = $smartyAssign->getLang('multimedia_err_no_item');
+ }
+ //動画情報が存在する場合
+ else {
+ //動画が公開領域で閲覧可能ではない場合
+ if($item['privacy'] > _AUTH_GUEST) {
+ //ユーザIDを取得出来ない場合は閲覧不可
+ $user_id = $this->session->getParameter("_user_id");
+ if(empty($user_id)) {
+ //エラーメッセージを格納
+ $errStr = $smartyAssign->getLang('multimedia_err_incorrectauth');
+ }
+ }
+
+ //ユーザエージェント判定
+ $ua = $_SERVER['HTTP_USER_AGENT'];
+ switch (true) {
+ //IEの場合はFlashでのみ再生
+ case (preg_match('/MSIE [6-9]/', $ua)):
+ $flash_use_only = true;
+ break;
+
+ //Tridentの場合はFlashでのみ再生
+ case (preg_match('/Trident/', $ua)):
+ $flash_use_only = true;
+ break;
+
+ //Safari判定
+ case (preg_match('/Safari/', $ua)):
+ //Macの場合はFlashでのみ再生
+ if(preg_match('/Macintosh;/', $ua)) {
+ $flash_use_only = true;
+ break;
+ }
+ //Android標準ブラウザの場合は自動再生させない
+ if((preg_match('/Android/', $ua)) && !(preg_match('/Chrome/', $ua))) {
+ $auto_start = false;
+ break;
+ }
+ }
+
+ //埋め込みかどうかをパラメタから判断し、各値を設定
+ //パラメタがないか、通常再生(iframe)の場合
+ if(empty($this->type) || $this->type != 'embeded') {
+ //自動再生判定
+ if($auto_start) {
+ $play_mode = '.jPlayer("play")';
+ } else {
+ $play_mode = '';
+ }
+ $css = 'jp-video-normal';
+ $multimedia_movie_player_width = MULTIMEDIA_MOVIE_PLAYER_WIDTH;
+ $multimedia_movie_player_height = MULTIMEDIA_MOVIE_PLAYER_HEIGHT;
+ }
+ //埋め込み再生の場合
+ else {
+ $play_mode = '';
+ $css = 'jp-video-embeded';
+ $multimedia_movie_player_width = MULTIMEDIA_MOVIE_PLAYER_EMBEDED_WIDTH;
+ $multimedia_movie_player_height = MULTIMEDIA_MOVIE_PLAYER_EMBEDED_HEIGHT;
+ }
+
+ //jPlayerで再生する場合はborder分を減算
+ if(! $flash_use_only) {
+ $multimedia_movie_player_width -= 2;
+ $multimedia_movie_player_height -= 2;
+ } else {
+ //エラーが発生している場合はborder分を減算
+ if($errStr !== null) {
+ $multimedia_movie_player_width -= 2;
+ $multimedia_movie_player_height -= 2;
+ }
+ }
+
+ // 各値を設定
+ $base_url = BASE_URL;
+ $index_file_name = INDEX_FILE_NAME;
+ $item_path = $item['item_path'];
+ $css_version = _CSS_VERSION;
+ $core_base_url = CORE_BASE_URL;
+ $play_action = 'multimedia_view_main_play';
+ $xml_action = 'multimedia_view_main_xml';
+ }
+
+ //閲覧可能である場合
+ if($errStr === null) {
+ //Flashのみで対応する場合
+ if($flash_use_only) {
+print <<< EOF
+
+
+
+
+
+
+
{$item['item_name']}
+
+
+
+
+
+
+EOF;
+ }
+ //jPlayerで再生する場合
+ else {
+print <<< EOF
+
+
+
+
+
+
+
{$item['item_name']}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Update Required
+ To play the media you will need to either update your browser to a recent version or update your
Flash plugin.
+
+
+
+
+
+EOF;
+ }
+ }
+ //閲覧できない場合
+ else {
+ //動画情報が存在しない場合
+ if(empty($item)) {
+print <<< EOF
+
+
+
+
+
+
+
+
{$errStr}
+
+
+
+ {$errStr}
+
+
+
+EOF;
+ }
+ //閲覧権限がない場合(サムネイル画像を出力)
+ else {
+print <<< EOF
+
+
+
+
+
+
+
+
{$errStr}
+
+
+
+
+
+EOF;
+ }
+
+ }
+
+ exit;
+
+ }
+}
+?>
\ No newline at end of file
diff --git a/multimedia/view/main/item/iframe/maple.ini b/multimedia/view/main/item/iframe/maple.ini
new file mode 100644
index 0000000..b913b10
--- /dev/null
+++ b/multimedia/view/main/item/iframe/maple.ini
@@ -0,0 +1,19 @@
+[ValidateDef]
+;key:room_id,block_id,multimedia_id.multimedia.multimediaExist:g = "1:lang._invalid_input"
+;key:block_id,multimedia_id.multimedia.multimediaView:g = "1:lang._invalid_input"
+;item_id.multimedia.itemExist = "1:lang._invalid_input"
+;item_id.multimedia.multimediaXml = "1:lang._invalid_input"
+
+[HeaderMenu]
+mode = "nobuild"
+
+[Action]
+multimediaView = "ref:multimediaView"
+;multimediaAction = "ref:multimediaAction"
+filterChain = "ref:FilterChain"
+session = "ref:Session"
+db = "ref:DbObject"
+
+[View]
+define:theme=0
+success = "multimedia_view_main_iframe.html"
diff --git a/multimedia/view/main/item/init/Init.class.php b/multimedia/view/main/item/init/Init.class.php
index 92cda53..f7c776a 100644
--- a/multimedia/view/main/item/init/Init.class.php
+++ b/multimedia/view/main/item/init/Init.class.php
@@ -1,98 +1,98 @@
-item_count = $this->db->countExecute("multimedia_item", array("album_id" => intval($this->album_id)));
- if ($this->item_count === false) {
- return 'error';
- }
-
- if($this->sort == null || $this->sort == "") {
- $order_params = array(
- "item_sequence" => "ASC"
- );
- } else {
- if($this->sort != "") {
- $sort_arr = explode(":", $this->sort);
- $sort_col = $sort_arr[0];
- $sort_dir = $sort_arr[1];
- $sort_dir = ($sort_dir == null || $sort_dir == "ASC") ? "ASC" : "DESC";
- switch($sort_col) {
- case "item_name":
- case "item_play_count":
- case "item_vote_count":
- case "insert_time":
- break;
- default:
- $sort_col = "item_sequence";
- break;
- }
- } else {
- $sort_col = "item_sequence";
- $sort_dir = "ASC";
- }
-
- $order_params = array(
- $sort_col => $sort_dir,
- "item_sequence" => "ASC"
- );
- }
-
- $params = array("album_id" => $this->album_id);
- $this->item_count = $this->multimediaView->getItemListCount($params);
- if($this->item_count === false) {
- return 'error';
- }
- if($this->drag_drop === _ON) {
- $this->item_list = $this->db->selectExecute("multimedia_item", array("album_id" => intval($this->album_id)), array("item_sequence" => "ASC"));
- if($this->item_list === false) {
- return 'error';
- }
- }else {
- $this->multimediaView->setPageInfo($this->pager, $this->item_count, MULTIMEDIA_VISIBLE_ITEM_CNT, $this->now_page);
- $this->item_list = $this->multimediaView->getItemList($params, $order_params, $this->pager['disp_begin']);
- if($this->item_list === false) {
- return 'error';
- }
- }
-
- return 'success';
- }
-}
+item_count = $this->db->countExecute("multimedia_item", array("album_id" => intval($this->album_id)));
+ if ($this->item_count === false) {
+ return 'error';
+ }
+
+ if($this->sort == null || $this->sort == "") {
+ $order_params = array(
+ "item_sequence" => "ASC"
+ );
+ } else {
+ if($this->sort != "") {
+ $sort_arr = explode(":", $this->sort);
+ $sort_col = $sort_arr[0];
+ $sort_dir = $sort_arr[1];
+ $sort_dir = ($sort_dir == null || $sort_dir == "ASC") ? "ASC" : "DESC";
+ switch($sort_col) {
+ case "item_name":
+ case "item_play_count":
+ case "item_vote_count":
+ case "insert_time":
+ break;
+ default:
+ $sort_col = "item_sequence";
+ break;
+ }
+ } else {
+ $sort_col = "item_sequence";
+ $sort_dir = "ASC";
+ }
+
+ $order_params = array(
+ $sort_col => $sort_dir,
+ "item_sequence" => "ASC"
+ );
+ }
+
+ $params = array("album_id" => $this->album_id);
+ $this->item_count = $this->multimediaView->getItemListCount($params);
+ if($this->item_count === false) {
+ return 'error';
+ }
+ if($this->drag_drop === _ON) {
+ $this->item_list = $this->db->selectExecute("multimedia_item", array("album_id" => intval($this->album_id)), array("item_sequence" => "ASC"));
+ if($this->item_list === false) {
+ return 'error';
+ }
+ }else {
+ $this->multimediaView->setPageInfo($this->pager, $this->item_count, MULTIMEDIA_VISIBLE_ITEM_CNT, $this->now_page);
+ $this->item_list = $this->multimediaView->getItemList($params, $order_params, $this->pager['disp_begin']);
+ if($this->item_list === false) {
+ return 'error';
+ }
+ }
+
+ return 'success';
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/view/main/item/thumbnail/Thumbnail.class.php b/multimedia/view/main/item/thumbnail/Thumbnail.class.php
index 9dbc1bd..5af49ac 100644
--- a/multimedia/view/main/item/thumbnail/Thumbnail.class.php
+++ b/multimedia/view/main/item/thumbnail/Thumbnail.class.php
@@ -1,38 +1,38 @@
-item['file_path'] != null) {
- $this->uploadsView->headerOutput(FILEUPLOADS_DIR.$this->item['file_path'], $this->item['upload_id'].MULTIMEDIA_MOVIE_THUMBNAIL_NAME, null, true);
- exit;
- }
- }
-}
+item['file_path'] != null) {
+ $this->uploadsView->headerOutput(FILEUPLOADS_DIR.$this->item['file_path'], $this->item['upload_id'].MULTIMEDIA_MOVIE_THUMBNAIL_NAME, null, true);
+ exit;
+ }
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/view/main/item/upload/Upload.class.php b/multimedia/view/main/item/upload/Upload.class.php
index af4e308..4d5f6bc 100644
--- a/multimedia/view/main/item/upload/Upload.class.php
+++ b/multimedia/view/main/item/upload/Upload.class.php
@@ -1,51 +1,51 @@
-filterChain->getFilterByName("SmartyAssign");
- $this->dialog_name = $smartyAssign->getLang("multimedia_item_upload_popup_name");
-
- $order_params = array(
- "album_sequence" => "ASC"
- );
-
- if(empty($this->album_id)) {
- $this->album_list = $this->multimediaView->getAlbumList($this->multimedia_obj['multimedia_id'], $order_params);
- if($this->album_list === false) {
- return 'error';
- }
- }
-
- return 'success';
- }
-}
-?>
+filterChain->getFilterByName("SmartyAssign");
+ $this->dialog_name = $smartyAssign->getLang("multimedia_item_upload_popup_name");
+
+ $order_params = array(
+ "album_sequence" => "ASC"
+ );
+
+ if(empty($this->album_id)) {
+ $this->album_list = $this->multimediaView->getAlbumList($this->multimedia_obj['multimedia_id'], $order_params);
+ if($this->album_list === false) {
+ return 'error';
+ }
+ }
+
+ return 'success';
+ }
+}
+?>
diff --git a/multimedia/view/main/list/List.class.php b/multimedia/view/main/list/List.class.php
index 936563f..79ff35a 100644
--- a/multimedia/view/main/list/List.class.php
+++ b/multimedia/view/main/list/List.class.php
@@ -1,162 +1,166 @@
-session->getParameter("multimedia_list_view_type".$this->block_id);
- if(!empty($this->view_type)) {
- $this->session->setParameter("multimedia_list_view_type".$this->block_id, $this->view_type);
- }else if(!empty($view_type)) {
- $this->view_type = $view_type;
- }else {
- $this->view_type = MULTIMEDIA_MOVIE_TYPE_NEW;
- }
- if(!isset($this->view_type) || $this->view_type == MULTIMEDIA_MOVIE_TYPE_NEW) {
- $order_params = array("insert_time" => "DESC");
- }else if($this->view_type == MULTIMEDIA_MOVIE_TYPE_POP) {
- $order_params = array("item_play_count" => "DESC");
- }else if($this->view_type == MULTIMEDIA_MOVIE_TYPE_FAV) {
- $order_params = array("item_vote_count" => "DESC");
- }
-
- $this->album_list = $this->multimediaView->getAlbumList($this->multimedia_obj['multimedia_id'], array("album_sequence" => "ASC"));
- if($this->album_list === false) {
- return 'error';
- }
- $this->album_count = count($this->album_list);
-
- if($this->album_count > 0) {
- $album = $this->session->getParameter("multimedia_list_album".$this->block_id);
- if(!empty($this->album)) {
- $this->session->setParameter("multimedia_list_album".$this->block_id, $this->album);
- }else if(!empty($album)) {
- $this->album = $album;
- }else {
- $this->album = MULTIMEDIA_ALL;
- }
-
- if($this->album == MULTIMEDIA_ALL) {
- $this->album_name = MULTIMEDIA_ALBUM_DEFAULT;
- }else {
- foreach($this->album_list as $album) {
- if($album['album_id'] == $this->album) {
- $this->album_name = $album['album_name'];
- $this->album_item_count = $album['item_count'];
- }
- }
- }
- if(empty($this->album_name)) {
- $this->album = MULTIMEDIA_ALL;
- $this->album_name = MULTIMEDIA_ALBUM_DEFAULT;
- $this->session->setParameter("multimedia_list_album".$this->block_id, $this->album);
- }
- }
-
- $date = $this->session->getParameter("multimedia_list_date");
- if(!empty($this->date)) {
- $this->session->setParameter("multimedia_list_date", $this->date);
- }else if(!empty($date)) {
- $this->date = $date;
- }else {
- $this->date = MULTIMEDIA_ALL;
- }
-
- $sort = $this->session->getParameter("multimedia_list_sort");
- if(!empty($this->sort)) {
- $this->session->setParameter("multimedia_list_sort", $this->sort);
- }else if(!empty($sort)) {
- $this->sort = $sort;
- }else {
- $this->sort = MULTIMEDIA_SORT_DATE_DESC;
- }
-
- $now_page = $this->session->getParameter("multimedia_list_now_page");
- if(!empty($this->now_page)) {
- $this->session->setParameter("multimedia_list_now_page", $this->now_page);
- }else if(!empty($now_page)){
- $this->now_page = $now_page;
- }
-
- $params = array(
- "multimedia_id" => intval($this->multimedia_obj['multimedia_id']),
- "agree_flag" => _ON
- );
-
- if(!empty($this->album) && $this->album != MULTIMEDIA_ALL) {
- $params = array_merge($params, array("album_id" => $this->album));
- }
-
- if($this->date == MULTIMEDIA_DATE_DAY) {
- $params = array_merge($params, array("date(T.insert_time) = curdate()" => null));
- }else if($this->date == MULTIMEDIA_DATE_WEEK) {
- $params = array_merge($params, array("weekofyear(T.insert_time) = weekofyear(now())" => null));
- }else if($this->date == MULTIMEDIA_DATE_MONTH) {
- $params = array_merge($params, array("month(T.insert_time) = month(now())" => null));
- }
-
- if($this->sort == "" || $this->sort == MULTIMEDIA_SORT_DATE_DESC) {
- $order_params = array_merge($order_params, array("insert_time" => "DESC"));
- }else if($this->sort == MULTIMEDIA_SORT_DATE_ASC) {
- $order_params = array_merge($order_params, array("insert_time" => "ASC"));
- }else if($this->sort == MULTIMEDIA_SORT_TITLE_ASC) {
- $order_params = array_merge($order_params, array("item_name" => "ASC"));
- }else if($this->sort == MULTIMEDIA_SORT_PLAY_DESC) {
- $order_params = array("item_play_count" => "DESC");
- }else if($this->sort == MULTIMEDIA_SORT_VOTE_DESC) {
- $order_params = array("item_vote_count" => "DESC");
- }
-
- $this->item_count = $this->multimediaView->getItemListCount($params);
- if($this->item_count === false) {
- return 'error';
- }
- $this->multimediaView->setPageInfo($this->pager, $this->item_count, MULTIMEDIA_VISIBLE_ITEM_CNT, $this->now_page);
- $this->item_list = $this->multimediaView->getItemList($params, $order_params, $this->pager['disp_begin']);
- if($this->item_list === false) {
- return 'error';
- }
-
- return 'success';
- }
-}
+session->getParameter("multimedia_list_view_type".$this->block_id);
+ if(!empty($this->view_type)) {
+ $this->session->setParameter("multimedia_list_view_type".$this->block_id, $this->view_type);
+ }else if(!empty($view_type)) {
+ $this->view_type = $view_type;
+ }else {
+ $this->view_type = MULTIMEDIA_MOVIE_TYPE_NEW;
+ }
+ if(!isset($this->view_type) || $this->view_type == MULTIMEDIA_MOVIE_TYPE_NEW) {
+ $order_params = array("insert_time" => "DESC");
+ }else if($this->view_type == MULTIMEDIA_MOVIE_TYPE_POP) {
+ $order_params = array("item_play_count" => "DESC");
+ }else if($this->view_type == MULTIMEDIA_MOVIE_TYPE_FAV) {
+ $order_params = array("item_vote_count" => "DESC");
+ }
+
+ $this->album_list = $this->multimediaView->getAlbumList($this->multimedia_obj['multimedia_id'], array("album_sequence" => "ASC"));
+ if($this->album_list === false) {
+ return 'error';
+ }
+ $this->album_count = count($this->album_list);
+
+ if($this->album_count > 0) {
+ $album = $this->session->getParameter("multimedia_list_album".$this->block_id);
+ if(!empty($this->album)) {
+ $this->session->setParameter("multimedia_list_album".$this->block_id, $this->album);
+ }else if(!empty($album)) {
+ $this->album = $album;
+ }else {
+ $this->album = MULTIMEDIA_ALL;
+ }
+
+ if($this->album == MULTIMEDIA_ALL) {
+ $this->album_name = MULTIMEDIA_ALBUM_DEFAULT;
+ }else {
+ foreach($this->album_list as $album) {
+ if($album['album_id'] == $this->album) {
+ $this->album_name = $album['album_name'];
+ $this->album_item_count = $album['item_count'];
+ }
+ }
+ }
+ if(empty($this->album_name)) {
+ $this->album = MULTIMEDIA_ALL;
+ $this->album_name = MULTIMEDIA_ALBUM_DEFAULT;
+ $this->session->setParameter("multimedia_list_album".$this->block_id, $this->album);
+ }
+ }
+
+ $date = $this->session->getParameter("multimedia_list_date");
+ if(!empty($this->date)) {
+ $this->session->setParameter("multimedia_list_date", $this->date);
+ }else if(!empty($date)) {
+ $this->date = $date;
+ }else {
+ $this->date = MULTIMEDIA_ALL;
+ }
+
+ $sort = $this->session->getParameter("multimedia_list_sort");
+ if(!empty($this->sort)) {
+ $this->session->setParameter("multimedia_list_sort", $this->sort);
+ }else if(!empty($sort)) {
+ $this->sort = $sort;
+ }else {
+ $this->sort = MULTIMEDIA_SORT_DATE_DESC;
+ }
+
+ $now_page = $this->session->getParameter("multimedia_list_now_page");
+ if(!empty($this->now_page)) {
+ $this->session->setParameter("multimedia_list_now_page", $this->now_page);
+ }else if(!empty($now_page)){
+ $this->now_page = $now_page;
+ }
+
+ $params = array(
+ "multimedia_id" => intval($this->multimedia_obj['multimedia_id']),
+ "agree_flag" => _ON
+ );
+
+ if(!empty($this->album) && $this->album != MULTIMEDIA_ALL) {
+ $params = array_merge($params, array("album_id" => $this->album));
+ }
+
+ if($this->date == MULTIMEDIA_DATE_DAY) {
+ $params = array_merge($params, array("date(T.insert_time) = curdate()" => null));
+ }else if($this->date == MULTIMEDIA_DATE_WEEK) {
+ $params = array_merge($params, array("weekofyear(T.insert_time) = weekofyear(now())" => null));
+ }else if($this->date == MULTIMEDIA_DATE_MONTH) {
+ $params = array_merge($params, array("month(T.insert_time) = month(now())" => null));
+ }
+
+ if($this->sort == "" || $this->sort == MULTIMEDIA_SORT_DATE_DESC) {
+ $order_params = array_merge($order_params, array("insert_time" => "DESC"));
+ }else if($this->sort == MULTIMEDIA_SORT_DATE_ASC) {
+ $order_params = array_merge($order_params, array("insert_time" => "ASC"));
+ }else if($this->sort == MULTIMEDIA_SORT_TITLE_ASC) {
+ $order_params = array_merge($order_params, array("item_name" => "ASC"));
+ }else if($this->sort == MULTIMEDIA_SORT_PLAY_DESC) {
+ $order_params = array("item_play_count" => "DESC");
+ }else if($this->sort == MULTIMEDIA_SORT_VOTE_DESC) {
+ $order_params = array("item_vote_count" => "DESC");
+ }
+
+ $this->item_count = $this->multimediaView->getItemListCount($params);
+ if($this->item_count === false) {
+ return 'error';
+ }
+ $this->multimediaView->setPageInfo($this->pager, $this->item_count, MULTIMEDIA_VISIBLE_ITEM_CNT, $this->now_page);
+ $this->item_list = $this->multimediaView->getItemList($params, $order_params, $this->pager['disp_begin']);
+ if($this->item_list === false) {
+ return 'error';
+ }
+
+//$this->script = file_get_contents(BASE_DIR . "/images/multimedia/jquery.jplayer.js");
+
+ return 'success';
+ }
+}
?>
\ No newline at end of file
diff --git a/multimedia/view/main/xml/Xml.class.php b/multimedia/view/main/xml/Xml.class.php
index 42e728d..45c6a24 100644
--- a/multimedia/view/main/xml/Xml.class.php
+++ b/multimedia/view/main/xml/Xml.class.php
@@ -1,43 +1,43 @@
-
\ No newline at end of file
diff --git a/scheduler/CHANGES.txt b/scheduler/CHANGES.txt
index bd80ecf..2a55bec 100644
--- a/scheduler/CHANGES.txt
+++ b/scheduler/CHANGES.txt
@@ -1,6 +1,11 @@
NetComomns2-scheduler Changelog
===============================
+2013/05/20: Version 2.4.0.1
+===============================
+- スケジュールがない場合、JavaScriptエラーが発生することがあるバグを修正
+
+
2012/03/26: Version 2.4.0.0
===============================
- 文字列の切り詰め処理をエンコード前に行うように修正
diff --git a/scheduler/install.ini b/scheduler/install.ini
index d85b786..6f69c21 100644
--- a/scheduler/install.ini
+++ b/scheduler/install.ini
@@ -1,4 +1,4 @@
-version = "2.4.0.0"
+version = "2.4.0.1"
action_name = "scheduler_view_main_init"
edit_action_name = "scheduler_view_edit_display"
block_add_action = "scheduler_view_edit_initialize"
diff --git a/scheduler/templates/default/scheduler_view_main_list.html b/scheduler/templates/default/scheduler_view_main_list.html
index be7ff22..ed32ae3 100644
--- a/scheduler/templates/default/scheduler_view_main_list.html
+++ b/scheduler/templates/default/scheduler_view_main_list.html
@@ -78,16 +78,16 @@
<{/strip}>
\ No newline at end of file