source: trunk/Modules/Meet/Import/MgDance.php

Last change on this file was 64, checked in by chronos, 3 years ago
  • Added: MG Dance import.
File size: 2.3 KB
Line 
1<?php
2
3class MeetSourceMgDance extends MeetSource
4{
5 function Import(): string
6 {
7 $Output = parent::Import();
8 $this->AddCompareTime = false;
9 $this->AddCompareRemoteId = true;
10 $Content = file_get_contents($this->URL);
11
12 $BlockStart = '<form method="post" action="https://www.mgdance.cz/tanecni-seznamka/prochazeni-kategorie/">';
13 $BlockEnd = '<table>';
14 $Content = GetTextBetween($Content, $BlockStart, $BlockEnd);
15 if ($Content == '')
16 {
17 $Output .= 'Main block not isolated.</br>';
18 return $Output;
19 }
20
21 $ItemStart = '<div class="displayaditem';
22 $ItemEnd = '<div class="fixfloat"></div></div><div class="fixfloat">';
23 while (strpos($Content, $ItemStart) !== false)
24 {
25 $Item = GetTextBetween($Content, $ItemStart, $ItemEnd);
26 $MeetItem = new MeetItem();
27
28 $MeetItem->Link = trim(GetTextBetween($Item, '<h4><a href="', '"'));
29 $MeetItem->Title = trim(GetTextBetween($Item, '>', '</a>'));
30 $MeetItem->Message = trim(GetTextBetween($Item, '</h4>', '</div>'));
31 $MeetItem->Location = trim(GetTextBetween($Item, '>Město: ', '<br/>'));
32 $MeetItem->Time = time();
33 $MeetItem->Database = $this->Database;
34 $MeetItem->Source = $this->Id;
35 $Output .= $this->ImportItem($MeetItem);
36 $this->MeetItems[] = $MeetItem;
37 }
38 return $Output;
39 }
40
41 function ImportItem(MeetItem &$MeetItem): string
42 {
43 $Output = '';
44 $Content = file_get_contents($MeetItem->Link);
45
46 $BlockStart = '<div id="showawpcpadpage">';
47 $BlockEnd = 'Odpovědět na inzerát</a>';
48 $Content = GetTextBetween($Content, $BlockStart, $BlockEnd);
49 if ($Content == '')
50 {
51 $Output .= 'Main block not isolated.</br>';
52 return $Output;
53 }
54
55 $MeetItem->Title = trim(GetTextBetween($Content, '<div class="awpcp-title">', '</div>'));
56 $MeetItem->Name = trim(GetTextBetween($Content, '<br/>Jméno:', '<br/>'));
57 $MeetItem->Gender = GetGenderFromName($MeetItem->Name);
58 $MeetItem->Location = trim(GetTextBetween($Content, 'Město: ', '</div>'));
59 $MeetItem->Message = trim(GetTextBetween($Content, '</p>', '<p>'));
60 $MeetItem->Age = GetAgeFromText($MeetItem->Message);
61 $MeetItem->Height = GetHeightFromText($MeetItem->Message);
62 $MeetItem->Weight = GetWeightFromText($MeetItem->Message);
63 $MeetItem->Email = GetEmailFromText($MeetItem->Message);
64
65 return $Output;
66 }
67}
Note: See TracBrowser for help on using the repository browser.