function yourls_api_output($mode, $return) { if (isset($return['simple'])) { $simple = $return['simple']; unset($return['simple']); } switch ($mode) { case 'json': header('Content-type: application/json'); echo yourls_json_encode($return); break; case 'xml': header('Content-type: application/xml'); echo yourls_xml_encode($return); break; case 'simple': default: if (isset($simple)) { echo $simple; } break; } die; }
// Require Files require_once dirname(dirname(__FILE__)) . '/includes/load-yourls.php'; yourls_maybe_require_auth(); // This file will output a JSON string header('Content-type: application/json'); // Pick action switch (stripslashes($_REQUEST['mode'])) { case 'add': $return = yourls_add_new_link($_REQUEST['url'], $_REQUEST['keyword']); echo yourls_json_encode($return); break; case 'edit_display': $row = yourls_table_edit_row($_REQUEST['keyword']); echo yourls_json_encode(array('html' => $row)); break; case 'edit_save': $return = yourls_edit_link($_REQUEST['url'], $_REQUEST['keyword'], $_REQUEST['newkeyword']); echo yourls_json_encode($return); break; case 'delete': $query = yourls_delete_link_by_keyword($_REQUEST['keyword']); echo yourls_json_encode(array('success' => $query)); break; case 'logout': // unused for the moment yourls_logout(); break; default: die('Not implemented'); }