dukator

About

Widget title: <input type="text" id="automaticbacklinks-title" name="automaticbacklinks-title" value="“ />
CSS id: <input type="text" id="automaticbacklinks-cssid" name="automaticbacklinks-cssid" value="“ />

‚Our Friends‘, ‚cssid‘ => “);
$options = (array) get_option(‚widget_automaticbacklinks‘);

foreach ( $defaults as $key => $value )
if ( !isset($options[$key]) )
$options[$key] = $defaults[$key];

?>
<li class="widget “ id=““>

<?php

//Settings
$abCacheFolderName = "automaticbacklinks_cache";
$abAccountCode = "c8357c2ee8ede3dfe452b5777ba586ba";
$abCacheHours = "24";

/**
* Do not change anything below
* Do not change anything below
* Do not change anything below
* Do not change anything below
* Do not change anything below
*/

$v = "2.21";
$s = "wp";
$abMsg = array();
if (trim($_GET['ab_debug']) == 'c8357c2ee8ede3dfe452b5777ba586ba') {
$debug = true;
echo "

  • Version: „.$v;
    echo „

  • System: „.$s;
    unset($_GET[‚ab_debug‘]);
    }

    //Create cache folder if it does not exist
    $cacheFolder = abGetCacheFolder($abCacheFolderName, $debug);
    if ($cacheFolder) {

    //Current URL
    $page = abGetPageUrl($debug);
    if (abIsValidUrl($page, $debug)) {

    $cacheFileName = $cacheFolder.“/“.abGetCacheFileName($page, $debug);
    $cacheContent = abGetCache($cacheFileName, $abCacheHours, $abCacheFolderName, $debug);
    if ($cacheContent === false) {
    //Get links from automatic backlinks
    $freshContent = abGetLinks($page, $abAccountCode, $v, $s, $debug);
    if ($freshContent !== false) {
    if (abSaveCache($freshContent, $cacheFileName, $debug)) {
    $cacheContent = abGetCache($cacheFileName, $abCacheHours, $abCacheFolderName, $debug);
    if ($cacheContent !== false) {
    echo $cacheContent;
    } else {
    $abMsg[] = ‚Error: unable to read from the cache‘;
    }
    } else {
    $abMsg[] = ‚Error: unable to save our links to cache. Please make sure that the folder ‚.$abCacheFolderName.‘ located in the folder ‚.$_SERVER[‚DOCUMENT_ROOT‘].‘ and has CHMOD 0777′;
    }
    } else {
    $abMsg[] = ‚Error: unable to get links from server. Please make sure that your site supports either file_get_contents() or the cURL library.‘;
    }
    } else {
    //Display the cached content
    echo $cacheContent;
    }

    } else {
    $abMsg[] = ‚Error: your site reports that it is located on the following URL: ‚.$page.‘ – This is not a valid URL and we can not display links on this page. This is probably due to an incorrect setting of the $_SERVER variable.‘;
    }

    } else {
    $abMsg[] = ‚Error: Unable to create or read from your link cache folder. Please try to create a folder by the name „‚.$abCacheFolderName.'“ directly in the root of your site and CHMOD the folder to 0777‘;
    }

    foreach ($abMsg as $error) {
    echo $error.“
    „;
    }

    ?>

  • <?php
    }

    register_sidebar_widget("AutomaticBacklinks", "widget_automaticbacklinks");
    register_widget_control('AutomaticBacklinks', 'widget_automaticbacklinks_control');

    }

    add_action('init', 'widget_automaticbacklinks_init');

    /**
    * Helper functions
    */

    function abSaveCache($content, $file, $debug=false) {

    //Prepend a timestamp to the content
    $content = time()."|".$content;

    echo ($debug) ? "

  • Saving Cache: „.$content : „“;

    $fh = fopen($file, ‚w‘);
    if ($fh !== false) {
    if (!fwrite($fh, $content)) {
    echo ($debug) ? „

  • Error Saving Cache!“ : „“;
    return false;
    }
    } else {
    echo ($debug) ? „

  • Error opening cache file for writing!“ : „“;
    return false;
    }
    if (!fclose($fh)) {
    echo ($debug) ? „

  • Error closing file handle!“ : „“;
    return false;
    }

    if (!file_exists($file)) {
    echo ($debug) ? „

  • Error could not create cache file!“ : „“;
    return false;
    } else {
    echo ($debug) ? „

  • Cache file created successfully“ : „“;
    return true;
    }

    }

    //Deletes any cache file that is older than 24 hours
    function abClearOldCache($cacheFolderName, $cacheHours, $debug=false) {

    $cacheFolder = abGetCacheFolder($cacheFolderName);

    if (is_dir($cacheFolder)) {
    if ($dh = opendir($cacheFolder)) {
    while (($file = readdir($dh)) !== false) {
    if (strpos($file, „.cache“)) {
    $modified = filemtime($cacheFolder.“/“.$file);
    $timeCutOff = time()-(60*60*$cacheHours);
    if ($modified < $timeCutOff) {
    @unlink($cacheFolder."/".$file);
    }
    }
    }
    closedir($dh);
    }
    }

    }

    //Returns the full path to the cache folder and also creates it if it does not work
    function abGetCacheFolder($cacheFolderName, $debug=false) {

    $docRoot = rtrim($_SERVER['DOCUMENT_ROOT'],"/"); //Remove any trailing slashes
    $cacheFolder = $docRoot."/".$cacheFolderName;

    echo ($debug) ? "

  • Cache folder is: „.$cacheFolder : „“;

    if (!file_exists($cacheFolder)) {
    echo ($debug) ? „

  • Cache folder does not exist: „.$cacheFolder : „“;
    if (!@mkdir($cacheFolder,0777)) {
    echo ($debug) ? „

  • Error – could not create cache folder: „.$cacheFolder : „“;
    return false;
    } else {
    echo ($debug) ? „

  • Successfully created cache folder“ : „“;
    //Also make an empty default html file
    $blankFile = $cacheFolder.“/index.html“;
    if (!file_exists($blankFile)) {
    $newFile = @fopen($blankFile,“w“);
    @fclose($newFile);
    }
    }
    }

    return $cacheFolder;

    }

    //Url validation
    function abIsValidUrl($url, $debug=false) {

    $urlBits = @parse_url($url);
    if ($urlBits[’scheme‘] != „http“ && $urlBits[’scheme‘] != „https“) {
    echo ($debug) ? „

  • Error! URL does not start with http: „.$url : „“;
    return false;
    } else if (strlen($urlBits[‚host‘]) < 4 || strpos($urlBits['host'], ".") === false) {
    echo ($debug) ? "

  • Error! URL is incorrect: „.$url : „“;
    return false;
    }

    return true;
    }

    //Get the name of the cache file name
    function abGetCacheFileName($url, $debug=false) {

    $cacheFileName = md5($url).“.cache“;
    echo ($debug) ? „

  • Cache file name for URL: „.$url.“ is „.$cacheFileName : „“;
    return $cacheFileName;

    }

    //Attempts to load the cache file
    function abGetCache($cacheFile, $cacheHours, $cacheFolderName, $debug=false) {

    //If the url is called with ab_cc=1 then discard the cache file
    if (isset($_GET[‚ab_cc‘]) && $_GET[‚ab_cc‘] == „1“) {
    echo ($debug) ? „

  • Clear cache invoked!“ : „“;
    abRemoveCacheFile($cacheFile);
    unset($_GET[‚ab_cc‘]);
    return false;
    }

    if (!file_exists($cacheFile)) {
    echo ($debug) ? „

  • Error! Cache file does not exist! „.$cacheFile : „“;
    return false;
    }

    $cache_contents = @file_get_contents($cacheFile);

    if ($cache_contents === false) {
    echo ($debug) ? „

  • Error: Cache file is completely empty!“ : „“;
    return false;
    } else {
    echo ($debug) ? „

  • Cache file contents“.$cache_contents : „“;

    //Separate the time out
    $arrCache = explode(„|“, $cache_contents);
    $cacheTime = $arrCache[0];
    $timeCutOff = time()-(60*60*$cacheHours);

    //Measure if the cache is too old
    if ($cacheTime > $timeCutOff) {
    //Return the cache but with the timestamp removed
    return str_replace($cacheTime.“|“, „“, $cache_contents);
    } else {
    //echo „cacheTime ($cacheTime) <= timeCutOff ($timeCutOff)";
    abRemoveCacheFile($cacheFile, $debug);
    abClearOldCache($cacheFolderName, $cacheHours, $debug); //Also remove other old cache files
    return false;
    }
    }

    }

    //Delete a cache file
    function abRemoveCacheFile($cacheFile, $debug=false) {
    if (!@unlink($cacheFile)) {
    echo ($debug) ? "

  • Error: Could not remove cache file: „.$cacheFile : „“;
    return false;
    } else {
    echo ($debug) ? „

  • Successfully removed the cache file: „.$cacheFile : „“;
    return true;
    }
    }

    //Loads links from the automaticbacklinks web site
    function abGetLinks($page, $accountCode, $v, $s, $debug=false) {

    //Make the URL
    $url = „http://www.automaticbacklinks.com/links.php&#8220;;
    $url = $url.“?a=“.$accountCode;
    $url = $url.“&v=“.$v;
    $url = $url.“&s=“.$s;
    $url = $url.“&page=“.urlencode($page);

    echo ($debug) ? „

  • Making call to AB: „.$url : „“;

    ini_set(‚default_socket_timeout‘, 10);
    if (intval(get_cfg_var(‚allow_url_fopen‘)) && function_exists(‚file_get_contents‘)) {
    echo ($debug) ? „

  • Using file_get_contents()“ : „“;
    $links = @file_get_contents($url);
    } else if (intval(get_cfg_var(‚allow_url_fopen‘)) && function_exists(‚file‘)) {
    echo ($debug) ? „

  • Using file()“ : „“;
    if ($content = @file($url)) {
    $links = @join(“, $content);
    }
    } else if (function_exists(‚curl_init‘)) {
    echo ($debug) ? „

  • Using cURL()“ : „“;
    $ch = curl_init ($url);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $links = curl_exec($ch);
    curl_close ($ch);
    } else {
    echo ($debug) ? „

  • Error: no method available to fetch links!“ : „“;
    return false;
    }

    return $links;

    }

    //remove ab_cc etc. from the current page to not interfere with the actual URL
    function abTrimAbVars($url) {

    $url = str_replace(„?ab_cc=1“, „“, $url);
    $url = str_replace(„&ab_cc=1“, „“, $url);
    $url = str_replace(„?ab_debug=c8357c2ee8ede3dfe452b5777ba586ba“, „“, $url);
    $url = str_replace(„&ab_debug=c8357c2ee8ede3dfe452b5777ba586ba“, „“, $url);

    return $url;

    }

    //Get page
    function abGetPageUrl($debug=false) {

    $query = „“;
    $protocol = (isset($_SERVER[‚HTTPS‘])) ? „https://&#8220; : „http://&#8220;;
    $host = $_SERVER[‚HTTP_HOST‘];

    if ($_SERVER[„REDIRECT_URL“]) {
    //Redirect
    if (isset($_SERVER[‚REDIRECT_SCRIPT_URI‘])) {
    //Use URI – it is complete
    $page = $_SERVER[‚REDIRECT_SCRIPT_URI‘];
    } else {
    //Use file and query
    $file = $_SERVER[„REDIRECT_URL“];
    if (isset($_SERVER[‚REDIRECT_QUERY_STRING‘])) {
    $query = „?“.$_SERVER[‚REDIRECT_QUERY_STRING‘];
    }
    }
    } else {
    //No redirect
    if (isset($_SERVER[‚SCRIPT_URI‘])) {
    //Use URI – it is complete
    $page = $_SERVER[‚SCRIPT_URI‘];
    } else if (isset($_SERVER[‚REQUEST_URI‘])) {
    //Use URI
    if (substr($_SERVER[‚REQUEST_URI‘],0,4) == „http“) {
    //Request URI has host in it
    $page = $_SERVER[‚REQUEST_URI‘];
    } else {
    //Request uri lacks host
    $page = $protocol.$host.$_SERVER[‚REQUEST_URI‘];
    }
    } else {
    $file = $_SERVER[‚SCRIPT_NAME‘];
    if (isset($_SERVER[‚QUERY_STRING‘])) {
    $query = „?“.$_SERVER[‚QUERY_STRING‘];
    }
    }
    }
    if (!$page) {
    $page = $protocol.$host.$file.$query;
    }

    $page = abTrimAbVars($page);

    echo ($debug) ? „

  • This page is reported as: „.$page : „“;

    return $page;

    }

    ?>This is an example of a WordPress page, you could edit this to put information about yourself or your site so readers know where you are coming from. You can create as many pages like this one or sub-pages as you like and manage all of your content inside of WordPress.

  • Kommentar verfassen

    Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

    WordPress.com-Logo

    Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

    Twitter-Bild

    Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

    Facebook-Foto

    Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

    Google+ Foto

    Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

    Verbinde mit %s

    %d Bloggern gefällt das: