/** * Output RSS 2 version of a specified menu. */ function wpermm_rss2($menu_id) { $menu = WPRMM_Menu::get_by_id($menu_id); if ($menu['rss2']) { $categories = WPRMM_Category::get_all((int) $menu['id']); $items = WPRMM_Item::get_all((int) $menu['id']); header('Content-Type: text/xml'); $s = '<?xml version="1.0" encoding="UTF-8" ?>' . "\n"; $s .= '<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">' . "\n"; $s .= '<channel>' . "\n"; $s .= '<title>' . ermm_xmlen($menu['name']) . '</title>' . "\n"; $s .= '<description>' . ermm_xmlen($menu['description']) . '</description>' . "\n"; $s .= '<link>' . ermm_xmlen($menu['print_url']) . '</link>' . "\n"; foreach ($categories as $category) { if ($category->active) { foreach ($items as $i) { if ($i->category_id == $category->id && $i->active) { $s .= '<item>' . "\n"; $s .= '<title>' . ermm_xmlen($i->name) . '</title>' . "\n"; $s .= '<category>' . ermm_xmlen($category->name) . '</category>' . "\n"; $s .= '<description><![CDATA[' . "\n"; if (!empty($i->image)) { $s .= '<img src="' . $i->image . '" alt="' . ermm_xmlen($i->name) . '" class="center" />' . "\n"; } if ($i->show_price) { $s .= '<p>Price: ' . $i->price . '</p>' . "\n"; if (!empty($i->second_price)) { $s .= '<p>Alternate Price: ' . $i->second_price . '</p>' . "\n"; } } if (!empty($i->icon_image)) { $s .= '<p>' . "\n"; $s .= '<img alt="' . $i->icon_description . '" src="' . $i->icon_image . '" /> '; $s .= '<span>' . $i->icon_description . '</span>' . "\n"; $s .= '</p>' . "\n"; } $s .= '<p>' . nl2br($i->description) . '</p>' . "\n"; $s .= ']]></description>' . "\n"; $s .= '<guid isPermaLink="false">item_' . $i->id . '</guid>' . "\n"; $s .= '</item>' . "\n"; } } } } $s .= '</channel>' . "\n"; $s .= '</rss>' . "\n"; return $s; } else { return "RSS2 Feed not turned on for this menu."; } }
/** * Displays HTML Menu on frontend. * * @param int $atts['id'] is the menu id * @param $categories array of category ids to pull else pull all from menu. */ function wprmm_get_menu($atts, $category_ids = 'all') { global $wpdb; $menu_id = $atts['id']; if (empty($atts['id']) || !is_numeric($atts['id'])) { return ''; } /* Get Menu, Categories, and Items */ $menu = WPRMM_Menu::get_by_id($menu_id); if (empty($menu['id'])) { return "Menu not found."; } $categories = WPRMM_Category::get_all((int) $menu['id'], $category_ids); $items = WPRMM_Item::get_all((int) $menu['id']); /* Build HTML Output for menu */ $m = '<!-- SAI Digital Restaurant Menu Manager -->' . "\r\n"; $m .= '<div id="wprmm_menu_' . $menu['id'] . '" class="wprmm_menu">' . "\r\n"; $m .= '<div class="menu_manager">' . "\r\n"; if ($menu['show_title']) { $m .= '<h1>' . $menu['name'] . '</h1>' . "\r\n"; } $m .= '<p class="menu_desc">' . nl2br($menu['description']) . '</p>' . "\r\n"; $m .= '<div class="menu_manager">' . "\r\n"; foreach ($categories as $cat) { if ($cat->active) { $m .= '<div id="' . wprmm_css_name($cat->name) . '" class="menu_category">' . "\r\n"; if ($cat->show_title) { $m .= '<h2>' . $cat->name . '</h2>' . "\r\n"; } if ($cat->show_description) { $m .= '<p class="menu_category_desc">' . nl2br($cat->description) . '</p>' . "\r\n"; } $m .= wprmm_view_items($cat, $items); $m .= '</div>' . "\r\n"; } } if ($menu['show_link']) { $m .= '<p class="wprmm_print"><a href="' . $menu['print_url'] . '" target="_blank">Print</a></p>'; } $m .= '</div>'; $m .= '</div>'; $m .= '</div>'; return $m; }
function wprmm_get_printer_friendly_menu($id) { global $wpdb; if (empty($id) || !is_numeric($id)) { return ''; } /* Get Menu, Categories, and Items */ $menu = WPRMM_Menu::get_by_id($id); if (empty($menu['id'])) { return "Menu not found."; } $s = '<html> <head> <meta charset="UTF-8" /> <title>' . $menu['name'] . '</title> <link rel="stylesheet" href="' . WPRMM_URL . 'css/style.css" type="text/css" media="all" /> <link rel="stylesheet" href="' . site_url() . '/?wprmm-routing=custom-print-css" type="text/css" media="all" /> </head> <body>' . wprmm_get_menu($menu) . '</body> </html>'; return $s; }
if (!wprmm_editor_or_admin() || empty($_POST['wprmm_crud'])) { wp_die('You do not have permission to modify this object.'); } // Saves and Deletes menus, categories, and items, icons and routes to edit if (!empty($_POST) && !empty($_POST['wprmm_crud'])) { /* Save New Menu */ if (!empty($_POST['wprmm_crud']['menu'])) { if ($_POST['wprmm_crud']['menu'] == 'new') { $menu_id = WPRMM_Menu::create($_POST['wprmm']); wp_redirect(wprmm_admin_url('menu', 'edit-menu', $menu_id)); exit; } /* Delete Menu */ if ($_POST['wprmm_crud']['menu'] == 'Delete') { $menu_id = (int) $_POST['wprmm_crud']['menu_id']; WPRMM_Menu::destroy($menu_id); wp_redirect(admin_url('admin.php?page=' . WPRMM_ADMIN_URL)); exit; } } /* Save New Category */ if (!empty($_POST['wprmm_crud']['category'])) { if ($_POST['wprmm_crud']['category'] == 'new') { $category_id = WPRMM_Category::create($_POST['wprmm']); wp_redirect(wprmm_admin_url('category', 'edit-category', $category_id)); exit; } /* Delete Category */ if ($_POST['wprmm_crud']['category'] == 'Delete') { $category_id = (int) $_POST['wprmm_crud']['category_id']; $menu_id = (int) $_POST['wprmm_crud']['menu_id'];
<?php defined('WPRMM_PATH') or die; wprmm_save_menu(); $menu = new WPRMM_Menu(); $menus = $menu->get_all(); ?> <div class="wrap wprmm"> <img class="left" style="margin:0 15px 0 0" src="<?php echo WPRMM_URL . 'images/menumanagericon_50x50.jpg'; ?> " /> <h2 class="left">Restaurant Menu Manager - Setup Menus</h2> <div class="clear"></div> <hr /> <?php wprmm_get_help(array('main' => true)); ?> <table class="widefat"> <thead> <tr> <th>Name</th> <th>Edit Menu</th> <th>Shortcode</th> <th>Edit Menu Category Set</th> <th>Edit Menu Items</th> <th>Print Friendly</th> <th>Delete</th> </tr>