PageRenderTime 43ms CodeModel.GetById 15ms RepoModel.GetById 0ms app.codeStats 0ms

/mods/_standard/blogs/edit_post.php

https://github.com/harriswong/ATutor
PHP | 104 lines | 72 code | 19 blank | 13 comment | 9 complexity | 846e9db8630d1d958852227fd645fad3 MD5 | raw file
  1. <?php
  2. /****************************************************************/
  3. /* ATutor */
  4. /****************************************************************/
  5. /* Copyright (c) 2002-2010 */
  6. /* Inclusive Design Institute */
  7. /* http://atutor.ca */
  8. /* */
  9. /* This program is free software. You can redistribute it and/or*/
  10. /* modify it under the terms of the GNU General Public License */
  11. /* as published by the Free Software Foundation. */
  12. /****************************************************************/
  13. // $Id$
  14. define('AT_INCLUDE_PATH', '../../../include/');
  15. require (AT_INCLUDE_PATH.'vitals.inc.php');
  16. // authenticate ot+oid ....
  17. $owner_type = abs($_REQUEST['ot']);
  18. $owner_id = abs($_REQUEST['oid']);
  19. if (!($owner_status = blogs_authenticate($owner_type, $owner_id)) || !query_bit($owner_status, BLOGS_AUTH_WRITE)) {
  20. $msg->addError('ACCESS_DENIED');
  21. header('Location: index.php');
  22. exit;
  23. }
  24. if (isset($_POST['cancel'])) {
  25. $msg->addFeedback('CANCELLED');
  26. header('Location: '.url_rewrite('mods/_standard/blogs/view.php?ot='.BLOGS_GROUP.SEP.'oid='.$_POST['oid'], AT_PRETTY_URL_IS_HEADER));
  27. exit;
  28. } else if (isset($_POST['submit'])) {
  29. $_POST['title'] = $addslashes(trim($_POST['title']));
  30. $_POST['body'] = $addslashes(trim($_POST['body']));
  31. $id = abs($_POST['id']);
  32. if ($_POST['body'] == '') {
  33. $msg->addError(array('EMPTY_FIELDS', _AT('body')));
  34. }
  35. if (!$msg->containsErrors()) {
  36. $_POST['private'] = abs($_POST['private']);
  37. $sql = "UPDATE ".TABLE_PREFIX."blog_posts SET private=$_POST[private], title='$_POST[title]', body='$_POST[body]', date=date WHERE owner_type=".BLOGS_GROUP." AND owner_id=$_REQUEST[oid] AND post_id=$id";
  38. mysql_query($sql, $db);
  39. $msg->addFeedback('POST_ADDED_SUCCESSFULLY');
  40. header('Location: '.url_rewrite('mods/_standard/blogs/post.php?ot='.BLOGS_GROUP.SEP.'oid='.$_POST['oid'].SEP.'id='.$id, AT_PRETTY_URL_IS_HEADER));
  41. exit;
  42. }
  43. }
  44. $id = abs($_REQUEST['id']);
  45. $sql = "SELECT private, title, body FROM ".TABLE_PREFIX."blog_posts WHERE owner_type=".BLOGS_GROUP." AND owner_id=$_REQUEST[oid] AND post_id=$id";
  46. $result = mysql_query($sql, $db);
  47. $post_row = mysql_fetch_assoc($result);
  48. $_pages['mods/_standard/blogs/edit_post.php']['parent'] = 'mods/_standard/blogs/post.php?ot='.BLOGS_GROUP.SEP.'oid='.$_REQUEST['oid'].SEP.'id='.$_REQUEST['id'];
  49. $_pages['mods/_standard/blogs/post.php?ot='.BLOGS_GROUP.SEP.'oid='.$_REQUEST['oid'].SEP.'id='.$_REQUEST['id']] = $_pages['mods/_standard/blogs/post.php'];
  50. $_pages['mods/_standard/blogs/post.php?ot='.BLOGS_GROUP.SEP.'oid='.$_REQUEST['oid'].SEP.'id='.$_REQUEST['id']]['children'] = array('mods/_standard/blogs/edit_post.php', 'mods/_standard/blogs/delete_post.php?ot='.BLOGS_GROUP.SEP.'oid='.$_REQUEST['oid'].SEP.'id='.$_REQUEST['id']);
  51. $_pages['mods/_standard/blogs/post.php?ot='.BLOGS_GROUP.SEP.'oid='.$_REQUEST['oid'].SEP.'id='.$_REQUEST['id']]['parent'] = 'mods/_standard/blogs/view.php?ot='.BLOGS_GROUP.SEP.'oid='.$_REQUEST['oid'];
  52. $_pages['mods/_standard/blogs/post.php?ot='.BLOGS_GROUP.SEP.'oid='.$_REQUEST['oid'].SEP.'id='.$_REQUEST['id']]['title'] = $post_row['title'];
  53. $_pages['mods/_standard/blogs/post.php?ot='.BLOGS_GROUP.SEP.'oid='.$_REQUEST['oid'].SEP.'id='.$_REQUEST['id']]['children'] = array('mods/_standard/blogs/edit_post.php', 'mods/_standard/blogs/delete_post.php?ot='.BLOGS_GROUP.SEP.'oid='.$_REQUEST['oid'].SEP.'id='.$_REQUEST['id']);
  54. $_pages['mods/_standard/blogs/view.php?ot='.BLOGS_GROUP.SEP.'oid='.$_REQUEST['oid']]['title'] = blogs_get_blog_name(BLOGS_GROUP, $_REQUEST['oid']);
  55. $_pages['mods/_standard/blogs/view.php?ot='.BLOGS_GROUP.SEP.'oid='.$_REQUEST['oid']]['parent'] = 'mods/_standard/blogs/index.php';
  56. $_pages['mods/_standard/blogs/view.php?ot='.BLOGS_GROUP.SEP.'oid='.$_REQUEST['oid']]['children'] = array('mods/_standard/blogs/add_post.php');
  57. $onload = 'document.form.title.focus();';
  58. require (AT_INCLUDE_PATH.'header.inc.php');
  59. ?>
  60. <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" name="form">
  61. <input type="hidden" name="ot" value="<?php echo BLOGS_GROUP; ?>" />
  62. <input type="hidden" name="oid" value="<?php echo abs($_REQUEST['oid']); ?>" />
  63. <input type="hidden" name="id" value="<?php echo $id; ?>" />
  64. <div class="input-form">
  65. <div class="row">
  66. <label for="title"><?php echo _AT('title'); ?></label><br />
  67. <input type="text" name="title" id="title" value="<?php echo AT_print($post_row['title'], 'input.text'); ?>" size="50" />
  68. </div>
  69. <div class="row">
  70. <span class="required" title="<?php echo _AT('required_field'); ?>">*</span><label for="body"><?php echo _AT('body'); ?></label><br />
  71. <textarea name="body" id="body" cols="40" rows="10"><?php echo AT_print($post_row['body'], 'input.text'); ?></textarea>
  72. </div>
  73. <div class="row">
  74. <a href="<?php echo htmlspecialchars($_SERVER['REQUEST_URI'], ENT_QUOTES); ?>#jumpcodes" title="<?php echo _AT('jump_codes'); ?>"><img src="images/clr.gif" height="1" width="1" alt="<?php echo _AT('jump_codes'); ?>" border="0" /></a><?php require(AT_INCLUDE_PATH.'html/code_picker.inc.php'); ?>
  75. <a name="jumpcodes"></a>
  76. </div>
  77. <div class="row">
  78. <input type="checkbox" name="private" value="1" id="private" <?php if ($post_row['private']) { echo 'checked="checked"'; } ?> /><label for="private"><?php echo _AT('private'); ?></label>
  79. </div>
  80. <div class="row buttons">
  81. <input type="submit" name="submit" value="<?php echo _AT('save'); ?>" accesskey="s" /> <input type="submit" name="cancel" value="<?php echo _AT('cancel'); ?>" />
  82. </div>
  83. </div>
  84. </form>
  85. <?php require(AT_INCLUDE_PATH.'footer.inc.php'); ?>