STRATO-apps/wordpress_03/app/wp-content/plugins/aimogen-pro/res/aiomatic-text-spinner.php
SHA-256: d469316c7bfa12b3d5123effc0532cdfc11fcac229260a9abdeb63016cf7d1f2
<?php
define("WORD_LIMIT",3);
if(!class_exists('PhpTextSpinner'))
{
class PhpTextSpinner {
private $oldContent="";
private $suggestContent=array();
public function spinContentAlt($content){
$this->oldContent=$content;
$tmp=explode(" ",$this->oldContent);
$c=count($tmp);
for($i=0;$i<$c;$i++){
$word=trim($tmp[$i]);
$suggestions="";
if(strlen($word)>WORD_LIMIT){
$url="http://freethesaurus.net/suggest.php?q=$word";
$suggestions=$this->getHtmlCodeViaFopen($url);
if($suggestions === FALSE)
{
$suggestions = '';
$this->suggestContent[]=array($word,$suggestions);
continue;
}
$suggestions=str_replace("\r",", ",$suggestions);
$suggestions=str_replace("\n",", ",$suggestions);
$suggestions=str_replace("\r\n",", ",$suggestions);
}
$this->suggestContent[]=array($word,$suggestions);
}
$c=count($this->suggestContent);
for($i=0;$i<$c;$i++){
$word=$this->suggestContent[$i][0];
$temp=trim($this->suggestContent[$i][1]);
if(strlen($temp)>0){
$code="{";
$tmp=explode(",",$temp);
$ce=count($tmp);
for($j=0;$j<$ce;$j++){
$opt=trim($tmp[$j]);
if(!empty($opt)){
$code.="$opt|";
}
}
$opt=substr($opt,0,strlen($opt)-1);
$code.="}";
$this->oldContent=str_replace($word,$code,$this->oldContent);
}
}
return $this->oldContent;
}
public function spinContent($content){
$this->oldContent=$content;
$tmp=explode(" ",$this->oldContent);
$c=count($tmp);
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$headers = array();
$headers[] = "x-rapidapi-key: n5yuFj0HINmshz3BduR7dmPWIdqvp1NDfeYjsnVFNhLdP2V34g";$headers[] = "x-rapidapi-host: wikisynonyms.p.rapidapi.com";
$headers[] = "Accept: application/json";
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
for($i=0;$i<$c;$i++){
$word=trim($tmp[$i]);
$suggestions="";
if(strlen($word)>WORD_LIMIT && !preg_match('/[^A-Za-z]/', $word)){
curl_setopt($ch, CURLOPT_URL, "https://wikisynonyms.p.rapidapi.com/".$word);
$exec = curl_exec($ch);
if($exec === FALSE)
{
$suggestions = "";
$this->suggestContent[]=array($word,$suggestions);
continue;
}
$json = json_decode($exec);
if(isset($json->http) && $json->http == '200')
{
if(isset($json->terms))
{
foreach($json->terms as $terms)
{
if(!preg_match('/[^A-Za-z0-9\-]/', $terms->term))
{
$suggestions .= $terms->term . ', ';
}
}
$suggestions=trim($suggestions, ',');
}
}
}
$this->suggestContent[]=array($word, $suggestions);
}
curl_close($ch);
$c=count($this->suggestContent);
for($i=0;$i<$c;$i++){
$word=$this->suggestContent[$i][0];
$temp=trim($this->suggestContent[$i][1]);
if(strlen($temp)>0){
$code="{";
$tmp=explode(",",$temp);
$ce=count($tmp);
for($j=0;$j<$ce;$j++){
$opt=trim($tmp[$j]);
if(!empty($opt)){
$code.="$opt|";
}
}
$opt=substr($opt,0,strlen($opt)-1);
$code.="}";
$this->oldContent=str_replace($word,$code,$this->oldContent);
}
}
return $this->oldContent;
}
function runTextSpinnerSingle($content){
$returnArray=array();
$pattern="/{(.*)}/Uis";
preg_match_all($pattern, $content, $returnArray, PREG_SET_ORDER);
foreach($returnArray as $return){
$code=$return[0];
$str=$return[1];
$str=substr($str,0,strlen($str)-1);
$tmp=explode("|",$str);
$c=count($tmp);
$rand=wp_rand(0,($c-1));
$word=$tmp[$rand];
$content=str_replace($code,$word,$content);
}
return $content;
}
function runTextSpinner($content){
$returnArray=array();
$pattern="/\{[^\{]+?\}/ixsm";
preg_match_all($pattern, $content, $returnArray, PREG_SET_ORDER);
foreach($returnArray as $return){
$code=$return[0];
$str=str_replace("{","",$code);
$str=str_replace("}","",$str);
$tmp=explode("|",$str);
$c=count($tmp);
$rand=wp_rand(0,($c-1));
$word=$tmp[$rand];
$content=str_replace($code,$word,$content);
}
$pos=strpos($content,"{");
if($pos===false){
return $content;
}
else{
return $this->runTextSpinner($content);
}
}
private function getHtmlCodeViaFopen($url){
$returnStr="";
$fp=fopen($url, "r");
if($fp === FALSE)
{
return FALSE;
}
while (!feof($fp)) {
$returnStr.=fgetc($fp);
}
fclose($fp);
return $returnStr;
}
}
}
?>