+++ /dev/null
-<?php\r
-/*==============================================================\r
- Photo Album\r
- ==============================================================\r
- Copyright (c) 2006 by Dylan Cheon & Kelvin Wong\r
- Institute for Assistive Technology / University of Victoria\r
- http://www.canassist.ca/ \r
- \r
- This program is free software. You can redistribute it and/or\r
- modify it under the terms of the GNU General Public License \r
- as published by the Free Software Foundation. \r
- ==============================================================\r
- */\r
-// $Id:\r
-\r
-/**\r
- * @desc This file stores or updates the image / comment data in the database\r
- * @author Dylan Cheon & Kelvin Wong\r
- * @copyright 2006, Institute for Assistive Technology / University of Victoria \r
- * @link http://www.canassist.ca/ \r
- * @license GNU\r
- */\r
- \r
-define('AT_INCLUDE_PATH', '../../../include/');\r
-require_once(AT_INCLUDE_PATH.'vitals.inc.php');\r
-$_custom_css = $_base_path . 'mods/photo_album/module.css'; // use a custom stylesheet\r
-require_once (AT_INCLUDE_PATH.'header.inc.php');\r
-\r
-\r
- require_once ('../define.php');\r
- require_once ('../include/general_func.php');\r
- require_once ('../include/data_func.php');\r
- $config_mode=get_config_mode($_SESSION['pa']['course_id']);\r
- \r
- if (isset($_POST['cancel_image'])){\r
- if ($_SESSION['pa']['mode']=='add'){\r
- if ($_SESSION['pa']['administrator_mode']==true){\r
- $action='admin_image_list.php';\r
- } else if ($_SESSION['pa']['instructor_mode']==true){\r
- $action='instructor_image.php';\r
- } else {\r
- $action='index.php';\r
- }\r
- } else if ($_SESSION['pa']['mode']=='edit'){\r
- if ($_SESSION['pa']['my_pic_mode']==true){\r
- $action='my_photo.php';\r
- } else {\r
- $action='view.php?image_id='.$_SESSION['pa']['image_id'];\r
- }\r
- } else {\r
- $msg->addError('pa_var_unauthorized');\r
- out();\r
- } \r
- redirect($action);\r
- } else if ($_POST['cancel_comment']){\r
- $action='view.php?image_id='.$_SESSION['pa']['image_id'];\r
- redirect($action);\r
- } else if ((isset($_POST['submit'])) && ($_SESSION['pa']['mode']=='add')){ //mode add\r
- if ($_SESSION['pa']['completed']==true){\r
- out();\r
- } else {\r
- $goback_url='handler/add_begin.php';\r
- if (($_SESSION['pa']['choose']==IMAGE) && ($_SESSION['pa']['image_uploaded']==true)){\r
- $store_path=ALBUM_IMAGE_STORE.$_SESSION['login'].'/';\r
- $_SESSION['pa']['title']=$_POST['title'];\r
- $_SESSION['pa']['alt']=$_POST['alt'];\r
- $_SESSION['pa']['description']=$_POST['description'];\r
- unset($_SESSION['pa']['error']);\r
- if ((empty($_POST['title']) || (strlen($_POST['title'])==0))){\r
- $_SESSION['pa']['error']['title']=true;\r
- $msg->addError('pa_user_title_empty');\r
- redirect($goback_url);\r
- } else if (is_admin_for_course() && (empty($_POST['alt']) || (strlen($_POST['alt'])==0))){\r
- $_SESSION['pa']['error']['alt']=true;\r
- $msg->addError('pa_user_alt_empty');\r
- redirect($goback_url);\r
- } else { //input has no error \r
- $view_image_name=modify_image_name($store_path, $_SESSION['pa']['view_image_name']);\r
- $thumb_image_name=modify_image_name($store_path, $_SESSION['pa']['thumb_image_name']); \r
- $store_dir=AT_CONTENT_DIR.$store_path;\r
- if (!is_dir($store_dir)){\r
- if (!@mkdir($store_dir)){\r
- $msg->addError('pa_func_mkdir');\r
- out();\r
- }\r
- chmod ($store_dir, 0757);\r
- }\r
- \r
- if (!copy(AT_CONTENT_DIR.$_SESSION['pa']['temp_folder'].$_SESSION['pa']['view_image_name'], AT_CONTENT_DIR.$store_path.$view_image_name)){\r
- $msg->addError('pa_func_copy');\r
- out();\r
- }\r
- if (!copy(AT_CONTENT_DIR.$_SESSION['pa']['temp_folder'].$_SESSION['pa']['thumb_image_name'], AT_CONTENT_DIR.$store_path.$thumb_image_name)){\r
- $msg->addError('pa_func_copy');\r
- out();\r
- }\r
- \r
- if (is_admin_for_course()==true){\r
- $store=store_image_in_database($_SESSION['pa']['course_id'], $_SESSION['login'], htmlspecialchars($_SESSION['pa']['title']), htmlspecialchars($_SESSION['pa']['description']), $view_image_name, $store_path, $thumb_image_name, htmlspecialchars($_SESSION['pa']['alt']), APPROVED);\r
- } else if ($config_mode==CONFIG_ENABLED){ //student image add when config is enabled\r
- $store=store_image_in_database($_SESSION['pa']['course_id'], $_SESSION['login'], htmlspecialchars($_SESSION['pa']['title']), htmlspecialchars($_SESSION['pa']['description']), $view_image_name, $store_path, $thumb_image_name, htmlspecialchars($_SESSION['pa']['title']), POSTED_NEW);\r
- } else { //student image add when config is disabled\r
- $store=store_image_in_database($_SESSION['pa']['course_id'], $_SESSION['login'], htmlspecialchars($_SESSION['pa']['title']), htmlspecialchars($_SESSION['pa']['description']), $view_image_name, $store_path, $thumb_image_name, htmlspecialchars($_SESSION['pa']['title']), APPROVED);\r
- }\r
-\r
- if ($store!=true){\r
- $msg->addError('pa_func_store_image_in_database');\r
- out();\r
- } else {\r
- $_SESSION['pa']['completed']=true;\r
- if ((is_admin_for_course()==true) || ($config_mode==CONFIG_DISABLED)){\r
- $msg->addFeedback('pa_add_image_success_config_disabled');\r
- } else if ($config_mode==CONFIG_ENABLED){\r
- $msg->addFeedback('pa_add_image_success_config_enabled');\r
- }\r
- out();\r
- }\r
- }\r
- } else if ($_SESSION['pa']['choose']==COMMENT){ //store comment\r
- $comment=trim($_POST['comment']);\r
- if (empty($comment)){\r
- $_SESSION['pa']['error']['comment']=true;\r
- $msg->addError('pa_user_comment_empty');\r
- redirect($goback_url);\r
- }\r
- if ((is_admin_for_course()==true) || ($config_mode==CONFIG_DISABLED)){\r
- $store=store_comment_in_database($_SESSION['pa']['course_id'], $_SESSION['login'], htmlspecialchars($_POST['comment']), $_SESSION['pa']['image_id'], APPROVED);\r
- } else {\r
- $store=store_comment_in_database($_SESSION['pa']['course_id'], $_SESSION['login'], htmlspecialchars($_POST['comment']), $_SESSION['pa']['image_id'], POSTED_NEW);\r
- } \r
- \r
- if ($store==true){\r
- $_SESSION['pa']['completed']=true;\r
- if ((is_admin_for_course()==true) || ($config_mode==CONFIG_DISABLED)){\r
- $msg->addFeedback('pa_add_comment_success_config_disable');\r
- } else if ($config_mode==CONFIG_ENABLED){\r
- $msg->addFeedback('pa_add_comment_success_config_enabled');\r
- }\r
- redirect('view.php?image_id='.$_SESSION['pa']['image_id']);\r
- } else {\r
- $msg->addError('pa_func_store_comment_in_database');\r
- out();\r
- }\r
- } else {\r
- $msg->addError('pa_var_unauthorized');\r
- out();\r
- }\r
- }\r
- \r
- /* mode is edit */\r
- } else if (($_SESSION['pa']['mode']=='edit')&& (isset($_POST['submit']))){\r
- if ($_SESSION['pa']['completed']==true){\r
- out();\r
- } else {\r
- $goback_url='handler/edit_begin.php'; \r
- if (($_SESSION['pa']['choose']==IMAGE) && ($_SESSION['pa']['image_checked']==true)){\r
- $_SESSION['pa']['description']=$_POST['description'];\r
- $_SESSION['pa']['title']=$_POST['title'];\r
- $_SESSION['pa']['alt']=$_POST['alt'];\r
- if ((empty($_SESSION['pa']['title'])) || ((strlen($_SESSION['pa']['title']))==0)){\r
- $_SESSION['pa']['error']['title']=true;\r
- $msg->addError('pa_user_title_empty');\r
- redirect($goback_url);\r
- } else if (is_admin_for_course() && (empty($_SESSION['pa']['alt']) || (strlen($_SESSION['pa']['alt'])==0))){\r
- $msg->addError('pa_user_alt_empty');\r
- $_SESSION['pa']['error']['alt']=true;\r
- redirect($goback_url);\r
- }\r
- if ($_SESSION['pa']['image_copy_required']==true){\r
- $data_array=get_single_data(IMAGE, $_SESSION['pa']['image_id'], $_SESSION['pa']['course_id']);\r
- $store_dir=AT_CONTENT_DIR.ALBUM_IMAGE_STORE.$data_array['login'].'/';\r
- $old_view_image=AT_CONTENT_DIR.$data_array['location'].$data_array['view_image_name'];\r
- $old_thumb_image=AT_CONTENT_DIR.$data_array['location'].$data_array['thumb_image_name'];\r
- $image_view_name=modify_image_name($data_array['location'], $_SESSION['pa']['view_image_name']);\r
- $image_thumb_name=modify_image_name($data_array['location'], $_SESSION['pa']['thumb_image_name']);\r
- if (!copy(AT_CONTENT_DIR.$_SESSION['pa']['temp_folder'].$_SESSION['pa']['view_image_name'], $store_dir.$image_view_name)){\r
- $msg->addError('pa_func_copy');\r
- out();\r
- } \r
- if (!copy(AT_CONTENT_DIR.$_SESSION['pa']['temp_folder'].$_SESSION['pa']['thumb_image_name'], $store_dir.$image_thumb_name)){\r
- $msg->addError('pa_func_copy');\r
- out();\r
- }\r
- if (!@unlink($old_view_image)){\r
- $msg->addError('pa_func_unlink');\r
- }\r
- if (!@unlink($old_thumb_image)){\r
- $msg->addError('pa_func_unlink');\r
- }\r
- \r
- if (is_admin_for_course() || $config_mode==CONFIG_DISABLED){\r
- $update=update_image_in_database($_SESSION['pa']['course_id'], htmlspecialchars($_SESSION['pa']['title']), htmlspecialchars($_SESSION['pa']['description']), $image_view_name, $_SESSION['pa']['image_id'], $image_thumb_name, htmlspecialchars($_SESSION['pa']['alt']), APPROVED);\r
- } else {\r
- $update=update_image_in_database($_SESSION['pa']['course_id'], htmlspecialchars($_SESSION['pa']['title']), htmlspecialchars($_SESSION['pa']['description']), $image_view_name, $_SESSION['pa']['image_id'], $image_thumb_name, htmlspecialchars($_SESSION['pa']['title']), POSTED_NEW);\r
- }\r
- \r
- if ($update==false){\r
- $msg->addError('pa_func_update_image_in_database');\r
- out();\r
- } else {\r
- $_SESSION['pa']['completed']=true;\r
- if ((is_admin_for_course()==true) || ($config_mode==CONFIG_DISABLED)){\r
- $msg->addFeedback('pa_edit_image_success_config_disabled');\r
- } else if ($config_mode==CONFIG_ENABLED){\r
- $msg->addFeedback('pa_edit_image_success_config_enabled');\r
- }\r
- out();\r
- }\r
- } else { //image copy is not required, so just update the database with title and description\r
- $data_array=get_single_data(IMAGE, $_SESSION['pa']['image_id'], $_SESSION['pa']['course_id']);\r
- if (is_admin_for_course() || $config_mode==CONFIG_DISABLED){\r
- $update=update_image_in_database($_SESSION['pa']['course_id'], htmlspecialchars($_SESSION['pa']['title']), htmlspecialchars($_SESSION['pa']['description']), $data_array['view_image_name'], $_SESSION['pa']['image_id'], $data_array['thumb_image_name'], htmlspecialchars($_SESSION['pa']['alt']), APPROVED);\r
- } else {\r
- $update=update_image_in_database($_SESSION['pa']['course_id'], htmlspecialchars($_SESSION['pa']['title']), htmlspecialchars($_SESSION['pa']['description']), $data_array['view_image_name'], $_SESSION['pa']['image_id'], $data_array['thumb_image_name'], htmlspecialchars($_SESSION['pa']['title']), POSTED_NEW);\r
- }\r
- \r
- if ($update==false){\r
- $msg->addError('pa_func_update_image_in_database');\r
- out();\r
- } else {\r
- $_SESSION['pa']['completed']=true;\r
- if ((is_admin_for_course()==true) || ($config_mode==CONFIG_DISABLED)){\r
- $msg->addFeedback('pa_edit_image_success_config_disabled');\r
- } else if ($config_mode==CONFIG_ENABLED){\r
- $msg->addFeedback('pa_edit_image_success_config_enabled');\r
- }\r
- out();\r
- }\r
- }\r
- } else if ($_SESSION['pa']['choose']==COMMENT){ \r
- $_SESSION['pa']['comment_checked']=true;\r
- $comment=trim($_POST['comment']);\r
- if (empty($comment)){\r
- $_SESSION['pa']['error']['comment']=true;\r
- $msg->addError('pa_user_comment_empty');\r
- redirect($goback_url);\r
- }\r
- \r
- if ((is_admin_for_course()==true) || ($config_mode==CONFIG_DISABLED)){\r
- $update=update_comment_in_database($_SESSION['pa']['course_id'], htmlspecialchars($_POST['comment']), $_SESSION['pa']['image_id'], $_SESSION['pa']['comment_id'], APPROVED);\r
- } else {\r
- $update=update_comment_in_database($_SESSION['pa']['course_id'], htmlspecialchars($_POST['comment']), $_SESSION['pa']['image_id'], $_SESSION['pa']['comment_id'], POSTED_NEW);\r
- }\r
- \r
- if ($update==false){\r
- $msg->addError('pa_func_update_comment_in_database');\r
- out();\r
- } else {\r
- if ((is_admin_for_course()==true) || ($config_mode==CONFIG_DISABLED)){\r
- $msg->addFeedback('pa_edit_comment_success_config_disable');\r
- } else if ($config_mode==CONFIG_ENABLED){\r
- $msg->addFeedback('pa_edit_comment_success_config_enabled');\r
- }\r
- redirect('view.php?image_id='.$_SESSION['pa']['image_id']);\r
- }\r
- } else {\r
- $msg->addError('pa_var_unauthorized');\r
- out();\r
- }\r
- }\r
- } else {\r
- $msg->addError('pa_var_unauthorized');\r
- out();\r
- }\r
- \r
-?>\r
-\r
-<?php require_once(AT_INCLUDE_PATH.'footer.inc.php'); ?>
\ No newline at end of file