Remove padding of imdbid as column is now varchar and stores imdbid properly

This commit is contained in:
DariusIII
2019-04-06 11:19:05 +02:00
parent b8a902af58
commit d5be3b2e45
11 changed files with 53 additions and 52 deletions
+17 -17
View File
@@ -212,7 +212,7 @@ class Movie
*/
public function getMovieInfo($imdbId)
{
return MovieInfo::query()->where('imdbid', str_pad($imdbId, 8, '0', STR_PAD_LEFT))->first();
return MovieInfo::query()->where('imdbid', $imdbId)->first();
}
/**
@@ -596,16 +596,16 @@ class Movie
}
// Check TMDB for IMDB info.
$tmdb = $this->fetchTMDBProperties(str_pad($imdbId, 8, '0', STR_PAD_LEFT));
$tmdb = $this->fetchTMDBProperties($imdbId);
// Check IMDB for movie info.
$imdb = $this->fetchIMDBProperties(str_pad($imdbId, 8, '0', STR_PAD_LEFT));
$imdb = $this->fetchIMDBProperties($imdbId);
// Check TRAKT for movie info
$trakt = $this->fetchTraktTVProperties(str_pad($imdbId, 8, '0', STR_PAD_LEFT));
$trakt = $this->fetchTraktTVProperties($imdbId);
// Check OMDb for movie info
$omdb = $this->fetchOmdbAPIProperties(str_pad($imdbId, 8, '0', STR_PAD_LEFT));
$omdb = $this->fetchOmdbAPIProperties($imdbId);
// Check iTunes for movie info as last resort (iTunes do not provide all the info we need)
@@ -616,40 +616,40 @@ class Movie
}
// Check FanArt.tv for cover and background images.
$fanart = $this->fetchFanartTVProperties(str_pad($imdbId, 8, '0', STR_PAD_LEFT));
$fanart = $this->fetchFanartTVProperties($imdbId);
$mov = [];
$mov['cover'] = $mov['backdrop'] = $mov['banner'] = 0;
$mov['type'] = $mov['director'] = $mov['actors'] = $mov['language'] = '';
$mov['imdbid'] = str_pad($imdbId, 8, '0', STR_PAD_LEFT);
$mov['imdbid'] = $imdbId;
$mov['tmdbid'] = (! isset($tmdb['tmdbid']) || $tmdb['tmdbid'] === '') ? 0 : $tmdb['tmdbid'];
$mov['traktid'] = (! isset($trakt['id']) || $trakt['id'] === '') ? 0 : $trakt['id'];
// Prefer Fanart.tv cover over TMDB,TMDB over IMDB,IMDB over OMDB and OMDB over iTunes.
if (! empty($fanart['cover'])) {
$mov['cover'] = $this->releaseImage->saveImage(str_pad($imdbId, 8, '0', STR_PAD_LEFT).'-cover', $fanart['cover'], $this->imgSavePath);
$mov['cover'] = $this->releaseImage->saveImage($imdbId.'-cover', $fanart['cover'], $this->imgSavePath);
} elseif (! empty($tmdb['cover'])) {
$mov['cover'] = $this->releaseImage->saveImage(str_pad($imdbId, 8, '0', STR_PAD_LEFT).'-cover', $tmdb['cover'], $this->imgSavePath);
$mov['cover'] = $this->releaseImage->saveImage($imdbId.'-cover', $tmdb['cover'], $this->imgSavePath);
} elseif (! empty($imdb['cover'])) {
$mov['cover'] = $this->releaseImage->saveImage(str_pad($imdbId, 8, '0', STR_PAD_LEFT).'-cover', $imdb['cover'], $this->imgSavePath);
$mov['cover'] = $this->releaseImage->saveImage($imdbId.'-cover', $imdb['cover'], $this->imgSavePath);
} elseif (! empty($omdb['cover'])) {
$mov['cover'] = $this->releaseImage->saveImage(str_pad($imdbId, 8, '0', STR_PAD_LEFT).'-cover', $omdb['cover'], $this->imgSavePath);
$mov['cover'] = $this->releaseImage->saveImage($imdbId.'-cover', $omdb['cover'], $this->imgSavePath);
} elseif (! empty($iTunes['cover'])) {
$mov['cover'] = $this->releaseImage->saveImage(str_pad($imdbId, 8, '0', STR_PAD_LEFT).'-cover', $iTunes['cover'], $this->imgSavePath);
$mov['cover'] = $this->releaseImage->saveImage($imdbId.'-cover', $iTunes['cover'], $this->imgSavePath);
}
// Backdrops.
if (! empty($fanart['backdrop'])) {
$mov['backdrop'] = $this->releaseImage->saveImage(str_pad($imdbId, 8, '0', STR_PAD_LEFT).'-backdrop', $fanart['backdrop'], $this->imgSavePath, 1920, 1024);
$mov['backdrop'] = $this->releaseImage->saveImage($imdbId.'-backdrop', $fanart['backdrop'], $this->imgSavePath, 1920, 1024);
} elseif (! empty($tmdb['backdrop'])) {
$mov['backdrop'] = $this->releaseImage->saveImage(str_pad($imdbId, 8, '0', STR_PAD_LEFT).'-backdrop', $tmdb['backdrop'], $this->imgSavePath, 1920, 1024);
$mov['backdrop'] = $this->releaseImage->saveImage($imdbId.'-backdrop', $tmdb['backdrop'], $this->imgSavePath, 1920, 1024);
}
// Banner
if (! empty($fanart['banner'])) {
$mov['banner'] = $this->releaseImage->saveImage(str_pad($imdbId, 8, '0', STR_PAD_LEFT).'-banner', $fanart['banner'], $this->imgSavePath);
$mov['banner'] = $this->releaseImage->saveImage($imdbId.'-banner', $fanart['banner'], $this->imgSavePath);
}
// RottenTomatoes rating from OmdbAPI
@@ -1100,7 +1100,7 @@ class Movie
$movieInfoId = MovieInfo::query()->where('imdbid', $imdbID)->first(['id']);
Release::query()->where('id', $id)->update(['imdbid' => str_pad($imdbID, 8, '0', STR_PAD_LEFT), 'movieinfo_id' => $movieInfoId !== null ? $movieInfoId['id'] : null]);
Release::query()->where('id', $id)->update(['imdbid' =>$imdbID, 'movieinfo_id' => $movieInfoId !== null ? $movieInfoId['id'] : null]);
// If set, scan for imdb info.
if ($processImdb === 1) {
@@ -1112,7 +1112,7 @@ class Movie
} elseif ($info === true) {
$movieInfoId = MovieInfo::query()->where('imdbid', $imdbID)->first(['id']);
Release::query()->where('id', $id)->update(['imdbid' => str_pad($imdbID, 8, '0', STR_PAD_LEFT), 'movieinfo_id' => $movieInfoId !== null ? $movieInfoId['id'] : null]);
Release::query()->where('id', $id)->update(['imdbid' =>$imdbID, 'movieinfo_id' => $movieInfoId !== null ? $movieInfoId['id'] : null]);
}
}
}
+1 -1
View File
@@ -1164,7 +1164,7 @@ class Releases extends Release
$this->showPasswords(),
(! empty($searchResult) ? 'AND r.id IN ('.implode(',', $searchResult).')' : ''),
! empty($tags) ? " AND tt.tag_name IN ('".implode("','", $tags)."')" : '',
($imDbId !== -1 && is_numeric($imDbId)) ? sprintf(' AND m.imdbid = %d ', str_pad($imDbId, 8, '0', STR_PAD_LEFT)) : '',
($imDbId !== -1 && is_numeric($imDbId)) ? sprintf(' AND m.imdbid = %d ', $imDbId) : '',
($tmDbId !== -1 && is_numeric($tmDbId)) ? sprintf(' AND m.tmdbid = %d ', $tmDbId) : '',
($traktId !== -1 && is_numeric($traktId)) ? sprintf(' AND m.traktid = %d ', $traktId) : '',
! empty($excludedCategories) ? sprintf('AND r.categories_id NOT IN('.implode(',', $excludedCategories).')') : '',
+1 -1
View File
@@ -479,7 +479,7 @@ class XML_Response
$this->writeZedAttr('tvmazeid', $this->release->tvmaze);
}
if (isset($this->release->imdb) && $this->release->imdb > 0) {
$this->writeZedAttr('imdbid', str_pad($this->release->imdb, 8, '0', STR_PAD_LEFT));
$this->writeZedAttr('imdbid', $this->release->imdb);
}
if (isset($this->release->tmdb) && $this->release->tmdb > 0) {
$this->writeZedAttr('tmdbid', $this->release->tmdb);
+1
View File
@@ -1,4 +1,5 @@
2019-04-06 DariusIII
* Chg: Remove padding of imdbid as column is now varchar and stores imdbid properly
* Chg: Use our own is_it_json function
2019-04-05 DariusIII
* Fix: Update Forking class, fix releases check query
+1 -1
View File
@@ -27,7 +27,7 @@ $count = $sql->count();
echo 'Copying '.$count.' imdbid values'.PHP_EOL;
foreach ($sql as $movie) {
DB::table('movie_temp')->insert(['releases_id' => $movie['id'], 'imdbid' => str_pad($movie['imdbid'], 8, '0', STR_PAD_LEFT)]);
DB::table('movie_temp')->insert(['releases_id' => $movie['id'], 'imdbid' => $movie['imdbid']]);
echo '.';
}
+2 -2
View File
@@ -17,9 +17,9 @@ if ($count > 0) {
$colorCli->primary('Updating '.number_format($count).' movies for TraktTV id.');
foreach ($movies as $mov) {
$traktTv = new TraktTv(['Settings' => null]);
$traktmovie = $traktTv->client->movieSummary('tt'.str_pad($mov['imdbid'], 7, '0', STR_PAD_LEFT), 'full');
$traktmovie = $traktTv->client->movieSummary('tt'.$mov['imdbid'], 'full');
if ($traktmovie !== false) {
$colorCli->info('Updating IMDb id: tt'.str_pad($mov['imdbid'], 7, '0', STR_PAD_LEFT));
$colorCli->info('Updating IMDb id: tt'.$mov['imdbid']);
$trakt = $movie->parseTraktTv($traktmovie);
if ($trakt === true) {
$colorCli->info('Added traktid: '.$traktmovie['ids']['trakt']);
+18 -18
View File
@@ -92,21 +92,21 @@
{assign var="mhaspreview" value=","|explode:$result->grp_haspreview}
{foreach $msplits as $m}
{if $m@first}
<a href="{$smarty.const.WWW_TOP}/Movies?imdb={str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}"><img
<a href="{$smarty.const.WWW_TOP}/Movies?imdb={$result->imdbid}"><img
class="cover shadow img-fluid rounded"
src="{if isset($result->cover) && $result->cover == 1}{$smarty.const.WWW_TOP}/covers/movies/{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}-cover.jpg{else}{$smarty.const.WWW_ASSETS}/images/no-cover.png{/if}"
src="{if isset($result->cover) && $result->cover == 1}{$smarty.const.WWW_TOP}/covers/movies/{$result->imdbid}-cover.jpg{else}{$smarty.const.WWW_ASSETS}/images/no-cover.png{/if}"
width="140" border="0"
alt="{$result->title|escape:"htmlall"}"/> {if !empty($mfailed[$m@index])}
<i class="fa fa-exclamation-circle" style="color: red"
title="This release has failed for some users"></i>
{/if}</a>
<a target="_blank"
href="{$site->dereferrer_link}http://www.imdb.com/title/tt{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}/"
name="imdb{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}" title="View IMDB page"
href="{$site->dereferrer_link}http://www.imdb.com/title/tt{$result->imdbid}/"
name="imdb{$result->imdbid}" title="View IMDB page"
class="badge badge-info" rel="imdb">IMDB</a>
<a target="_blank"
href="{$site->dereferrer_link}http://trakt.tv/search/imdb/tt{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}/"
name="trakt{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}" title="View Trakt page"
href="{$site->dereferrer_link}http://trakt.tv/search/imdb/tt{$result->imdbid}/"
name="trakt{$result->imdbid}" title="View Trakt page"
class="badge badge-info" rel="trakt">TRAKT</a>
{if (!empty($result->tmdbid))}
<a class="badge badge-info" rel="tmdb" target="_blank"
@@ -120,11 +120,11 @@
<a class="badge badge-info"
href="{$smarty.const.WWW_TOP}/browse/group?g={$mgrp[$m@index]}"
title="Browse releases in {$mgrp[$m@index]|replace:"alt.binaries":"a.b"}">Group</a>
<a class="badge badge-info" href="{$smarty.const.WWW_TOP}/mymovies?id=add&imdb={str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}&from={$smarty.server.REQUEST_URI|escape:"url"}" rel="add" name="movies{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}" title="Add to My Movies">Add</a>
<a class="badge badge-info" href="{$smarty.const.WWW_TOP}/mymovies?id=add&imdb={$result->imdbid}&from={$smarty.server.REQUEST_URI|escape:"url"}" rel="add" name="movies{$result->imdbid}" title="Add to My Movies">Add</a>
</div>
<div class="col-md-9 small-gutter-left table-responsive">
<span class="release-title"><a class="text-muted"
href="{$smarty.const.WWW_TOP}/Movies?imdb={str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}">{$result->title|escape:"htmlall"}</a></span>
href="{$smarty.const.WWW_TOP}/Movies?imdb={$result->imdbid}">{$result->title|escape:"htmlall"}</a></span>
<div class="release-subtitle">{if $result->genre != ''}
<b>Genre: </b>
{$result->genre}, {/if}</div>
@@ -183,7 +183,7 @@
{/if}
{if !empty($cpurl) && !empty($cpapi)}
<span
id="imdb{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}"
id="imdb{$result->imdbid}"
href="javascript:;"
class="btn btn-hover btn-light btn-xs sendtocouch text-muted"
data-toggle="tooltip" data-placement="top"
@@ -237,21 +237,21 @@
{assign var="mhaspreview" value=","|explode:$result->grp_haspreview}
{foreach $msplits as $m}
{if $m@first}
<a href="{$smarty.const.WWW_TOP}/Movies?imdb={str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}"><img
<a href="{$smarty.const.WWW_TOP}/Movies?imdb={$result->imdbid}"><img
class="cover shadow img-fluid rounded"
src="{if isset($result->cover) && $result->cover == 1}{$smarty.const.WWW_TOP}/covers/movies/{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}-cover.jpg{else}{$smarty.const.WWW_ASSETS}/images/no-cover.png{/if}"
src="{if isset($result->cover) && $result->cover == 1}{$smarty.const.WWW_TOP}/covers/movies/{$result->imdbid}-cover.jpg{else}{$smarty.const.WWW_ASSETS}/images/no-cover.png{/if}"
width="140" border="0"
alt="{$result->title|escape:"htmlall"}"/> {if !empty($mfailed[$m@index])}
<i class="fa fa-exclamation-circle" style="color: red"
title="This release has failed to download for some users"></i>
{/if}</a>
<a target="_blank"
href="{$site->dereferrer_link}http://www.imdb.com/title/tt{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}/"
name="imdb{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}" title="View IMDB page"
href="{$site->dereferrer_link}http://www.imdb.com/title/tt{$result->imdbid}/"
name="imdb{$result->imdbid}" title="View IMDB page"
class="badge badge-info" rel="imdb">IMDB</a>
<a target="_blank"
href="{$site->dereferrer_link}http://trakt.tv/search/imdb/tt{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}/"
name="trakt{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}" title="View Trakt page"
href="{$site->dereferrer_link}http://trakt.tv/search/imdb/tt{$result->imdbid}/"
name="trakt{$result->imdbid}" title="View Trakt page"
class="badge badge-info" rel="trakt">TRAKT</a>
{if (!empty($result->tmdbid))}
<a class="badge badge-info" rel="tmdb" target="_blank"
@@ -265,11 +265,11 @@
<a class="badge badge-info"
href="{$smarty.const.WWW_TOP}/browse/group?g={$mgrp[$m@index]}"
title="Browse releases in {$mgrp[$m@index]|replace:"alt.binaries":"a.b"}">Group</a>
<a class="badge badge-info" href="{$smarty.const.WWW_TOP}/mymovies?id=add&imdb={str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}&from={$smarty.server.REQUEST_URI|escape:"url"}" rel="add" name="movies{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}" title="Add to My Movies">Add</a>
<a class="badge badge-info" href="{$smarty.const.WWW_TOP}/mymovies?id=add&imdb={$result->imdbid}&from={$smarty.server.REQUEST_URI|escape:"url"}" rel="add" name="movies{$result->imdbid}" title="Add to My Movies">Add</a>
</div>
<div class="col-md-9 small-gutter-left table-responsive">
<span class="release-title"><a class="text-muted"
href="{$smarty.const.WWW_TOP}/Movies?imdb={str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}">{$result->title|escape:"htmlall"}</a></span>
href="{$smarty.const.WWW_TOP}/Movies?imdb={$result->imdbid}">{$result->title|escape:"htmlall"}</a></span>
<div class="release-subtitle">{if $result->genre != ''}
<b>Genre: </b>
{$result->genre}, {/if}</div>
@@ -328,7 +328,7 @@
{/if}
{if !empty($cpurl) && !empty($cpapi)}
<span
id="imdb{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}"
id="imdb{$result->imdbid}"
href="javascript:;"
class="btn btn-hover btn-light btn-xs sendtocouch text-muted"
data-toggle="tooltip" data-placement="top"
+1 -1
View File
@@ -260,7 +260,7 @@
class="modal_nfo badge badge-info" rel="nfo">Nfo</a>
{/if}
{if $result->imdbid > 0}
<a href="#" name="name{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}" title="View movie info"
<a href="#" name="name{$result->imdbid}" title="View movie info"
class="modal_imdb badge badge-info" rel="movie">Cover</a>
{/if}
{if $result->haspreview == 1 && $userdata->can('preview') == true}
@@ -16,7 +16,7 @@
{if $result->cover == 1}
<img class="float-right" style="margin-right:50px; max-height:278px;"
alt="{$result->title|escape:"htmlall"} Logo"
src="{$smarty.const.WWW_TOP}/covers/movies/{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}-cover.jpg"/>
src="{$smarty.const.WWW_TOP}/covers/movies/{$result->imdbid}-cover.jpg"/>
{else}
<img class="float-right" style="margin-right:50px; max-height:278px;"
alt="{$result->title|escape:"htmlall"} Logo"
@@ -24,11 +24,11 @@
{/if}
<span class="h1" style="display:inline;">{$result->title|escape:"htmlall"} ({$result->year})</span>
<a class="btn btn-transparent btn-success" target="_blank"
href="{$site->dereferrer_link}http://www.imdb.com/title/tt{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}/"
name="imdb{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}" title="View IMDB page">IMDB</a>
href="{$site->dereferrer_link}http://www.imdb.com/title/tt{$result->imdbid}/"
name="imdb{$result->imdbid}" title="View IMDB page">IMDB</a>
<a class="btn btn-transparent btn-success" target="_blank"
href="{$site->dereferrer_link}http://trakt.tv/search/imdb/tt{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}/"
name="trakt{str_pad($result->imdbid, 8, '0', STR_PAD_LEFT)}" title="View Trakt page" rel="trakt">TRAKT</a>
href="{$site->dereferrer_link}http://trakt.tv/search/imdb/tt{$result->imdbid}/"
name="trakt{$result->imdbid}" title="View Trakt page" rel="trakt">TRAKT</a>
{if (!empty($result->tmdbid))}
<a class="btn btn-transparent btn-success" target="_blank"
href="{$site->dereferrer_link}http://www.themoviedb.org/movie/{$result->tmdbid}"
+2 -2
View File
@@ -176,7 +176,7 @@
<div class="row small-gutter-left">
<div class="col-md-3 small-gutter-left">
{if $movie && $release.videos_id <= 0 && $movie.cover == 1}
<img src="{$smarty.const.WWW_TOP}/covers/movies/{str_pad($movie.imdbid, 8, '0', STR_PAD_LEFT)}-cover.jpg"
<img src="{$smarty.const.WWW_TOP}/covers/movies/{$movie.imdbid}-cover.jpg"
width="185"
alt="{$movie.title|escape:"htmlall"}"
data-toggle="modal"
@@ -880,7 +880,7 @@
</div>
<div class="modal-body">
{if $movie && $release.videos_id <= 0 && $movie.cover == 1}
<img src="{$smarty.const.WWW_TOP}/covers/movies/{str_pad($movie.imdbid, 8, '0', STR_PAD_LEFT)}-cover.jpg"
<img src="{$smarty.const.WWW_TOP}/covers/movies/{$movie.imdbid}-cover.jpg"
alt="{$movie.title|escape:"htmlall"}">
{/if}
{if $show && $release.videos_id > 0 && $show.image != "0"}
+4 -4
View File
@@ -15,18 +15,18 @@
</tr>
{foreach $movielist as $movie}
<tr class="{cycle values=",alt"}">
<td class="less"><a href="http://www.imdb.com/title/tt{str_pad($movie->imdbid, 8, '0', STR_PAD_LEFT)}"
title="View in IMDB">{str_pad($movie->imdbid, 8, '0', STR_PAD_LEFT)}</a></td>
<td class="less"><a href="http://www.imdb.com/title/tt{$movie->imdbid}"
title="View in IMDB">{$movie->imdbid}</a></td>
<td class="less"><a href="http://www.themoviedb.org/movie/{$movie->tmdbid}"
title="View in TMDb">{$movie->tmdbid}</a></td>
<td><a title="Edit"
href="{$smarty.const.WWW_TOP}/admin/movie-edit?id={str_pad($movie->imdbid, 8, '0', STR_PAD_LEFT)}">{$movie->title}
href="{$smarty.const.WWW_TOP}/admin/movie-edit?id={$movie->imdbid}">{$movie->title}
({$movie->year})</a></td>
<td class="less">{$movie->cover}</td>
<td class="less">{$movie->backdrop}</td>
<td class="less">{$movie->created_at|date_format}</td>
<td class="less"><a title="Update"
href="{$smarty.const.WWW_TOP}/admin/movie-add?id={str_pad($movie->imdbid, 8, '0', STR_PAD_LEFT)}&amp;update=1">Update</a>
href="{$smarty.const.WWW_TOP}/admin/movie-add?id={$movie->imdbid}&amp;update=1">Update</a>
</td>
</tr>
{/foreach}