diff --git a/src/Source/Anivisual.php b/src/Source/Anivisual.php index 1e4402a..524fba9 100644 --- a/src/Source/Anivisual.php +++ b/src/Source/Anivisual.php @@ -102,10 +102,14 @@ class Anivisual extends Source { $sidebar_search = trim(mb_substr($sidebar_search, 0, $pos_end)); $sidebar_search = str_replace('Автор:', '', $sidebar_search); $game->author = trim(strip_tags($sidebar_search)); - $matches = []; - preg_match ('/Перевод:<\/b>\s+(.*)<\/a>
/', $sidebar, $matches); - if (count($matches) > 0) { - $game->author .= ', пер. '.strip_tags($matches[1]); + + $pos_start = mb_strpos($sidebar, 'Перевод:'); + $sidebar_search = trim(mb_substr($sidebar, $pos_start)); + $pos_end = mb_strpos($sidebar_search, '
'); + $sidebar_search = trim(mb_substr($sidebar_search, 0, $pos_end)); + $sidebar_search = trim(strip_tags(str_replace('Перевод:', '', $sidebar_search))); + if ($sidebar_search !== '') { + $game->author .= ', пер. '.$sidebar_search; } return $game; } diff --git a/src/Source/Itch.php b/src/Source/Itch.php index cb7a516..75699ff 100644 --- a/src/Source/Itch.php +++ b/src/Source/Itch.php @@ -91,10 +91,8 @@ class Itch extends Source { return; } if ($data->{'@type'} === 'Product') { - if ($this->print_description) { - if (isset($data->description)) { - $game->short_description = $data->description; - } + if (isset($data->description)) { + $game->short_description = $data->description; } if (isset($data->name)) { $game->title = $data->name; diff --git a/tests/AnivisualTest.php b/tests/AnivisualTest.php index 7b53888..3b5de84 100644 --- a/tests/AnivisualTest.php +++ b/tests/AnivisualTest.php @@ -46,9 +46,12 @@ class AnivisualTest extends BaseTest } $this->parser->loadStr($game_page, []); $game = $this->parser->page($url); - $this->assertSame($game->url, $url); - $this->assertSame($game->title, 'Contract Demon'); - $this->assertSame($game->author, 'NomnomNami, пер. Sol Taere'); - $this->assertSame($game->description, 'Ангел, вместо своих ангельских дел, вызывает... демона. Да и демонесса какая-то странная, пытается выглядеть зловеще, но что-то совсем не получается. По крайней мере Ангел её не боится ни капли, а вроде даже наоборот... _______ От переводчика. Как я люблю эту короткометражную няшноту от NomnomNami, просто ужос. Хотел было и дальше переводить её поделки, но узнал, что уже всё переведено. А жаль. Работать с такими штуками - одно удовольствие. Лёгкий и приятный текст, и всего один-два дня работы. Прохождение этой ВН от Тернокса и Химари — р-р-раз, д-д-два'); + $this->assertSame($url, $game->url); + $this->assertSame('Contract Demon', $game->title); + $this->assertSame('NomnomNami, пер. Sol Taere | Project Gardares', $game->author); + $description = <<assertSame($description, $game->description); } } diff --git a/tests/ItchTest.php b/tests/ItchTest.php index 7a53a63..833c008 100644 --- a/tests/ItchTest.php +++ b/tests/ItchTest.php @@ -39,10 +39,10 @@ class ItchTest extends BaseTest $game_page = file_get_contents('./tests/fixtures/itch_test_1.html'); $this->parser->loadStr($game_page, []); $game = $this->parser->page($url); - $this->assertSame($game->url, $url); - $this->assertSame($game->title, 'Spider And Web'); - $this->assertSame($game->author, 'zarf'); - $this->assertSame($game->description, NULL); - $this->assertSame($game->short_description, 'Interactive fiction'); + $this->assertSame($url, $game->url); + $this->assertSame('Spider And Web', $game->title); + $this->assertSame('zarf', $game->author); + $this->assertSame(NULL, $game->description); + $this->assertSame('Interactive fiction', $game->short_description); } } diff --git a/tests/fixtures/anivisual_test_1.html b/tests/fixtures/anivisual_test_1.html index 2e10256..9a34621 100644 --- a/tests/fixtures/anivisual_test_1.html +++ b/tests/fixtures/anivisual_test_1.html @@ -1,13 +1,11 @@ - + -Скачать Contract Demon для Windows — Anivisual.net — Визуальные новеллы +Скачать Contract Demon для Windows, Mac, Android — Anivisual.net — Визуальные новеллы @@ -31,84 +29,53 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + @@ -203,8 +170,8 @@ width: 100%; - - + + @@ -240,9 +207,9 @@ width: 100%;
  • Блоги
  • Форум
  • +
  • Паблик VK
  • +
  • Наш твиттер
  • +
  • Наш Discord-канал
  • Визуальные новеллы
    • Новые
    • Лучшие (по рейтингу)
    • @@ -337,19 +304,7 @@ Contract Demon
      -
      - - - - -
      +
        @@ -543,9 +498,6 @@ Contract Demon - - -
        @@ -568,12 +520,12 @@ Contract Demon Год релиза: 2019
        Тип: Кинетическая (без выборов)
        -Платформа: Windows
        +Платформа: Windows, Mac, Android
        Продолжительность: Менее 2 часов
        Жанры: Комедия, Романтика, Фантастика
        Автор: NomnomNami
        - Перевод: Sol Taere
        + Перевод: Sol Taere | Project Gardares
        Язык: Русский
        Теги: Иностранный разработчик, Главный герой девушка, Демоны, демонопицца, Повествование от первого лица, уняня, демонофон, сёдзё-ай, Ангелы, Олог
        @@ -609,21 +561,21 @@ Contract Demon Почему так произошло?
        - -
        + + @@ -634,28 +586,10 @@ sendFrm549655 = function() {
        -
        -
        - -
        - +
        @@ -694,18 +628,25 @@ sendFrm549655 = function() { - + + style="display:block" + data-ad-client="ca-pub-8574202130248019" + data-ad-slot="1621632615" + data-ad-format="auto" + data-full-width-responsive="true"> +
        +

        Новое в блоге:

        + + @@ -826,8 +767,8 @@ data-fit="cover" -
        -
        +
        +
        @@ -896,7 +837,22 @@ $(window).load(function() { type: 'GET', url: '/php/ubookmarks/index.php', data: {"type":"count", "addr": "/stuff/3-1-0-1889", "mid": "sfEnt1889", category: category}, - success: function(response){$('.favorite_user[data-category='+category.toString()+']').html(response);} + success: function(response){$('.favorite_user[data-category='+category.toString()+']').html(response);bindX()} + }); + + + + } + + function bindX(){ + + $('.favorite_user .favorite_list').each(function(){$(this).attr("href","javascript://")}); + $('.favorite_user .favorite_list').click(function(){ + var category = $(this).data('category'); + new _uWnd('userava_online'+category, 'Список пользователей', 200, 200,{close: 1,autosize: 0,resize: 0,shadow: 0, + oncontent: function(){$.get('/php/ubookmarks/index.php?type=userlist&mid=sfEnt1889&category='+category.toString(), function(data){$('#favorite_userlist').html(data);});} + }, '
        ' + ); }); } @@ -907,14 +863,16 @@ $(window).load(function() { url: '/php/ubookmarks/index.php', data: {"type": "add", "addr": "/stuff/3-1-0-1889", "mid": "sfEnt1889", category: category}, success: function(otvet){load_count(category); - if(otvet==1){$('.favorite_otvet [data-category='+category+']').html('
        Добавлено в избранное
        ');} - if(otvet==2){$('.favorite_otvet [data-category='+category+']').html('
        Уже есть в избранном!
        ');} - if(otvet==3){$('.favorite_otvet [data-category='+category+']').html('
        Память для избранного переполнена!
        ');} - if(otvet!=1 & otvet!=2 & otvet!=3){$('.favorite_otvet [data-category='+category+']').html('
        Ошибка
        ');} + otvet=parseFloat(otvet); + console.log(otvet); + if(otvet==1){$('.favorite_otvet[data-category='+category+']').html('
        Добавлено в избранное
        ');} + if(otvet==2){$('.favorite_otvet[data-category='+category+']').html('
        Уже есть в избранном!
        ');} + if(otvet==3){$('.favorite_otvet[data-category='+category+']').html('
        Память для избранного переполнена!
        ');} + if(otvet!=1 & otvet!=2 & otvet!=3){$('.favorite_otvet[data-category='+category+']').html('
        Ошибка
        ');} } }); }); - $('.favorite_otvet input').live('click', function(){ + $('.favorite_otvet input').bind('click', function(){ var category = $(this).data('category'); var mid = $(this).attr('id'); $.ajax({ @@ -924,12 +882,13 @@ $(window).load(function() { success: function(otvet){if(otvet==1){load_count();$('.favorite_otvet').html('
        Удалено!
        ');}} }); }); - $('.favorite_list').live('click', function(){ + + $('.favorite_list').click(function(){ var category = $(this).data('category'); new _uWnd('userava_online'+category, 'В закладках', 200, 200,{close: 1,autosize: 0,resize: 0,shadow: 0, oncontent: function(){$.get('/php/ubookmarks/index.php?type=userlist&mid=sfEnt1889&category='+category.toString(), function(data){$('#favorite_userlist').html(data);});} }, - '' +'
        ' ); }); load_count(0); @@ -995,13 +954,12 @@ $(window).load(function() { -Ангел, вместо своих ангельских дел, вызывает... демона. Да и демонесса какая-то странная, пытается выглядеть зловеще, но что-то совсем не получается. По крайней мере Ангел её не боится ни капли, а вроде даже наоборот...

        _______
        От переводчика.
        Как я люблю эту короткометражную няшноту от NomnomNami, просто ужос.
        Хотел было и дальше переводить её поделки, но узнал, что уже всё переведено. А жаль.
        Работать с такими штуками - одно удовольствие. Лёгкий и приятный текст, и всего один-два дня работы.


        Прохождение этой ВН от Тернокса и Химари — р-р-раз, д-д-два

        Доп. ссылки:
        Доступно только для пользователей +Ангел, вместо своих ангельских дел, вызывает... демона. Да и демонесса какая-то странная, пытается выглядеть зловеще, но что-то совсем не получается. По крайней мере Ангел её не боится ни капли, а вроде даже наоборот...

        _______
        От переводчика.
        Как я люблю эту короткометражную няшноту от NomnomNami, просто ужос.
        Хотел было и дальше переводить её поделки, но узнал, что уже всё переведено. А жаль.
        Работать с такими штуками - одно удовольствие. Лёгкий и приятный текст, и всего один-джва джня работы.


        Прохождение этой ВН от Тернокса и Химари — р-р-раз, д-д-два

        Доп. ссылки:
        Доступно только для пользователей

        В новелле есть возможность переключения между английской версией и двумя версиями перевода Sol Taere и Project Gardares.
        -
        - - +
        +
        -
        + @@ -1063,10 +1020,10 @@ function ustarrating(id, mark) { _uPostForm('', {type:'POST', url:'/stuff/', data:{'a':'65','id':id,'mark':mark,'mod':'stuff','ajax':'2'}}); } } -
          -
        +
          +
        16 Апреля 2019 - 4375 + 12464 ice_cat @@ -1076,7 +1033,7 @@ function ustarrating(id, mark) { -82 % +86 % @@ -1106,7 +1063,7 @@ function ustarrating(id, mark) { Отредактировано: - +
        +
        - - - + + \ No newline at end of file