| <?php |
| /******************************************************************************* |
| * Copyright (c) 2006 Eclipse Foundation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * Wayne Beaton (Eclipse Foundation)- initial API and implementation |
| *******************************************************************************/ |
| |
| #***************************************************************************** |
| # |
| # edit_resource.php |
| # |
| # Author: Wayne Beaton |
| # Date: February 16, 2006 |
| # |
| # Description: |
| # This file is used to edit resources. |
| #**************************************************************************** |
| |
| include ('scripts/common.php'); |
| include ('scripts/sql.php'); |
| |
| $broker = new ResourceBroker(); |
| $id = get_get_parameter('id'); |
| if ($id == null) { |
| $id = get_post_parameter('id'); |
| $action = get_post_parameter('action'); |
| if ($id == null) { |
| if ($action == "create_resource") { |
| $title = get_post_parameter('resource_title'); |
| $description = get_post_parameter('resource_description'); |
| $type = get_post_parameter('resource_type'); |
| $image = get_post_parameter('resource_image'); |
| $categories = get_post_parameter('resource_categories'); |
| $id = $broker->create_resource($title, $description, $type, $image, $categories); |
| } |
| } else { |
| if ($action == "update_resource") { |
| $title = get_post_parameter('resource_title'); |
| $description = get_post_parameter('resource_description'); |
| $type = get_post_parameter('resource_type'); |
| $image = get_post_parameter('resource_image'); |
| $categories = get_post_parameter('resource_categories'); |
| $broker->update_resource($id, $title, $description, $type, $image, $categories); |
| } else if ($action == "delete_resource") { |
| $broker->delete_resource($id); |
| goto_list_resources(); |
| } else if ($action == "add_categories") { |
| $category_ids = get_post_parameter('category'); |
| $broker->add_categories($id, $category_ids); |
| } else if ($action == "update_link") { |
| $link_id = get_post_parameter('link_id'); |
| $title = get_post_parameter('link_title'); |
| $language = get_post_parameter('link_language'); |
| $date = get_post_parameter('link_date'); |
| $path = get_post_parameter('link_path'); |
| $type = get_post_parameter('link_type'); |
| $authors = get_post_parameter('link_authors'); |
| $broker->update_link($id, $link_id, $title, $language, $date, $path, $type, $authors); |
| } else if ($action == "delete_link") { |
| $link_id = get_post_parameter('link_id'); |
| $broker->delete_link($link_id); |
| }else if ($action == "create_link") { |
| $title = get_post_parameter('link_title'); |
| $language = get_post_parameter('link_language'); |
| $date = get_post_parameter('link_date'); |
| $path = get_post_parameter('link_path'); |
| $type = get_post_parameter('link_type'); |
| $authors = get_post_parameter('link_authors'); |
| $broker->create_link($id, $title, $language, $date, $path, $type, $authors); |
| } |
| } |
| } |
| |
| include("scripts/header.php"); |
| display_messages($broker->messages); |
| |
| function get_selected($parameter, $value) { |
| global $type; |
| return $type == $value ? 'selected' : ''; |
| } |
| |
| if ($id != null) { |
| $result = mysql_query("select id, title, type, description, image_path from resource where id=$id"); |
| if ($error = mysql_error()) { |
| echo "Error querying resources: $error<br/>"; |
| exit; |
| } |
| if ($row = mysql_fetch_array($result)) { |
| $id = $row[0]; |
| $title = $row[1]; |
| $type = $row[2]; |
| $description = $row[3]; |
| $image_path = $row[4]; |
| $categories = $broker->get_resource_categories_string($id); |
| |
| } else { |
| echo "No resource found with id=$id"; |
| exit; |
| } |
| } else { |
| $title = "New Resource"; |
| $type = "article"; |
| $description = "Description"; |
| $image_path = ""; |
| } |
| ?> |
| <div class="section"> |
| <h3><?= $id == null ? 'Create' : 'Edit' ?> Resource</h3> |
| <?php |
| if ($id != null) { |
| ?> |
| <form method="post" action="edit_resource.php"> |
| <input type="hidden" name="action" value="delete_resource"/> |
| <input type="hidden" name="id" value="<?= $id ?>"/> |
| <p><input type="submit" value="Delete"/></p> |
| </form> |
| <?php |
| } |
| ?> |
| <form method="post" action="edit_resource.php"> |
| <input type="hidden" name="action" value="<?= $id == null ? 'create_resource' : 'update_resource' ?>"/> |
| <input type="hidden" name="id" value="<?= $id ?>"/> |
| <table> |
| <tr><td>Title: *</td><td><input type="text" style="width: 500px;" name="resource_title" value="<?= $title ?>"/></td></tr> |
| <tr><td valign="top">Description: *</td> |
| <td> |
| <textarea style="width: 500px;" rows="5" name="resource_description"><?= $description ?></textarea><br/> |
| The description should <b>not</b> contain HTML markup. |
| </td> |
| </tr> |
| <tr><td>Type: *</td><td> |
| <select name="resource_type"> |
| <option value="article" <?= get_selected($type, 'article') ?>>Eclipse Corner Article</option> |
| <option value="publication" <?= get_selected($type, 'publication') ?>>Article from another source</option> |
| <option value="study" <?= get_selected($type, 'study') ?>>Case study</option> |
| <option value="book" <?= get_selected($type, 'book') ?>>Book</option> |
| <option value="presentation" <?= get_selected($type, 'presentation') ?>>Presentation</option> |
| <option value="demo" <?= get_selected($type, 'demo') ?>>Demonstration</option> |
| <option value="webinar" <?= get_selected($type, 'webinar') ?>>Webinar</option> |
| <option value="podcast" <?= get_selected($type, 'podcast') ?>>Podcast</option> |
| <option value="code" <?= get_selected($type, 'code') ?>>Code Sample</option> |
| <option value="course" <?= get_selected($type, 'course') ?>>Course</option> |
| <option value="other" <?= get_selected($type, 'other') ?>>Other</option> |
| </select> |
| </td></tr> |
| <tr><td>Image Path:</td><td><input type="text" style="width: 500px;" name="resource_image" value="<?= $image_path ?>"/></td></tr> |
| <tr><td>Categories:</td><td><input type="text" style="width: 500px;" name="resource_categories" value="<?= $categories ?>"/></td></tr> |
| <tr> |
| <td colspan="2" align="center"> |
| <input type="submit" value="<?= $id == null ? 'Add' : 'Update' ?>"/> <input type="reset" value="Reset"/> |
| </td> |
| <tr> |
| </table> |
| </form> |
| </div> |
| |
| <?php |
| |
| if ($id != null) { |
| ?> |
| <div class="section"> |
| <h3>Add to Categories</h3> |
| <form method="post" action="edit_resource.php"> |
| <input type="hidden" name="action" value="add_categories"/> |
| <input type="hidden" name="id" value="<?= $id ?>"/> |
| <table><tbody><tr> |
| <?php |
| $result = mysql_query("select id, name from category order by name"); |
| if ($error = mysql_error()) { |
| echo "Error querying categories: $error<br/>"; |
| exit; |
| } |
| $index = 0; |
| while ($row = mysql_fetch_array($result)) { |
| $category_id = $row[0]; |
| $category_name = $row[1]; |
| |
| if ($index % 5 == 0) echo "</tr><tr>"; |
| |
| $index++; |
| ?> |
| <td><input type="checkbox" name="category[<?= $index ?>]" value="<?= $category_id ?>"><?= $category_name ?></input></td> |
| <?php |
| } |
| ?> |
| </tr></tbody></table> |
| <p style="align:center"><input type="submit" value="Add Categories"/> <input type="reset" value="Reset"/></p> |
| </form> |
| </div> |
| <?php |
| $type_suggestions = $broker->get_type_suggestions_string(); |
| $language_suggestions = $broker->get_language_suggestions_string(); |
| |
| $result = mysql_query("select id, type, title, language, path, create_date from link where resource_id=$id"); |
| if ($error = mysql_error()) { |
| echo "Error querying authors: $error<br/>"; |
| exit; |
| } |
| $index = 0; |
| while ($row = mysql_fetch_array($result)) { |
| $link_id = $row[0]; |
| $type = $row[1]; |
| $title = $row[2]; |
| $language = $row[3]; |
| $path = $row[4]; |
| $date = $row[5]; |
| $link_authors = $broker->get_link_authors_string($link_id); |
| $index++; |
| ?> |
| <div class="section"> |
| <h3>Link #<?= $index ?></h3> |
| <form method="post" action="edit_resource.php"> |
| <input type="hidden" name="action" value="delete_link"/> |
| <input type="hidden" name="id" value="<?= $id ?>"/> |
| <input type="hidden" name="link_id" value="<?= $link_id ?>"/> |
| <p><input type="submit" value="Delete"/></p> |
| </form> |
| <form method="post" action="edit_resource.php"> |
| <input type="hidden" name="action" value="update_link"/> |
| <input type="hidden" name="id" value="<?= $id ?>"/> |
| <input type="hidden" name="link_id" value="<?= $link_id ?>"/> |
| <table> |
| <tr><td>Link Path: *</td><td><input type="text" style="width: 500px;" name="link_path" value="<?= $path ?>"/></td></tr> |
| <tr><td>Link Title:</td><td><input type="text" style="width: 500px;" name="link_title" value="<?= $title ?>"/></td></tr> |
| <tr><td>Link Date: *</td><td><input type="text" style="width: 500px;" name="link_date" value="<?= $date ?>"/></td></tr> |
| <tr> |
| <td>Link Language: *</td> |
| <td> |
| <input type="text" size="2" name="link_language" value="<?= $language ?>"/> |
| Suggested values: <?= $language_suggestions ?>. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| Link Type: *</td><td><input type="text" size="2" name="link_type" value="<?= $type ?>"/> |
| Suggested values: <?= $type_suggestions ?>. |
| </td> |
| </tr> |
| <tr> |
| <td valign="top">Link Authors:</td> |
| <td width="550"> |
| <input type="text" style="width: 500px;" name="link_authors" value="<?= $link_authors ?>"/><br/> |
| Enter author names here (separated by commas). If authors with these names already exist in the |
| database, those existing authors will be used. New authors will be created as necessary. |
| </td> |
| </tr> |
| <tr> |
| <td align="center" colspan="2"> |
| <input type="submit" value="Update"/> <input type="reset" value="Reset"/> |
| </td> |
| </tr> |
| </table> |
| </form> |
| </div> |
| |
| <?php |
| } |
| } |
| |
| if ($id != null) { |
| ?> |
| <div class="section"> |
| <h3>New Link</h3> |
| <form method="post" action="edit_resource.php"> |
| <input type="hidden" name="action" value="create_link"/> |
| <input type="hidden" name="id" value="<?= $id ?>"/> |
| <table> |
| <tr><td>Link Path: *</td><td><input type="text" style="width: 500px;" name="link_path"/></td></tr> |
| <tr><td>Link Title:</td><td><input type="text" style="width: 500px;" name="link_title"/></td></tr> |
| <tr><td>Link Date: *</td><td><input type="text" style="width: 500px;" name="link_date"/></td></tr> |
| <tr> |
| <td>Link Language: *</td> |
| <td> |
| <input type="text" size="2" name="link_language" value="en"/> |
| Suggested values: <?= $language_suggestions ?>. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| Link Type: * |
| </td> |
| <td> |
| <input type="text" size="2" name="link_type" value="html"/> |
| Suggested values: <?= $type_suggestions ?>. |
| </td> |
| </tr> |
| <tr> |
| <td valign="top">Link Authors:</td> |
| <td width="550"> |
| <input type="text" style="width: 500px;" name="link_authors"/><br/> |
| Enter author names here (separated by commas). If authors with these names already exist in the |
| database, those existing authors will be used. New authors will be created as necessary. |
| </td> |
| </tr> |
| <tr> |
| <td align="center" colspan="2"> |
| <input type="submit" value="Add"/> |
| </td> |
| </tr> |
| </table> |
| |
| </form> |
| </div> |
| <?php |
| } |
| include("scripts/footer.php"); |
| ?> |