$funct($_REQUEST["module"],$id); } die("done"); } function duplicate_item($module,$id) { global $db; $item=$db->db_selectOne($module,"*","id='".$id."'"); unset($item["id"]); $item["created"]=time(); $item["updated"]=time(); $item["generated_url"]=uniqid(); $db->db_insert("rss_feed",$item); } function delete_item($module,$id) { global $db; $row=$db->db_selectOne($module,"*","id='".$id."'"); if(isset($row["image"]) && ($row["image"]) && file_exists("images/".$row["image"])) unlink("images/".$row["image"]); $db->db_query("delete from ".$module." where id=".$id); } function reload_item($module,$id) { global $db; $row=$db->db_selectOne($module,"*","id='".$id."'"); $_REQUEST["feed"]=$row["generated_url"]; $called_from_file=true; include("feed.php"); } function aggregator_item($module,$id) { global $db; global $table_prefix; /*$rows=$db->db_select("wp_postmeta","*","post_id='69'"); foreach($rows as $row) { echo "'".$row["meta_key"]."'=>'".$row["meta_value"]."',
"; } die("jj");*/ $data=$db->db_selectOne($module,"*","id='".$id."'"); if($data["content2"]=="") { $_REQUEST["feed"]=$data["generated_url"]; $called_from_file=true; include("feed.php"); } $item=array("post_author"=>1, "post_date"=>date("Y-m-d H:i:s"), "post_date_gmt"=>gmdate("Y-m-d H:i:s"), "post_content"=>$data["description"], "post_title"=>$data["name"], "post_status"=>"publish", "comment_status"=>"closed", "ping_status"=>"closed", "post_name"=>seo_string($data["name"]."_feed_".$data["id"]), "post_modified"=>date("Y-m-d H:i:s"), "post_modified_gmt"=>gmdate("Y-m-d H:i:s"), "guid"=>"", //http://localhost/cms/wordpress-5.5.3/?post_type=wprss_feed&p=27 "menu_order"=>0, "post_type"=>"wprss_feed", "comment_count"=>0); $row=$db->db_selectOne($table_prefix."posts","*","ID>1"); if($row===false) die("No post found"); foreach($row as $tit=>$val) if($tit!="ID" && !isset($item[$tit])) $item[$tit]=$val; $db->db_insert($table_prefix."posts",$item); $post_id=$db->last_insert_id(); $domain_link = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]"; $actual_link = $domain_link.$_SERVER["REQUEST_URI"]; $tab=explode("wp-admin",$actual_link); $item_update=array("guid"=>$tab[0]."?post_type=wprss_feed&p=".$post_id); $db->db_update($table_prefix."posts",$item_update,"ID=".$post_id); $url_feed=rssfeed__PLUGIN_URL."feed.php?feed=".$data["generated_url"]; $cats=array(); $cats_id=explode(",",$data["categories"]); $cat_lists=array(); foreach($cats_id as $cat_id) { if(!isset($cat_lists[$cat_id])) { $cat=$db->db_selectOne($table_prefix."terms","term_id,name","term_id='".$cat_id."'"); if($cat===false) continue; $cat_lists[$cat_id]=$cat["name"]; } $cats[]=array("id"=>$cat_id,"name"=>$cat_lists[$cat_id]); } $nb_cat=0; $ftp_taxonomies_cat=""; $tot_cat=0; if(sizeof($cats)>0) { $i=0; foreach($cats as $category) { $ftp_taxonomies_cat.='i:'.$i.';s:'.strlen(addslashes($category["name"])).':"'.addslashes($category["name"]).'";'; $tot_cat++; $i++; } } if($_REQUEST["agr_id"]!=0) { $rows=$db->db_select($table_prefix."postmeta","meta_key,meta_value","post_id='".$_REQUEST["agr_id"]."'"); foreach($rows as $row) $meta[$row["meta_key"]]=$row["meta_value"]; } else { $meta=array('wprss_ftp_taxonomies'=>'a:1:{i:0;a:6:{s:8:"taxonomy";s:8:"category";s:5:"terms";a:0:{}s:4:"auto";s:5:"false";s:14:"filter_subject";s:0:"";s:15:"filter_keywords";s:0:"";s:28:"post_taxonomy_compare_method";s:3:"all";}}', '_edit_last'=>'1', '_edit_lock'=>'1610986948:1', 'wprss_feed_is_updating'=>'', 'wprss_site_url'=>$data["url"], 'wprss_feed_image'=>'', 'wprss_ftp_post_type'=>'post', 'wprss_ftp_post_status'=>'publish', 'wprss_ftp_post_format'=>'standard', 'wprss_ftp_post_date'=>'original', 'wprss_ftp_comment_status'=>'true', 'wprss_ftp_force_full_content'=>'false', 'wprss_ftp_import_excerpt'=>'false', 'wprss_ftp_allow_embedded_content'=>'false', 'wprss_ftp_canonical_link'=>'true', 'wprss_ftp_post_taxonomy'=>'a:1:{i:0;s:8:"category";}', 'wprss_ftp_post_taxonomy_compare_method'=>'a:0:{i:0;s:3:"all";}', 'wprss_ftp_post_terms'=>'a:0:{i:0;a:2:{}}', 'wprss_ftp_def_author'=>'.', 'wprss_ftp_author_fallback_method'=>'existing', 'wprss_ftp_no_author_found'=>'fallback', 'wprss_ftp_fallback_author'=>'admin', 'wprss_ftp_save_images_locally'=>'true', 'wprss_ftp_save_all_image_sizes'=>'true', 'wprss_ftp_image_min_width'=>'80', 'wprss_ftp_image_min_height'=>'80', 'wprss_ftp_use_featured_image'=>'true', 'wprss_ftp_featured_image'=>'first', 'wprss_ftp_remove_ft_image'=>'false', 'wprss_ftp_must_have_ft_image'=>'false', 'wprss_ftp_singular_prepend'=>'false', 'wprss_ftp_singular_append'=>'false', 'wprss_ftp_word_limit_enabled'=>'general', 'wprss_ftp_trimming_type'=>'general', 'wprss_ftp_trimming_ellipsis'=>'false', 'wprss_ftp_powerpress_enabled'=>'false', 'wprss_ftp_disable_visual_editor'=>'false', 'wprss_url'=>"", 'wprss_limit'=>5, 'wprss_unique_titles'=>'', 'wprss_enclosure'=>'true', 'wprss_import_source'=>'false', 'feed_request_useragent'=>'', 'wprss_force_feed'=>'false', 'wprss_activate_feed'=>'', 'wprss_pause_feed'=>'', 'wprss_age_limit'=>'', 'wprss_age_unit'=>'days', 'wprss_update_interval'=>'global', 'wprss_state'=>'active', 'wprss_update_time'=>'', 'wprss_next_update'=>'1 mins', 'wprss_items_imported'=>'0'); if($ftp_taxonomies_cat) { $meta["wprss_ftp_taxonomies"]='a:1:{i:0;a:6:{s:8:"taxonomy";s:8:"category";s:5:"terms";a:'.$tot_cat.':{'.$ftp_taxonomies_cat.'}s:4:"auto";s:5:"false";s:14:"filter_subject";s:0:"";s:15:"filter_keywords";s:0:"";s:28:"post_taxonomy_compare_method";s:3:"all";}}'; $meta["wprss_ftp_post_terms"]='a:1:{i:0;a:'.$tot_cat.':{'.$ftp_taxonomies_cat.'}}'; } } $meta["wprss_limit"]=$data["nb_items"]; $meta["wprss_url"]=$url_feed; foreach($meta as $tit=>$val) { $item=array("post_id"=>$post_id,"meta_key"=>$tit,"meta_value"=>$val); $db->db_insert($table_prefix."postmeta",$item); } } function get_list() { global $db; require_once( 'admin/'.$_REQUEST["module"].'.php' ); die(""); } function add_item() { global $db; require_once( 'admin/'.$_REQUEST["module"].'_add.php' ); die(""); } function add_item2() { $str=$_REQUEST["module"].'_add2'; $this->$str(); die(""); } function get_feed_info($url) { require_once(libDirectory."curl.php"); require_once(libDirectory."curlManager.php"); $scraper=new curlManager(); $title=$desc=""; if($_REQUEST["type"]=="") $_REQUEST["type"]="google"; switch($_REQUEST["type"]) { case "facebook":$tab=explode(".com/",$_REQUEST["url"]); if(!isset($tab[1])) die("Error:url is not valid facebook page"); $_REQUEST["url"]="https://m.facebook.com/".$tab[1]; $content=delete_spaces($scraper->getContent($_REQUEST["url"])); if(!preg_match('|(.*?)</(.*?)name="description" content="(.*?)"|i', $content, $rowd)) die("Error: page url is not valid or not public"); $title=utf8_encode($rowd[1]); $desc=utf8_encode($rowd[3]);break; case "twitter":$tab=explode(".com/",$_REQUEST["url"]); if(!isset($tab[1])) die("Error:url is not valid twitter page"); $tab=explode("/",$tab[1]); $tab=explode("?",$tab[0]); $name=$tab[0]; $dict_aa = get_twitter_details($name); if(!isset($dict_aa[0]["description"])) die("can't find description please by sure that you anetr a valid public twitter url.<br> If the url ".$_REQUEST["url"]." is valid please try again "); $title=xml_str_encode(utf8_encode(remove_emoji($dict_aa[0]["screen_name"]))); $desc=xml_str_encode(utf8_encode(remove_emoji($dict_aa[0]["description"]))); $_REQUEST["url"]="https://www.twitter.com/".$tab[0]; break; } return array("title"=>$title,"description"=>$desc); } function rss_feed_add2() { global $db; if(empty(trim($_REQUEST["url"]))) die("Please enter url"); if (filter_var($_REQUEST["url"], FILTER_VALIDATE_URL) === false) die("Please enter a valid url"); $infos=$this->get_feed_info($_REQUEST["url"]); if(trim($_REQUEST["name"])=="") $_REQUEST["name"]=$infos["title"]; $_REQUEST["title"]=$infos["title"]; if(trim($_REQUEST["description"])=="") $_REQUEST["description"]=$infos["description"]; if(isset($_REQUEST["categories"])) $cats=implode(",",get_included_categories($_REQUEST["categories"])); else $cats=""; $item=array('type'=>$_REQUEST["type"],'url'=>$_REQUEST["url"],'name'=>utf8_encode($_REQUEST["name"]),'often_check'=>$_REQUEST["often_check"],'nb_items'=>$_REQUEST["nb_items"],'nb_analyse'=>$_REQUEST["nb_analyse"],'description'=>utf8_encode($_REQUEST["description"]),'title'=>utf8_encode($_REQUEST["title"]),'categories'=>$cats,"domain"=>strtolower($_REQUEST["domain"])); if($_REQUEST["id"]) { $item["updated"]=time(); $db->db_update("rss_feed",$item,"id=".$_REQUEST["id"]); } else { $row=$db->db_selectOne("rss_feed","*","url='".$_REQUEST["url"]."'"); if($row!==false) die("url already exists"); $item["created"]=time(); $item["updated"]=time(); $item["generated_url"]=uniqid(); $db->db_insert("rss_feed",$item); } die("done"); } function import() { global $db; $allowedExts = array("csv", "txt"); $temp = explode(".", $_FILES["file"]["name"]); $extension = end($temp); if( !in_array($extension, $allowedExts)) die("Only csv files are allowed"); if ($_FILES["file"]["error"] > 0) die("Return Code: " . $_FILES["file"]["error"] . "<br>"); $i=0; $tot=0; $exist=0; //feed,name,description,categories,frecuency,analyze,items $fields=array("url",'name','description','categories','often_check','nb_analyse','nb_items','domain','type'); $nb=sizeof($fields); if (($handle = fopen($_FILES["file"]["tmp_name"], "r")) !== FALSE) { while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { $i++; if($i==1) continue; $item=array(); for($j=0; $j<$nb;$j++) { $item[$fields[$j]]=$data[$j]; } $row=$db->db_selectOne("rss_feed","*","url='".$item["url"]."'"); if($row!==false) { $exist++; continue; } $item["title"]=$item["name"]=utf8_encode($item["name"]); $item["description"]=utf8_encode($item["description"]); $item["created"]=time(); $item["updated"]=time(); $item["generated_url"]=uniqid(); $db->db_insert("rss_feed",$item); $tot++; } fclose($handle); } die("success:The file was successfully imported.<br> - New items: ".$tot."<br> - Existing items: ".$exist); } } ?>