function mylinkorder_set_plugin_meta($links, $file) { $plugin = plugin_basename(__FILE__); // create link if ($file == $plugin) { return array_merge($links, array('<a href="' . mylinkorder_getTarget() . '">' . __('Order Links') . '</a>', '<a href="http://wordpress.org/tags/my-link-order?forum_id=10#postform">' . __('Support Forum') . '</a>', '<a href="http://geekyweekly.com/gifts-and-donations">' . __('Donate') . '</a>')); } return $links; }
function mylinkorder() { global $wpdb; $success = ""; $catID = 0; if (isset($_POST['btnCats'])) { $catID = $_POST['cats']; } elseif (isset($_POST['hdnCatID'])) { $catID = $_POST['hdnCatID']; } if (isset($_POST['btnReturnParent'])) { $catID = 0; } if (isset($_GET['hideNote'])) { update_option('mylinkorder_hideNote', '1'); } $wpdb->show_errors(); $query1 = $wpdb->query("SHOW COLUMNS FROM {$wpdb->terms} LIKE 'term_order'"); if ($query1 == 0) { $wpdb->query("ALTER TABLE {$wpdb->terms} ADD `term_order` INT( 4 ) NULL DEFAULT '0'"); } $query2 = $wpdb->query("SHOW COLUMNS FROM {$wpdb->links} LIKE 'link_order'"); if ($query2 == 0) { $wpdb->query("ALTER TABLE {$wpdb->links} ADD `link_order` INT( 4 ) NULL DEFAULT '0'"); } if (isset($_POST['btnOrderCats'])) { $idString = $_POST['hdnMyLinkOrder']; $catIDs = explode(",", $idString); $result = count($catIDs); for ($i = 0; $i <= $result; $i++) { $str = str_replace("id_", "", $catIDs[$i]); $wpdb->query("UPDATE {$wpdb->terms} SET term_order = '{$i}' WHERE term_id ='{$str}'"); } $success = '<div id="message" class="updated fade"><p>' . __('Link Categories updated successfully.', 'mylinkorder') . '</p></div>'; } if (isset($_POST['btnOrderLinks'])) { $idString = $_POST['hdnMyLinkOrder']; $linkIDs = explode(",", $idString); $result = count($linkIDs); for ($i = 0; $i <= $result; $i++) { $str = str_replace("id_", "", $linkIDs[$i]); $wpdb->query("UPDATE {$wpdb->links} SET link_order = '{$i}' WHERE link_id ='{$str}'"); } $success = '<div id="message" class="updated fade"><p>' . __('Links updated successfully.', 'mylinkorder') . '</p></div>'; } ?> <div class='wrap'> <form name="frmMyLinkOrder" method="post" action=""> <h2><?php _e('My Link Order', 'mylinkorder'); ?> </h2> <?php echo $success; if (get_option("mylinkorder_hideNote") != "1") { ?> <div class="updated"> <strong><p><?php _e('If you like my plugin please consider donating. Every little bit helps me provide support and continue development.', 'mylinkorder'); ?> <a href="http://geekyweekly.com/gifts-and-donations"><?php _e('Donate', 'mylinkorder'); ?> </a> <small><a href="<?php echo mylinkorder_getTarget(); ?> &hideNote=true"><?php _e('No thanks, hide this', 'mylinkorder'); ?> </a></small></p></strong> </div> <?php } if ($catID != 0) { $results = $wpdb->get_results("SELECT * FROM {$wpdb->links} l inner join {$wpdb->term_relationships} tr on l.link_id = tr.object_id inner join {$wpdb->term_taxonomy} tt on tt.term_taxonomy_id = tr.term_taxonomy_id inner join {$wpdb->terms} t on t.term_id = tt.term_id WHERE t.term_id = {$catID} ORDER BY link_order ASC"); $cat_name = $wpdb->get_var("SELECT name FROM {$wpdb->terms} WHERE term_id={$catID}"); ?> <h3><?php _e('Order Links for', 'mylinkorder'); ?> <?php _e($cat_name); ?> </h3> <p><?php _e('Order the links by dragging and dropping them into the desired order.', 'mylinkorder'); ?> </p> <ul id="myLinkOrderList"><?php foreach ($results as $row) { echo "<li id='id_{$row->link_id}' class='lineitem'>" . __($row->link_name) . "</li>"; } ?> </ul> <input type="submit" id="btnOrderLinks" name="btnOrderLinks" class="button-primary" value="<?php _e('Click to Order Links', 'mylinkorder'); ?> " onclick="javascript:orderLinks(); return true;" /> <input type="submit" class="button" id="btnReturnParent" name="btnReturnParent" value="<?php _e('Go Back', 'mylinkorder'); ?> " /> <?php } else { $results = $wpdb->get_results("SELECT DISTINCT t.term_id, name FROM {$wpdb->term_taxonomy} tt inner join {$wpdb->term_relationships} tr on tt.term_taxonomy_id = tr.term_taxonomy_id inner join {$wpdb->terms} t on t.term_id = tt.term_id where taxonomy = 'link_category' ORDER BY t.term_order ASC"); ?> <p><?php _e('Choose a category from the drop down to order the links in that category or order the categories by dragging and dropping them.', 'mylinkorder'); ?> </p> <h3><?php _e('Order Links', 'mylinkorder'); ?> </h3> <select id="cats" name="cats"><?php foreach ($results as $row) { echo "<option value='{$row->term_id}'>" . __($row->name) . "</option>"; } ?> </select> <input type="submit" name="btnCats" id="btnCats" class="button" value="<?php _e('Order Links in this Category', 'mylinkorder'); ?> " /> <h3><?php _e('Order Link Categories', 'mylinkorder'); ?> </h3> <ul id="myLinkOrderList"><?php foreach ($results as $row) { echo "<li id='id_{$row->term_id}' class='lineitem'>" . __($row->name) . "</li>"; } ?> </ul> <input type="submit" name="btnOrderCats" id="btnOrderCats" class="button-primary" value="<?php _e('Click to Order Categories', 'mylinkorder'); ?> " onclick="javascript:orderLinkCats(); return true;" /> <?php } ?> <strong id="updateText"></strong> <br /><br /> <p> <a href="http://geekyweekly.com/mylinkorder"><?php _e('Plugin Homepage', 'mylinkorder'); ?> </a> | <a href="http://geekyweekly.com/gifts-and-donations"><?php _e('Donate', 'mylinkorder'); ?> </a> | <a href="http://wordpress.org/tags/my-link-order?forum_id=10"><?php _e('Support Forum', 'mylinkorder'); ?> </a> </p> <input type="hidden" id="hdnMyLinkOrder" name="hdnMyLinkOrder" /> <input type="hidden" id="hdnCatID" name="hdnCatID" value="<?php echo $catID; ?> " /> </form> </div> <style type="text/css"> #myLinkOrderList { width: 90%; border:1px solid #B2B2B2; margin:10px 10px 10px 0px; padding:5px 10px 5px 10px; list-style:none; background-color:#fff; -moz-border-radius:3px; -webkit-border-radius:3px; } li.lineitem { border:1px solid #B2B2B2; -moz-border-radius:3px; -webkit-border-radius:3px; background-color:#F1F1F1; color:#000; cursor:move; font-size:13px; margin-top:5px; margin-bottom:5px; padding: 2px 5px 2px 5px; height:1.5em; line-height:1.5em; } .sortable-placeholder{ border:1px dashed #B2B2B2; margin-top:5px; margin-bottom:5px; padding: 2px 5px 2px 5px; height:1.5em; line-height:1.5em; } </style> <script language="JavaScript" type="text/javascript"> function mylinkorderaddloadevent(){ jQuery("#myLinkOrderList").sortable({ placeholder: "sortable-placeholder", revert: false, tolerance: "pointer" }); }; addLoadEvent(mylinkorderaddloadevent); function orderLinkCats() { jQuery("#updateText").html("<?php _e('Updating Link Category Order...', 'mylinkorder'); ?> "); jQuery("#hdnMyLinkOrder").val(jQuery("#myLinkOrderList").sortable("toArray")); } function orderLinks() { jQuery("#updateText").html("<?php _e('Updating Link Order...', 'mylinkorder'); ?> "); jQuery("#hdnMyLinkOrder").val(jQuery("#myLinkOrderList").sortable("toArray")); } </script> <?php }
function mylinkorder() { global $wpdb; $mode = ""; $mode = $_GET['mode']; $success = ""; $catID = ""; if (isset($_GET['hideNote'])) { update_option('mylinkorder_hideNote', '1'); } $wpdb->show_errors(); $query1 = $wpdb->query("SHOW COLUMNS FROM {$wpdb->terms} LIKE 'term_order'"); if ($query1 == 0) { $wpdb->query("ALTER TABLE {$wpdb->terms} ADD `term_order` INT( 4 ) NULL DEFAULT '0'"); } $query2 = $wpdb->query("SHOW COLUMNS FROM {$wpdb->links} LIKE 'link_order'"); if ($query2 == 0) { $wpdb->query("ALTER TABLE {$wpdb->links} ADD `link_order` INT( 4 ) NULL DEFAULT '0'"); } if ($mode == "act_OrderCategories") { $idString = $_GET['idString']; $catIDs = explode(",", $idString); $result = count($catIDs); for ($i = 0; $i <= $result; $i++) { $wpdb->query("UPDATE {$wpdb->terms} SET term_order = '{$i}' WHERE term_id ='{$catIDs[$i]}'"); } $success = '<div id="message" class="updated fade"><p>' . __('Link Categories updated successfully.', 'mylinkorder') . '</p></div>'; } if ($mode == "act_OrderLinks") { $idString = $_GET['idString']; $linkIDs = explode(",", $idString); $result = count($linkIDs); for ($i = 0; $i <= $result; $i++) { $wpdb->query("UPDATE {$wpdb->links} SET link_order = '{$i}' WHERE link_id ='{$linkIDs[$i]}'"); } $success = '<div id="message" class="updated fade"><p>' . __('Links updated successfully.', 'mylinkorder') . '</p></div>'; $mode = "dsp_OrderLinks"; } if ($mode == "dsp_OrderLinks") { $catID = $_GET['catID']; $results = $wpdb->get_results("SELECT * FROM {$wpdb->links} l inner join {$wpdb->term_relationships} tr on l.link_id = tr.object_id inner join {$wpdb->term_taxonomy} tt on tt.term_taxonomy_id = tr.term_taxonomy_id inner join {$wpdb->terms} t on t.term_id = tt.term_id WHERE t.term_id = {$catID} ORDER BY link_order ASC"); $cat_name = $wpdb->get_var("SELECT name FROM {$wpdb->terms} WHERE term_id={$catID}"); ?> <div class='wrap'> <h2><?php _e('Order Links for', 'mylinkorder'); ?> <?php echo $cat_name; ?> </h2> <?php echo $success; if (get_option("mylinkorder_hideNote") != "1") { ?> <div class="updated"> <strong><p><?php _e('If you like my plugin please consider donating. Every little bit helps me provide support and continue development.', 'mylinkorder'); ?> <a href="http://geekyweekly.com/gifts-and-donations"><?php _e('Donate', 'mylinkorder'); ?> </a> <small><a href="link-manager.php?page=mylinkorder&hideNote=true"><?php _e('No thanks, hide this', 'mylinkorder'); ?> </a></small></p></strong> </div> <?php } ?> <p><?php _e('Order the links by dragging and dropping them into the desired order.', 'mylinkorder'); ?> </p> <ul id="order" style="width: 90%; margin:10px 10px 10px 0px; padding:10px; border:1px solid #B2B2B2; list-style:none;"><?php foreach ($results as $row) { echo "<li id='{$row->link_id}' class='lineitem'>{$row->link_name}</li>"; } ?> </ul> <input type="button" id="orderButton" Value="<?php _e('Click to Order Links', 'mylinkorder'); ?> " onclick="javascript:orderLinks();"> <strong id="updateText"></strong> <br /><br /> <a href='<?php echo mylinkorder_getTarget(); ?> ?page=mylinkorder'><?php _e('Go Back', 'mylinkorder'); ?> </a> </div> <?php } else { $results = $wpdb->get_results("SELECT DISTINCT t.term_id, name FROM {$wpdb->term_taxonomy} tt inner join {$wpdb->term_relationships} tr on tt.term_taxonomy_id = tr.term_taxonomy_id inner join {$wpdb->terms} t on t.term_id = tt.term_id where taxonomy = 'link_category' ORDER BY t.term_order ASC"); ?> <div class='wrap'> <h2><?php _e('My Link Order', 'mylinkorder'); ?> </h2> <?php echo $success; if (get_option("mylinkorder_hideNote") != "1") { ?> <div class="updated"> <strong><p><?php _e('If you like my plugin please consider donating. Every little bit helps me provide support and continue development.', 'mylinkorder'); ?> <a href="http://geekyweekly.com/gifts-and-donations"><?php _e('Donate', 'mylinkorder'); ?> </a> <small><a href="link-manager.php?page=mylinkorder&hideNote=true"><?php _e('No thanks, hide this', 'mylinkorder'); ?> </a></small></p></strong> </div> <?php } ?> <p><?php _e('Choose a category from the drop down to order the links in that category or order the categories by dragging and dropping them.', 'mylinkorder'); ?> </p> <h3><?php _e('Order Links', 'mylinkorder'); ?> </h3> <select id="cats" name='cats'><?php foreach ($results as $row) { echo "<option value='{$row->term_id}'>{$row->name}</option>"; } ?> </select> <input type="button" name="edit" Value="<?php _e('Order Links in this Category', 'mylinkorder'); ?> " onClick="javascript:goEdit();"> <h3><?php _e('Order Link Categories', 'mylinkorder'); ?> </h3> <ul id="order" style="width: 90%; margin:10px 10px 10px 0px; padding:10px; border:1px solid #B2B2B2; list-style:none;"><?php foreach ($results as $row) { echo "<li id='{$row->term_id}' class='lineitem'>{$row->name}</li>"; } ?> </ul> <input type="button" id="orderButton" Value="<?php _e('Click to Order Categories', 'mylinkorder'); ?> " onclick="javascript:orderLinkCats();"> <strong id="updateText"></strong> <p> <a href="http://geekyweekly.com/mylinkorder"><?php _e('Plugin Homepage', 'mylinkorder'); ?> </a> | <a href="http://geekyweekly.com/gifts-and-donations"><?php _e('Donate', 'mylinkorder'); ?> </a> | <a href="http://wordpress.org/tags/my-link-order?forum_id=10"><?php _e('Support Forum', 'mylinkorder'); ?> </a> </p> </div> <?php } ?> <style> li.lineitem { margin: 3px 0px; padding: 2px 5px 2px 5px; background-color: #F1F1F1; border:1px solid #B2B2B2; cursor: move; } </style> <script language="JavaScript" type="text/javascript"> function mylinkorderaddloadevent(){ jQuery("#order").sortable({ placeholder: "ui-selected", revert: false, tolerance: "pointer" }); }; addLoadEvent(mylinkorderaddloadevent); function orderLinkCats() { jQuery("#orderButton").css("display", "none"); jQuery("#updateText").html("<?php _e('Updating Link Category Order...', 'mylinkorder'); ?> "); idList = jQuery("#order").sortable("toArray"); location.href = '<?php echo mylinkorder_getTarget(); ?> ?page=mylinkorder&mode=act_OrderCategories&idString='+idList; } function orderLinks() { jQuery("#orderButton").css("display", "none"); jQuery("#updateText").html("<?php _e('Updating Link Order...', 'mylinkorder'); ?> "); idList = jQuery("#order").sortable("toArray"); location.href = '<?php echo mylinkorder_getTarget(); ?> ?page=mylinkorder&mode=act_OrderLinks&catID=<?php echo $catID; ?> &idString='+idList; } function goEdit () { if(jQuery("#cats").val() != "") location.href="<?php echo mylinkorder_getTarget(); ?> ?page=mylinkorder&mode=dsp_OrderLinks&catID="+jQuery("#cats").val(); } </script> <?php }