HEX
Server: Apache
System: Linux msm5694.mjhst.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User: camjab_ssh (1000)
PHP: 5.3.29
Disabled: NONE
Upload Files
File: //home/httpd/mech_ftp/baretube.com/admin/xml_cron.php
<?php
echo "<pre>";
    include_once('db.php');
    
    //check if there are any videos to encode
    $rresult = dbQuery("SELECT * FROM xml_feeds ORDER BY record_num ASC", false);
    if (count($rresult) < 1) {
        echo "No xml feeds to import!";
    }

    $arr = array();
    file_put_contents('scripts/xml_running', 'true');
    $result = dbQuery("SELECT * FROM xml_feeds  ORDER BY record_num ASC", false);
    $counter = 0;
    foreach ($result as $row) {
        $thisPaysite = $row['paysite'];
        if (stripos($row['url'], 'webmastercentral') !== false) {
            echo "WebmasterCentral Feed Detected!\n";
            echo "Processing...$row[url]...";
            $xml = simplexml_load_string(file_get_contents($row['url']));
            if ($xml) {
                echo "Done!\n";
            } else {
                echo "Failed!\n";
            }
            foreach ($xml->set as $i) {
                $arr[$counter]['id'] = (int) $i->id;
                $arr[$counter]['title'] = (string) $i->title;
                $arr[$counter]['desc'] = (string) $i->title;
                $arr[$counter]['keywords'] = (string) $i->title;
                $arr[$counter]['flv'] = (string) getWebmasterCentralVideo($arr[$counter]['id']);
                $arr[$counter]['feed'] = $row[name];
                $arr[$counter]['thumb'] = (string) $i->thumbnail;
                $arr[$counter]['external'] = 'webmastercentral' . $i->id;
                $counter++;
            }
            grabXMLVideos($arr);
            unset($arr);
        } elseif (stripos($row['url'], 'xml_adtools') !== false) {
            echo "NATS Feed Detected!\n";
            echo "Processing...$row[url]...";
            $xml = simplexml_load_string(file_get_contents($row['url']));
            if ($xml) {
                echo "Done!\n";
            } else {
                echo "Failed!\n";
            }
            foreach ($xml->entry as $i) {
                $arr[$counter]['id'] = (int) $i->adtoolid;
                $arr[$counter]['title'] = (string) $i->title;
                $arr[$counter]['desc'] = (string) $i->description;
                $arr[$counter]['keywords'] = (string) $i->tags;
                $arr[$counter]['flv'] = (string)$i->url;
                $arr[$counter]['feed'] = $row[name];
                $arr[$counter]['thumb'] = (string) $i->thumbnail;
                $counter++;
            }
            grabXMLVideos($arr);
            unset($arr);
        } elseif (stripos($row['url'], 'membercms.com') !== false) {
            echo "AdultCentro Feed Detected!\n";
            echo "Processing...$row[url]...";
            $xml = simplexml_load_string(file_get_contents($row['url']));
            if ($xml) {
                echo "Done!\n";
            } else {
                echo "Failed!\n";
            }

            $pageCurrent = (int) $xml->Digits->pageCurrent;
            $pageNext = (int) $xml->Digits->pageNext;
            $pageLast = (int) $xml->Digits->pageLast;
            //print_r($xml);
            echo "Total Pages: $pastLast\n";
            if (is_numeric($pageLast)) {
                for ($z = 0; $z <= $pageLast; $z++) {
                    $pagedUrl = $row[url] . '&boxPager_cp=' . $z;
                    echo "Processing...$pagedUrl...";
                    $xml = simplexml_load_string(file_get_contents($pagedUrl));
                    if ($xml) {
                        echo "Done!\n";
                    } else {
                        echo "Failed!\n";
                    }
                    foreach ($xml->Dvds->dvd as $i) {
                        $arr[$counter]['id'] = (int) $i->dvd_id;
                        $arr[$counter]['title'] = (string) $i->descriptions->description->description_text;
                        $arr[$counter]['desc'] = (string) $i->descriptions->description->description_text;
                        unset($acKeywords);
                        unset($acImages);
                        foreach ($i->categories->category as $c) {
                            $acKeywords[] = (string) $c->name;
                        }
                        foreach ($i->thumbnails->thumbnail->image as $f) {
                            $acImages[] = (string) $f;
                        }
                        $arr[$counter]['keywords'] = implode(", ", $acKeywords);
                        $arr[$counter]['images'] = implode(",", $acImages);
                        $arr[$counter]['flv'] = getAdultCentroVideo($arr[$counter]['id']);
                        $arr[$counter]['feed'] = $row[name];
                        $arr[$counter]['length'] = (string) $i->duration;
                        $arr[$counter]['external'] = 'adultcentro' . $arr[$counter]['id'];
                        //print_r($arr[$counter]);
                        $counter++;
                    }
                    grabXMLVideosAC($arr);
                    unset($arr);
                }
            }
        } else {
            echo "Standardized XML Feed Processing...\n";
            echo "Processing...$row[url]...";
            $xml = simplexml_load_string(file_get_contents($row['url']));
            if ($xml) {
                echo "Done!\n";
            } else {
                echo "Failed!\n";
            }

            foreach ($xml->video as $i) {
                foreach ($i->clips->clip as $j) {
                    $arr[$counter]['id'] = $i->id;
                    $arr[$counter]['title'] = $i->title;
                    $arr[$counter]['desc'] = $i->description;
                    $arr[$counter]['keywords'] = $i->tags;
                    if ($i->clip_url . $j->flv) {
                        $arr[$counter]['flv'] = $i->clip_url . $j->flv;
                    } else {
                        $arr[$counter]['flv'] = $i->clip_url . $j->mp4;
                    }
                    $arr[$counter]['length'] = $j->duration;
                    $arr[$counter]['paysite'] = $i->paysite;
                    $arr[$counter]['feed'] = $row['name'];
                    $arr[$counter]['thumb'] = $i->screen_url . $j->screens->screen;
                    $arr[$counter]['hotlink'] = ($i->hotlink) ? $i->hotlink : $row['hotlink'];
                    $counter++;
                }
            }

            grabXMLVideos($arr);
            unset($arr);
        }
    }

    print_r($arr);

    function grabXMLVideosAC($arr) {
        global $content_path;
        global $wget_path;
        global $video_path;
        global $thumb_path;
        global $thumbwidth;
        global $thumbheight;
        global $thisPaysite;
        global $dblink;

        foreach ($arr as $i) {
            $title = $i['title'];
            $desc = $i['desc'];
            $keywords = $i['keywords'];
            $flv = 'adultcentro' . $i['id'];
            $length = $i['length'];
            $paysite = $i['paysite'];
            $feed = $i['feed'] . '|' . $i['id'];
            $thumb = $i['thumb'];
            $hotlinked = mysqli_real_escape_string($dblink, $flv);
            $filename = uniqid();

            $paysite = mysqli_real_escape_string($dblink, $paysite);
            $title = mysqli_real_escape_string($dblink, $title);
            $keywords = mysqli_real_escape_string($dblink, $keywords);
            $desc = mysqli_real_escape_string($dblink, $desc);
            $length = mysqli_real_escape_string($dblink, $length);
            $feed = mysqli_real_escape_string($dblink, $feed);
            $thumb = mysqli_real_escape_string($dblink, $thumb);
            if (count(dbQuery("SELECT record_num FROM content WHERE xml = '$feed'", false)) < 1) {
                if (1) {
                    $row['filename'] = $filename;
                    $first = $row['filename'][0];
                    $second = $row['filename'][1];
                    $third = $row['filename'][2];
                    $forth = $row['filename'][3];
                    $fifth = $row['filename'][4];
                    @mkdir($video_path . '/' . $first);
                    @mkdir($video_path . '/' . $first . '/' . $second);
                    @mkdir($video_path . '/' . $first . '/' . $second . '/' . $third);
                    @mkdir($video_path . '/' . $first . '/' . $second . '/' . $third . '/' . $forth);
                    @mkdir($video_path . '/' . $first . '/' . $second . '/' . $third . '/' . $forth . '/' . $fifth);
                    @mkdir($thumb_path . '/' . $first);
                    @mkdir($thumb_path . '/' . $first . '/' . $second);
                    @mkdir($thumb_path . '/' . $first . '/' . $second . '/' . $third);
                    @mkdir($thumb_path . '/' . $first . '/' . $second . '/' . $third . '/' . $forth);
                    @mkdir($thumb_path . '/' . $first . '/' . $second . '/' . $third . '/' . $forth . '/' . $fifth);
                    mkdir($thumb_path . '/' . $first . '/' . $second . '/' . $third . '/' . $forth . '/' . $fifth . '/' . $filename);
                    $subdir = $first . '/' . $second . '/' . $third . '/' . $forth . '/' . $fifth . '/' . $filename . '/';
                    unset($images);
                    $images = explode(",", $i['images']);
                    unset($imageCounter);
                    $imageCounter = 0;
                    unset($usedImages);
                    //download thumbnails
                    foreach ($images as $d) {
                        $output = "$thumb_path/$subdir" . $filename . "-$imageCounter.jpg";
                        echo "Downloading $d to $output\n";
                        file_put_contents($output, file_get_contents($d));
                        $usedImages[] = $output;
                        $imageCounter++;
                    }

                    foreach ($usedImages as $u) {
                        if (file_exists("/usr/local/bin/mogrify")) {
                            shell_exec("/usr/local/bin/mogrify -resize " . ($thumbwidth) . "x" . ($thumbheight) . "^ -gravity Center -extent " . $thumbwidth . "x" . $thumbheight . " $u");
                        } else {
                            shell_exec("/usr/bin/mogrify -resize " . ($thumbwidth) . "x" . ($thumbheight) . "^ -gravity Center -extent " . $thumbwidth . "x" . $thumbheight . " $u");
                        }
                    }

                    if (count($usedImages) < 10) {
                        $toCopy = count($usedImages);
                        for ($k = $toCopy; $k < 11; $k++) {
                            $output = "$thumb_path/$subdir" . $filename . "-$k.jpg";
                            copy($usedImages[0], $output);
                        }
                    }


                    dbReconnect();
                    if (is_array($usedImages)) {
                        if (count(dbQuery("SELECT * FROM paysites WHERE name LIKE '$paysite'", false)) < 1) {
                            //dbQuery("INSERT INTO paysites (name) VALUES ('$paysite')");
                            //$paysiteid = mysqli_insert_id($dblink);
                        } else {
                            $mrow = dbRow("SELECT * FROM paysites WHERE name LIKE '$paysite'", false);
                            $paysiteid = $mrow[record_num];
                        }

                        dbQuery("INSERT INTO content (title, filename, orig_filename, description, keywords, scheduled_date, date_added, encoded_date, approved, hotlinked, paysite, xml, length) VALUES ('$title', '" . $filename . "', '$filename', '$desc','$keywords',  NOW(), NOW(),  NOW(),2, '$hotlinked', '$thisPaysite', '$feed', '$length')");
                        $insert = mysqli_insert_id($dblink);
                        dbQuery("INSERT INTO content_views (content, views) VALUES ('$insert',0)");
                    }
                }

                $vardump = print_r($i, true);
                echo "$feed does not exist, adding $vardump\n";
            } else {
                echo "$feed exists, skipping\n";
            }
        }
    }

    function grabXMLVideos($arr) {
        global $content_path;
        global $wget_path;
        global $thisPaysite;
        global $dblink;

        foreach ($arr as $i) {
            $title = $i['title'];
            $desc = $i['desc'];
            $keywords = $i['keywords'];
            $flv = $i['flv'];
            $length = $i['length'];
            $paysite = $i['paysite'];
            $feed = $i['feed'] . '|' . $i['id'];
            $thumb = $i['thumb'];
            if ($i['hotlink'] == 1) {
                $hotlinked = mysqli_real_escape_string($dblink, $flv);
            } else {
                if ($i['external']) {
                    $hotlinked = mysqli_real_escape_string($dblink, $i[external]);
                } else {
                    unset($hotlinked);
                }
            }

            if (stripos($i['flv'], '.mp4') !== false) {
                $filename = md5(microtime()) . ".mp4";
            } else {
                if (stripos($i['external'], 'adultcentro') !== false) {
                    $filename = md5(microtime()) . ".mp4";
                } else {
                    $filename = md5(microtime()) . ".flv";
                }
            }

            $paysite = mysqli_real_escape_string($dblink, $paysite);
            $title = mysqli_real_escape_string($dblink, $title);
            $keywords = mysqli_real_escape_string($dblink, $keywords);
            $desc = mysqli_real_escape_string($dblink, $desc);
            $length = mysqli_real_escape_string($dblink, $length);
            $feed = mysqli_real_escape_string($dblink, $feed);
            $thumb = mysqli_real_escape_string($dblink, $thumb);

            if (count(dbQuery("SELECT record_num FROM content WHERE xml = '$feed'", false)) < 1) {
                shell_exec("$wget_path " . escapeshellarg(str_replace('\r', '', $flv)) . " -O \"$content_path/$filename\"");
                $filesize = filesize($content_path . "/" . $filename);
                if (file_exists($content_path . "/" . $filename) && $filesize > 0) {
                    dbReconnect();
                    if (count(dbQuery("SELECT * FROM paysites WHERE name LIKE '$paysite'", false)) < 1) {
                        //dbQuery("INSERT INTO paysites (name) VALUES ('$paysite')");
                        //$paysiteid = mysqli_insert_id($dblink);
                    } else {
                        $mrow = dbRow("SELECT * FROM paysites WHERE name LIKE '$paysite'");
                        $paysiteid = $mrow['record_num'];
                    }

                    $sql = "INSERT INTO content (title, filename, orig_filename, description, keywords, scheduled_date, date_added, encoded_date,  approved, hotlinked, paysite, xml) VALUES ('$title', '" . $filename . "', '$filename', '$desc','$keywords',  NOW(), NOW(), NOW(), 0, '$hotlinked', '$thisPaysite', '$feed')";
                    dbQuery($sql);
                }

                $vardump = print_r($i, true);
                echo "$feed does not exist, downloading $vardump\n";
            } else {
                echo "$feed exists, skipping\n";
            }
        }
    }

    echo "\nFINISHED";
    @unlink('scripts/xml_running');
    exit();
?>