1    	<?php
2    	/*
3    	    Серверное приложение (бэкенд) Технологии полных выборок.
4    	    Язык исходного кода -- PHP
5    	
6    	    Авторские права (C) 2024-2026 info@fulldata-technology.ru. Все права защищены.
7    	
8    	    Эта программа является свободным программным обеспечением; вы можете 
9    	    распространять её и/или изменять в соответствии с условиями GNU General 
10   	    Public License, опубликованной Free Software Foundation; как версии 3, 
11   	    так и (по вашему выбору) любой более поздней версии.
12   	
13   	    Эта программа распространяется в надежде, что она будет вам полезна,
14   	    но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; даже без подразумеваемой гарантии
15   	    ТОВАРНОЙ ПРИГОДНОСТИ или ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ. Подробнее см.
16   	    GNU General Public License.
17   	
18   	    Вы должны были получить копию GNU General Public License
19   	    вместе с этой программой; в ином случае запросите копию в Free Software
20   	    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
21   	
22   	    --------------------------------------------------------------------------
23   	
24   	    Full-text search engine with inverted index.
25   	    Source language -- PHP
26   	
27   	    Copyright (C) 2024-2026 Fulldata-technology.ru. All rights reserved.
28   	
29   	    This program is free software; you can redistribute it and/or modify
30   	    it under the terms of the GNU General Public License as published by
31   	    the Free Software Foundation; either version 3 of the License, or
32   	    (at your option) any later version.
33   	
34   	    This program is distributed in the hope that it will be useful,
35   	    but WITHOUT ANY WARRANTY; without even the implied warranty of
36   	    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
37   	    GNU General Public License for more details.
38   	
39   	    You should have received a copy of the GNU General Public License
40   	    along with this program; if not, write to the Free Software
41   	    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA 
42   	*/
43   	
44   	error_reporting(E_ALL);
45   	//error_reporting(0);
46   	
47   	ini_set('session.save_path', $_SERVER['DOCUMENT_ROOT'] .'/../sessions/');
48   	ini_set('session.gc_maxlifetime', 120960);
49   	ini_set('session.cookie_lifetime', 120960);
50   	session_start();
51   	
52   	header('Content-Type: text/html; charset=utf-8');
53   	
54   	?>
55   	<html>
56   	<head>
57   	<script type="text/javascript" language="javascript" src="/all/sodi_0.js"></script>
58   	<link rel="stylesheet" href="../css.css" type="text/css" media="all" />
59   	<meta name="viewport" content="width=device-width, initial-scale=1">
60   	
61   	</head>
62   	<body>
63   	<?php
64   	
65   	// Получаем текущий регион
66   	$r = $_GET['r'];
67   	
68   	include "geo-data-array.inc";
69   	/*
70   	$townsMin = array(
71   	        "samara"=>"Самара",
72   	        "novokuybyshevsk"=>"Новокуйбышевск",
73   	        "troitsk"=>"Троицк",
74   	        ...
75   	);
76   	*/
77   	
78   	
79   	?>
80   	<!-- Навигация -->
81   	<p>
82   	  <p>
83   	
84   	    <a style="min-width:300px;width:11%;float:left;background-color:#ddd;padding:20px;margin:0" href="regionSelect.php">
85   	        <?=$townsMin[$r] ?>
86   	    </a>
87   	
88   	    <a style="min-width:300px;width:10%;float:right;background-color:#ddd;padding:20px;margin:0" 
89   	       href="relevancy.php?r=<?=$r ?>">
90   	        Все, по релевантности
91   	    </a>
92   	
93   	  </p>
94   	</p>
95   	
96   	<!-- /Навигация -->
97   	
98   	    <br clear=all>
99   	
100  	
101  	<?php
102  	
103  	
104  	
105  	
106  	// Получаем список всех ключевых фраз
107  	
108  	include "cache/qArr.inc";
109  	/*
110  	$qArrCached = array(
111  	        "0"=>"!changan !дилер",
112  	        "1"=>"!cherry !дилер",
113  	        "2"=>"!geely !дилер",
114  	        "3"=>"!haval !дилер",
115  	        "4"=>"!автомобиль !дилер",
116  	        "5"=>"(!lada_|!лада_|!ваз_|!vaz_)",
117  	        "6"=>"((!авто_запчасти)|автозапчасти) {r}",
118  	        "7"=>"((!авто_компоненты)|автокомпоненты) {r}",
119  	        "8"=>"авторемонт (t&c)",
120  	);
121  	*/
122  	
123  	$qArr = $qArrCached;
124  	
125  	/*
126  	echo "<pre>";
127  	print_r($qArr);
128  	echo "</pre>";
129  	*/
130  	
131  	// Включаем массивы, содержащие ключи с годами и месяцами создания сайтов
132  	/*
133  	$domenDateArr = array(
134  	 "yaroslavl"=>array(
135  	    "202407"=>array(
136  	        "epfmasket.ru",
137  	    ),
138  	    "200602"=>array(
139  	        "balrui.ru",
140  	    ),
141  	 ),
142  	 "moscow"=>array(
143  	    "202212"=>array(
144  	        "xn--80aeais9bcfjr.xn--p1ai",
145  	    ),
146  	    "201703"=>array(
147  	        "tastjn.ru",
148  	    ),
149  	    ...
150  	);
151  	*/
152  	
153  	$domTaskDate = array();
154  	
155  	foreach ($qArr as $w) {
156  	    $path = "auto-test/".$w.".inc.date";
157  	    include $path;
158  	    //print_r($domenDateArr[$r]);
159  	    //exit;
160  	    foreach(array_keys($domenDateArr[$r]) as $date) {
161  	        foreach($domenDateArr[$r][$date] as $domen) {
162  	            $domTaskDate[$domen] = $date;
163  	        }
164  	    }
165  	    //$arr[$w]=$domenDateArr[$r];
166  	}
167  	
168  	//print_r($domTaskDate);
169  	
170  	
171  	// Основная выдача
172  	
173  	$total = count($domTaskDate);
174  	
175  	echo "\$total=".$total."<br>\n";
176  	
177  	
178  	$start = $_GET['start'];
179  	
180  	$count = 0;
181  	$sodiCount = 0;
182  	?>
183  	<table border=1>
184  	<tr bgcolor="#ddd"><td>$count</td><td>$coord</td><td>$domen</td></tr>
185  	<?php
186  	foreach($domTaskDate as $domen=>$coord) {
187  	
188  	    // Выясняем, каким ключевым фразам соответствует сайт
189  	    $str = $keyWordsCached[$domen];
190  	    $str = substr($str,0,-1);
191  	    //echo "\$str=".$str."<br>";
192  	    $keyNumsArr = explode(",", $str);
193  	    //print_r($keyNumsArr);
194  	    $keyWordsStr = "";
195  	    $keyWordsStr1 = "";
196  	    foreach($keyNumsArr as $num) {
197  	        $keyWordsStr .= "<span style='background-color:yellow'>".$qArrCached[$num]."</span>&#160;&#160;";
198  	    }
199  	    $keyWordsStr1 = $keyWordsStr;
200  	
201  	    if ($start<$count && ($start+20)>=$count) {
202  	        $sodiCount++;
203  	        echo "<tr><td>".$count."</td><td>".$coord."</td><td>";
204  	        echo "<div style='background-color:white'>".$keyWordsStr1."</div>";
205  	?>
206  	        <span id="status-<?=$sodiCount ?>"></span>
207  	        <div style="margin-left:40px;width:90%;min-height:150px;back1ground-color:#ccc" id="sodi-<?=$sodiCount ?>">
208  	        <script>
209  	            loadSODI<?=$sodiCount ?>("/view-demo.php?q=<?=urlencode($keyWordsStr) ?>&r=<?=$r ?>&ul=<?=$domen ?>&GroupBySite=no&site=news","sodi-<?=$sodiCount?>");
210  	        </script>
211  	<?php
212  	        echo "</td></tr>\n";
213  	    }
214  	
215  	    $count++;
216  	
217  	}
218  	?>
219  	</table>
220  	<?php
221  	
222  	
223  	for ($i=0;$i<(floor($total/20)+1);$i++) {
224  	
225  	    if ($start==($i*20)) {
226  	        echo "<span style='background-color:yellow'>".($i*20)."</span> ";
227  	    } else {
228  	        echo "<a href='?w=".$w."&r=".$r."&start=".($i*20)."'>".($i*20)."</a> ";
229  	    }
230  	
231  	}
232  	
233  	
234