<?php

class MeetSourceMgDance extends MeetSource
{
  function Import(): string
  {
    $Output = parent::Import();
    $this->AddCompareTime = false;
    $this->AddCompareRemoteId = true;
    $Content = file_get_contents($this->URL);

    $BlockStart = '<form method="post" action="https://www.mgdance.cz/tanecni-seznamka/prochazeni-kategorie/">';
    $BlockEnd = '<table>';
    $Content = GetTextBetween($Content, $BlockStart, $BlockEnd);
    if ($Content == '')
    {
      $Output .= 'Main block not isolated.</br>';
      return $Output;
    }

    $ItemStart = '<div class="displayaditem';
    $ItemEnd = '<div class="fixfloat"></div></div><div class="fixfloat">';
    while (strpos($Content, $ItemStart) !== false)
    {
      $Item = GetTextBetween($Content, $ItemStart, $ItemEnd);
      $MeetItem = new MeetItem();

      $MeetItem->Link = trim(GetTextBetween($Item, '<h4><a href="', '"'));
      $MeetItem->Title = trim(GetTextBetween($Item, '>', '</a>'));
      $MeetItem->Message = trim(GetTextBetween($Item, '</h4>', '</div>'));
      $MeetItem->Location = trim(GetTextBetween($Item, '>Město: ', '<br/>'));
      $MeetItem->Time = time();
      $MeetItem->Database = $this->Database;
      $MeetItem->Source = $this->Id;
      $Output .= $this->ImportItem($MeetItem);
      $this->MeetItems[] = $MeetItem;
    }
    return $Output;
  }

  function ImportItem(MeetItem &$MeetItem): string
  {
    $Output = '';
    $Content = file_get_contents($MeetItem->Link);

    $BlockStart = '<div id="showawpcpadpage">';
    $BlockEnd = 'Odpovědět na inzerát</a>';
    $Content = GetTextBetween($Content, $BlockStart, $BlockEnd);
    if ($Content == '')
    {
      $Output .= 'Main block not isolated.</br>';
      return $Output;
    }
    
    $MeetItem->Title = trim(GetTextBetween($Content, '<div class="awpcp-title">', '</div>'));
    $MeetItem->Name = trim(GetTextBetween($Content, '<br/>Jméno:', '<br/>'));
    $MeetItem->Gender = GetGenderFromName($MeetItem->Name);
    $MeetItem->Location = trim(GetTextBetween($Content, 'Město: ', '</div>'));
    $MeetItem->Message = trim(GetTextBetween($Content, '</p>', '<p>'));
    $MeetItem->Age = GetAgeFromText($MeetItem->Message);
    $MeetItem->Height = GetHeightFromText($MeetItem->Message);
    $MeetItem->Weight = GetWeightFromText($MeetItem->Message);
    $MeetItem->Email = GetEmailFromText($MeetItem->Message);

    return $Output;
  }
}
