', Line);
// najde si pozici obrazku ceske vlajky
MidPos := Pos('flag_52.gif', Line);
// vykopiruje si cely radek bez prnich 4 znaku
Line := Copy(Line, BeginPos + 4, Length(Line) - (BeginPos + 3));
// urci si konec sloupecku (bunky) tabulky
EndPos := Pos('', Line);
// pokud neni nastavena pozice posledniho znaku - nastavi se
if (EndPos = 0) then
EndPos := Length(Line);
// vykopirovani nazvu (a to jak ceskeho, tak slovenskeho)
// v zavislosti na tom co uzivatel vybral
if (getOption('getSlovakNames') = 1) then
begin
// pokud ma film v popisu nejen cesky nazev - prda jej za cesky
if ((MidPos < BeginPos) and (MidPos > 0)) then
Value := Value + '; ' + Copy(Line, 1, EndPos - 1)
else
Value2 := Value2 + Copy(Line, 1, EndPos - 1) + '; ';
end;
if (getOption('getSlovakNames') = 0) then
begin
// pokud ma film v popisu nejen cesky nazev - prda jej za cesky
if ((MidPos < BeginPos) and (MidPos > 0)) then
else
Value2 := Value2 + Copy(Line, 1, EndPos - 1) + '; ';
end;
end;
until (BeginPos < 1);
if (getOption('theEnd') = 1) then
// jestli na konci nazvu filmu je clen The -> presune se na zacatek nazvu filmu
if (Pos(', The', Value2) > 0) then
begin
Value2 := 'The ' + Copy(Value2, 1, Pos(', The', Value2) + 1);
end;
if (getOption('addCZname') = 1) then
begin
// jestli neni prelozeny nazev, tak jej bez stredniku dpln
// jinak jej dopln se strednikem
if (GetField(fieldTranslatedTitle) = '') then
SetField(fieldTranslatedTitle, Value)
else
SetField(fieldTranslatedTitle, Value + '; ' + GetField(fieldTranslatedTitle));
end
else
SetField(fieldTranslatedTitle, Value);
if (Value2 = '') then
Value2 := Value
else
Value2 := Copy(Value2, 1, length(Value2) - 2);
SetField(fieldOriginalTitle, Value2);
// primitivni kontrola zda je originalni nazev stejny jako prelozeny
// pokud jsou stejne - prelozeny nazev se v zavislosti na nastaveni smaze
if (getOption('allowDuplicateNames') = 0) then
begin
if (getField(fieldOriginalTitle) = getField(fieldTranslatedTitle)) then
begin
SetField(fieldTranslatedTitle, '');
end;
end;
//kategorie
BeginPos := Pos('', Line);
Line := Copy(Line, BeginPos + 3, Length(Line) - (BeginPos - 2));
MidPos := Pos('
', Line);
EndPos := Pos('', Line);
PomPos := Pos('min', Line);
//existuji oba radky - kategorie i stat,rok,delka
if ((MidPos < EndPos) and (MidPos > 0)) then
begin
Value := Trim(Copy(Line, 1, MidPos - 7));
if (getOption('NahraditLomeno') = 1) then
SetField(fieldCategory, StringReplace(Value, ' /',', '))
else
SetField(fieldCategory, Value);
Value := Trim(Copy(Line, MidPos + 4, EndPos - MidPos - 4));
RozdelStat(Value);
end
else
//existuje jen jeden radek
if ((PomPos < EndPos) and (PomPos > 0)) then
begin
Value := Trim(Copy(Line, 1, EndPos - 1));
RozdelStat(Value);
end
else
begin
Value := Trim(Copy(Line, 1, EndPos - 7));
if (getOption('NahraditLomeno') = 1) then
SetField(fieldCategory, StringReplace(Value, ' /',', '))
else
SetField(fieldCategory, Value);
end;
Value := GetDirector(Line);
SetField(fieldDirector, Value);
Value := GetActor(Line);
SetField(fieldActors, Value);
end;
if (getOption('hodnoceni') = 1) then
begin
// hodnoceni by MadMaxx
LineNr := FindLine('padding:10px;text-align:center;font-weight:bold;font-size:36px;color:white;', Page, 0);
Line := Page.GetString(LineNr + 1);
BeginPos := 14;
EndPos := Pos('%', Line);
Value := copy(Line, BeginPos, EndPos);
if ( EndPos <> BeginPos + 1 ) then //(Length(Value) > 1) then
begin
Value2 := copy(Value, 1, 1) + ',' + copy(Value, 2, 1);
end
else
begin
Value2 := '0,' + copy(Value, 1, 1);
end;
SetField(fieldRating, Value2);
end;
// picture
if (getOption('getPicture') = 1) then
begin
LineNr := FindLine('table background="http://img.csfd.cz/posters/', Page, 0);
if (LineNr > -1) then
begin
Line := Page.GetString(LineNr);
BeginPos := pos('table background="http://img.csfd.cz/posters', Line) + 18;
if (BeginPos > 10) then
begin
EndPos := pos('" border="', Line);
Value := copy(Line, BeginPos, EndPos - BeginPos);
GetPicture(Value);
end;
end;
end;
//Info
Line := Page.Text;
LineNr := pos('', Line);
if (LineNr > 0) then begin
Value:=copy(Line,LineNr,pos('
',Line) - LineNr);
HTMLRemoveTags(Value);
HTMLDecode(Value);
SetField(fieldDescription, Value);
end
else begin
SetField(fieldDescription, '');
end;
// URL
SetField(fieldURL, Address);
//DisplayResults;
end;
begin
// kontrola verze movie catalogu
if CheckVersion(3,5,0) then
begin
MovieName := GetField(fieldTranslatedTitle);
// pokud je originalni jmeno filmu prazdne, vem jmeno prelozene
if (MovieName = '') then
MovieName := GetField(fieldOriginalTitle);
if ((getOption('AutoUpdateFromURL') = 1) and (GetField(fieldURL) <> '')) then
MovieName := GetField(fieldURL)
else
if Input('Import movie from www.csfd.cz', 'Zadejte název filmu:', MovieName) = false then
Exit;
// zadani z inputu
if pos('csfd.cz', MovieName) > 0 then
begin
AnalyzeMoviePage(MovieName);
end else begin
// analyzuj stranku http://www.csfd.cz/search_pg.php?search=jmeno_filmu
AnalyzePage(BaseAddress + 'search_pg.php?search=' + UrlEncode(UTF8Encode(MovieName)));
end;
end
else
ShowMessage('This script requires a newer version of Ant Movie Catalog (at least the version 3.5.0)');
end. |