";s:3:"end";s:10:"";}}}'; $autoload = 'yes'; $wpdb->query("INSERT INTO $wpdb->options (option_name, option_value, autoload) VALUES ('$name', '$value', '$autoload')"); } } // unsinstall options in table options function wpaq_uninstall() { delete_option('rmnlQuicktagSettings'); } // options-page in wp-backend function wpaq_options_page() { global $wpdb, $wp_version; $wpaq_document_root = $_SERVER['DOCUMENT_ROOT'] . $_SERVER['REQUEST_URI']; $wpaq_document_root = str_replace("/wp-admin/options-general.php?page=addquicktag.php", WP_CONTENT_FOLDER, $wpaq_document_root); $wpaq_link = $_SERVER['REQUEST_URI']; $wpaq_link = str_replace("\\", "/", $wpaq_link); if ($_POST['wpaq']) { if ( function_exists('current_user_can') && current_user_can('edit_plugins') ) { check_admin_referer('rmnl_nonce'); $buttons = array(); for ($i = 0; $i < count($_POST['wpaq']['buttons']); $i++){ $b = $_POST['wpaq']['buttons'][$i]; if ($b['text'] != '' && $b['start'] != '') { $b['text'] = ($b['text']); $b['start'] = stripslashes($b['start']); $b['end'] = stripslashes($b['end']); $buttons[] = $b; } } $_POST['wpaq']['buttons'] = $buttons; update_option('rmnlQuicktagSettings', $_POST['wpaq']); $message = '

' . __('Options saved.', 'addquicktag') . '

'; } else { wp_die('

'.__('You do not have sufficient permissions to edit plugins for this blog.').'

'); } } // Export sql-option if (($_POST['action'] == 'export')) { if ( function_exists('current_user_can') && current_user_can('edit_plugins') ) { check_admin_referer('rmnl_nonce'); $wpaq_data = mysql_query("SELECT option_value FROM $wpdb->options WHERE option_name = 'rmnlQuicktagSettings'"); $wpaq_data = mysql_result($wpaq_data, 0); $file_name = $wpaq_document_root . '/wpaq_export-' . date('Y-m-d_G-i-s') . '.wpaq'; $file_name = str_replace("//", "/", $file_name); $fh = @ fopen($file_name, 'w'); if ($fh == false) { $message_export = '

' . __('Can not open for write!', 'addquicktag') . ' - ' . get_bloginfo('url') . WP_CONTENT_FOLDER . '

'; } else { @flock($fh, LOCK_EXCLUSIVE); $err = @fputs($fh, $wpaq_data); @fclose($fh); if ($err === false) { $message_export = '

' . __('Can not write!', 'addquicktag') . '

'; } $message_export = '

' . __('AddQuicktag options saved!', 'addquicktag') . '
'; $message_export.= __('Saved in: ', 'addquicktag') . $file_name; $message_export.= '

'; } } else { wp_die('

'.__('You do not have sufficient permissions to edit plugins for this blog.').'

'); } } // Import the sql-file if (($_POST['action'] == 'import')) { if ( function_exists('current_user_can') && current_user_can('edit_plugins') ) { check_admin_referer('rmnl_nonce'); $message_export = '

'; // check file extension sql $str_file_name = $_FILES['datei']['name']; $str_file_ext = explode(".", $str_file_name); if ($str_file_ext[1] != 'wpaq') { $message_export.= __('Invalid file extension!', 'addquicktag'); } elseif (file_exists($_FILES['datei']['name'])) { $message_export.= __('File is exist!', 'addquicktag'); } else { // path for file $wpaq_document_root = str_replace("/wp-admin/options-general.php?page=addquicktag.php", WP_CONTENT_FOLDER, $wpaq_document_root); $str_ziel = $wpaq_document_root . '/' . $_FILES['datei']['name']; $str_ziel = str_replace("//", "/", $str_ziel); // transfer move_uploaded_file($_FILES['datei']['tmp_name'], $str_ziel); // access authorisation chmod($str_ziel, 0644); // SQL import ini_set('default_socket_timeout', 120); $import_file = file_get_contents($str_ziel); $wpdb->query("UPDATE $wpdb->options SET `option_value` = '$import_file' WHERE `option_name` = 'rmnlQuicktagSettings'"); unlink($str_ziel); $message_export.= __('AddQuicktag options imported!', 'addquicktag'); } $message_export.= '

'; } else { wp_die('

'.__('You do not have sufficient permissions to edit plugins for this blog.').'

'); } } // Uninstall options if (($_POST['action'] == 'uninstall')) { if ( function_exists('current_user_can') && current_user_can('edit_plugins') ) { check_admin_referer('rmnl_nonce'); wpaq_uninstall(); $message_export = '

'; $message_export.= __('AddQuicktag options have been deleted!', 'addquicktag'); $message_export.= '

'; } else { wp_die('

'.__('You do not have sufficient permissions to edit plugins for this blog.').'

'); } } $string1 = __('Add or delete Quicktag buttons', 'addquicktag'); $string2 = __('Fill in the fields below to add or edit the quicktags. Fields with * are required. To delete a tag simply empty all fields.', 'addquicktag'); $field1 = __('Button Label*', 'addquicktag'); $field2 = __('Start Tag(s)*', 'addquicktag'); $field3 = __('End Tag(s)', 'addquicktag'); $button1 = __('Update Options »', 'addquicktag'); // Export strings $button2 = __('Export »', 'addquicktag'); $export1 = __('Export Quicktag buttons options', 'addquicktag'); $export2 = __('You can save a .wpaq file with your options in ', 'addquicktag') . WP_CONTENT_FOLDER . __('/wpaq_export.wpaq', 'addquicktag'); // Import strings $button3 = __('Upload file and import »', 'addquicktag'); $import1 = __('Import Quicktag buttons options', 'addquicktag'); $import2 = __('Choose a Quicktag (.wpaq) file to upload, then click Upload file and import.', 'addquicktag'); $import3 = __('Choose a file from your computer: ', 'addquicktag'); // Uninstall strings $button4 = __('Uninstall Options »', 'addquicktag'); $uninstall1 = __('Uninstall options', 'addquicktag'); $uninstall2 = __('This button deletes all options of the WP-AddQuicktag plugin. Attention: You cannot undo this!', 'addquicktag'); // Info $info0 = __('About the plugin', 'addquicktag'); $info1 = __('Further information: Visit the plugin homepage for further information or to grab the latest version of this plugin.', 'addquicktag'); $info2 = __('You want to thank me? Visit my wishlist.', 'addquicktag'); $o = get_option('rmnlQuicktagSettings'); ?>



'; } ?>


© Copyright 2007 - Frank Bültge |

0) { echo ' '; } } //End wpaq_addsome } // End if // add to wp if ( function_exists('register_activation_hook') ) register_activation_hook(__FILE__, 'wpaq_install'); if ( function_exists('register_uninstall_hook') ) register_uninstall_hook(__FILE__, 'wpaq_uninstall'); if ( is_admin() ) { add_action('init', 'wpaq_textdomain'); add_action('admin_menu', 'wpaq_add_settings_page'); add_action('in_admin_footer', 'wpaq_admin_footer'); } /** * Add action link(s) to plugins page * Thanks Dion Hulse -- http://dd32.id.au/wordpress-plugins/?configure-link */ function wpaq_filter_plugin_actions($links, $file){ static $this_plugin; if( ! $this_plugin ) $this_plugin = plugin_basename(__FILE__); if( $file == $this_plugin ){ $settings_link = '' . __('Settings') . ''; $links = array_merge( array($settings_link), $links); // before other links } return $links; } /** * @version WP 2.7 * Add action link(s) to plugins page */ function wpaq_filter_plugin_actions_new($links) { $settings_link = '' . __('Settings') . ''; array_unshift( $links, $settings_link ); return $links; } /** * Images/ Icons in base64-encoding * @use function wpag_get_resource_url() for display */ if( isset($_GET['resource']) && !empty($_GET['resource'])) { # base64 encoding performed by base64img.php from http://php.holtsmark.no $resources = array( 'addquicktag.gif' => 'R0lGODlhCwAJALMPAPL19Y2cnLzNzZempsXV1VpfX6WysrS/v5'. '+trXmDg9Xh4drr66W5uay6urnHx////yH5BAEAAA8ALAAAAAAL'. 'AAkAAARA8D0gmBMESMUIK0XAVNzQOE6QCIJhIMOANMRCHG+MuI'. '5yG4PAzjDyORqyxKwh8AlUAEUiQVswqBINIHEIHCSPCAA7'. ''); if(array_key_exists($_GET['resource'], $resources)) { $content = base64_decode($resources[ $_GET['resource'] ]); $lastMod = filemtime(__FILE__); $client = ( isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) ? $_SERVER['HTTP_IF_MODIFIED_SINCE'] : false ); // Checking if the client is validating his cache and if it is current. if (isset($client) && (strtotime($client) == $lastMod)) { // Client's cache IS current, so we just respond '304 Not Modified'. header('Last-Modified: '.gmdate('D, d M Y H:i:s', $lastMod).' GMT', true, 304); exit; } else { // Image not cached or cache outdated, we respond '200 OK' and output the image. header('Last-Modified: '.gmdate('D, d M Y H:i:s', $lastMod).' GMT', true, 200); header('Content-Length: '.strlen($content)); header('Content-Type: image/' . substr(strrchr($_GET['resource'], '.'), 1) ); echo $content; exit; } } } /** * Display Images/ Icons in base64-encoding * @return $resourceID */ function wpag_get_resource_url($resourceID) { return trailingslashit( get_bloginfo('url') ) . '?resource=' . $resourceID; } /** * settings in plugin-admin-page */ function wpaq_add_settings_page() { global $wp_version; if ( function_exists('add_options_page') && current_user_can('manage_options') ) { $plugin = plugin_basename(__FILE__); $menutitle = ''; if ( version_compare( $wp_version, '2.6.999', '>' ) ) { $menutitle = '' . ' '; } $menutitle .= __('Add Quicktag', 'addquicktag'); add_options_page( __('WP-Quicktag – Add Quicktag', 'addquicktag'), $menutitle, 9, $plugin, 'wpaq_options_page'); if ( version_compare( $wp_version, '2.6.999', '<' ) ) { add_filter('plugin_action_links', 'wpaq_filter_plugin_actions', 10, 2); } else { add_filter( 'plugin_action_links_' . $plugin, 'wpaq_filter_plugin_actions_new' ); } } } /** * credit in wp-footer */ function wpaq_admin_footer() { if( basename($_SERVER['REQUEST_URI']) == 'addquicktag.php') { $plugin_data = get_plugin_data( __FILE__ ); printf('%1$s plugin | ' . __('Version') . ' %2$s | ' . __('Author') . ' %3$s
', $plugin_data['Title'], $plugin_data['Version'], $plugin_data['Author']); } } ?>