Skip to content

Commit 6a6b2fa

Browse files
Merge pull request #45 from Kovah/issue-44
Adds new $playtimeTwoWeeksReadable value for Games and Items
2 parents e67a4f7 + 5a91e50 commit 6a6b2fa

File tree

5 files changed

+31
-16
lines changed

5 files changed

+31
-16
lines changed

examples/player/GetOwnedGames.txt

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ Syntax\SteamApi\Collection Object
66
(
77
[appId] => 251570
88
[name] => 7 Days to Die
9-
[playtimeTwoWeeks] => 0 minutes
9+
[playtimeTwoWeeks] => 0
10+
[playtimeTwoWeeksReadable] => 0 minutes
1011
[playtimeForever] => 12
1112
[playtimeForeverReadable] => 12 minutes
1213
[icon] => http://media.steampowered.com/steamcommunity/public/images/apps/251570/c8f826b116770525b68e7b4e37ad83ca044ae760.jpg
@@ -19,7 +20,8 @@ Syntax\SteamApi\Collection Object
1920
(
2021
[appId] => 22650
2122
[name] => Alien Breed 2: Assault
22-
[playtimeTwoWeeks] => 0 minutes
23+
[playtimeTwoWeeks] => 0
24+
[playtimeTwoWeeksReadable] => 0 minutes
2325
[playtimeForever] => 0
2426
[playtimeForeverReadable] => 0 minutes
2527
[icon] => http://media.steampowered.com/steamcommunity/public/images/apps/22650/a10e00aa5fc77cc14deb38f7da48e5da40b18503.jpg
@@ -32,7 +34,8 @@ Syntax\SteamApi\Collection Object
3234
(
3335
[appId] => 22670
3436
[name] => Alien Breed 3: Descent
35-
[playtimeTwoWeeks] => 0 minutes
37+
[playtimeTwoWeeks] => 0
38+
[playtimeTwoWeeksReadable] => 0 minutes
3639
[playtimeForever] => 0
3740
[playtimeForeverReadable] => 0 minutes
3841
[icon] => http://media.steampowered.com/steamcommunity/public/images/apps/22670/276d9c54a181c2baf809c53c6172a5475866e693.jpg
@@ -45,7 +48,8 @@ Syntax\SteamApi\Collection Object
4548
(
4649
[appId] => 22610
4750
[name] => Alien Breed: Impact
48-
[playtimeTwoWeeks] => 0 minutes
51+
[playtimeTwoWeeks] => 0
52+
[playtimeTwoWeeksReadable] => 0 minutes
4953
[playtimeForever] => 0
5054
[playtimeForeverReadable] => 0 minutes
5155
[icon] => http://media.steampowered.com/steamcommunity/public/images/apps/22610/963d4d2b346f7258940a9bb9c8a5e319ec1bc781.jpg

examples/player/GetRecentlyPlayedGames.txt

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ Syntax\SteamApi\Collection Object
66
(
77
[appId] => 214490
88
[name] => Alien: Isolation
9-
[playtimeTwoWeeks] => 1 hours 13 minutes
9+
[playtimeTwoWeeks] => 73
10+
[playtimeTwoWeeksReadable] => 1 hours 13 minutes
1011
[playtimeForever] => 73
1112
[playtimeForeverReadable] => 1 hours 13 minutes
1213
[icon] => http://media.steampowered.com/steamcommunity/public/images/apps/214490/7bf964858835da75630a43ac0ddbf0f66a40902f.jpg
@@ -19,7 +20,8 @@ Syntax\SteamApi\Collection Object
1920
(
2021
[appId] => 258970
2122
[name] => Gauntletâ„¢
22-
[playtimeTwoWeeks] => 2 hours 28 minutes
23+
[playtimeTwoWeeks] => 148
24+
[playtimeTwoWeeksReadable] => 2 hours 28 minutes
2325
[playtimeForever] => 148
2426
[playtimeForeverReadable] => 2 hours 28 minutes
2527
[icon] => http://media.steampowered.com/steamcommunity/public/images/apps/258970/76e95a57a669c30984c9dcd32879536746d75de9.jpg
@@ -32,7 +34,8 @@ Syntax\SteamApi\Collection Object
3234
(
3335
[appId] => 249130
3436
[name] => LEGO MARVEL Super Heroes
35-
[playtimeTwoWeeks] => 46 minutes
37+
[playtimeTwoWeeks] => 46
38+
[playtimeTwoWeeksReadable] => 46 minutes
3639
[playtimeForever] => 46
3740
[playtimeForeverReadable] => 46 minutes
3841
[icon] => http://media.steampowered.com/steamcommunity/public/images/apps/249130/8462ed9e1004624c7109233eafd7098211da9f86.jpg
@@ -45,7 +48,8 @@ Syntax\SteamApi\Collection Object
4548
(
4649
[appId] => 241930
4750
[name] => Middle-earth: Shadow of Mordor
48-
[playtimeTwoWeeks] => 1 hours 21 minutes
51+
[playtimeTwoWeeks] => 71
52+
[playtimeTwoWeeksReadable] => 1 hours 21 minutes
4953
[playtimeForever] => 81
5054
[playtimeForeverReadable] => 1 hours 21 minutes
5155
[icon] => http://media.steampowered.com/steamcommunity/public/images/apps/241930/161afab3c9f725f593635723cc64a7fbeb324ead.jpg
@@ -58,7 +62,8 @@ Syntax\SteamApi\Collection Object
5862
(
5963
[appId] => 221680
6064
[name] => Rocksmith 2014
61-
[playtimeTwoWeeks] => 2 hours 30 minutes
65+
[playtimeTwoWeeks] => 150
66+
[playtimeTwoWeeksReadable] => 2 hours 30 minutes
6267
[playtimeForever] => 753
6368
[playtimeForeverReadable] => 12 hours 33 minutes
6469
[icon] => http://media.steampowered.com/steamcommunity/public/images/apps/221680/26c3d3ad45c9386e909613e5d115e73955501844.jpg

src/Syntax/SteamApi/Containers/Game.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ class Game extends BaseContainer
1010

1111
public $playtimeTwoWeeks;
1212

13+
public $playtimeTwoWeeksReadable;
14+
1315
public $playtimeForever;
1416

1517
public $playtimeForeverReadable;
@@ -26,7 +28,8 @@ public function __construct($app)
2628
{
2729
$this->appId = $app->appid;
2830
$this->name = $this->checkIssetField($app, 'name');
29-
$this->playtimeTwoWeeks = isset($app->playtime_2weeks) ? $this->convertFromMinutes($app->playtime_2weeks) : '0 minutes';
31+
$this->playtimeTwoWeeks = $this->checkIssetField($app, 'playtime_2weeks', 0);
32+
$this->playtimeTwoWeeksReadable = $this->convertFromMinutes($this->playtimeTwoWeeks);
3033
$this->playtimeForever = $this->checkIssetField($app, 'playtime_forever', 0);
3134
$this->playtimeForeverReadable = $this->convertFromMinutes($this->playtimeForever);
3235
$this->icon = $this->checkIssetImage($app, 'img_icon_url');

src/Syntax/SteamApi/Containers/Item.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ class Item extends BaseContainer
1010

1111
public $playtimeTwoWeeks;
1212

13+
public $playtimeTwoWeeksReadable;
14+
1315
public $playtimeForever;
1416

1517
public $playtimeForeverReadable;
@@ -26,7 +28,8 @@ public function __construct($app)
2628
{
2729
$this->appId = $app->appid;
2830
$this->name = $this->checkIssetField($app, 'name');
29-
$this->playtimeTwoWeeks = isset($app->playtime_2weeks) ? $this->convertFromMinutes($app->playtime_2weeks) : '0 minutes';
31+
$this->playtimeTwoWeeks = $this->checkIssetField($app, 'playtime_2weeks', 0);
32+
$this->playtimeTwoWeeksReadable = $this->convertFromMinutes($this->playtimeTwoWeeks);
3033
$this->playtimeForever = $this->checkIssetField($app, 'playtime_forever', 0);
3134
$this->playtimeForeverReadable = $this->convertFromMinutes($this->playtimeForever);
3235
$this->icon = $this->checkIssetImage($app, 'img_icon_url');

tests/PlayerTest.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public function it_gets_the_owned_games_by_user_id()
5757
$this->assertInstanceOf('Syntax\SteamApi\Containers\Game', $games->first());
5858

5959
$attributes = [
60-
'appId', 'name', 'playtimeTwoWeeks', 'playtimeForever', 'playtimeForeverReadable',
60+
'appId', 'name', 'playtimeTwoWeeks', 'playtimeTwoWeeksReadable', 'playtimeForever', 'playtimeForeverReadable',
6161
'icon', 'logo', 'header', 'hasCommunityVisibleStats'
6262
];
6363
$this->assertObjectHasAttributes($attributes, $games->first());
@@ -72,7 +72,7 @@ public function it_gets_the_owned_games_by_user_id_without_app_details()
7272
$this->assertInstanceOf('Syntax\SteamApi\Containers\Game', $games->first());
7373

7474
$attributes = [
75-
'appId', 'name', 'playtimeTwoWeeks', 'playtimeForever', 'playtimeForeverReadable',
75+
'appId', 'name', 'playtimeTwoWeeks', 'playtimeTwoWeeksReadable', 'playtimeForever', 'playtimeForeverReadable',
7676
'icon', 'logo', 'header', 'hasCommunityVisibleStats'
7777
];
7878
$this->assertObjectHasAttributes($attributes, $games->first());
@@ -92,7 +92,7 @@ public function it_filters_the_owned_games_by_user_id()
9292
$this->assertEquals(1, $games->count());
9393

9494
$attributes = [
95-
'appId', 'name', 'playtimeTwoWeeks', 'playtimeForever', 'playtimeForeverReadable',
95+
'appId', 'name', 'playtimeTwoWeeks', 'playtimeTwoWeeksReadable', 'playtimeForever', 'playtimeForeverReadable',
9696
'icon', 'logo', 'header', 'hasCommunityVisibleStats'
9797
];
9898
$this->assertObjectHasAttributes($attributes, $games->first());
@@ -107,7 +107,7 @@ public function it_gets_recently_played_games_by_user_id()
107107
$this->assertInstanceOf('Syntax\SteamApi\Containers\Game', $games->first());
108108

109109
$attributes = [
110-
'appId', 'name', 'playtimeTwoWeeks', 'playtimeForever', 'playtimeForeverReadable',
110+
'appId', 'name', 'playtimeTwoWeeks', 'playtimeTwoWeeksReadable', 'playtimeForever', 'playtimeForeverReadable',
111111
'icon', 'logo', 'header', 'hasCommunityVisibleStats'
112112
];
113113
$this->assertObjectHasAttributes($attributes, $games->first());
@@ -123,7 +123,7 @@ public function it_gets_a_single_recently_played_game_by_user_id()
123123
$this->assertEquals(1, $games->count());
124124

125125
$attributes = [
126-
'appId', 'name', 'playtimeTwoWeeks', 'playtimeForever', 'playtimeForeverReadable',
126+
'appId', 'name', 'playtimeTwoWeeks', 'playtimeTwoWeeksReadable', 'playtimeForever', 'playtimeForeverReadable',
127127
'icon', 'logo', 'header', 'hasCommunityVisibleStats'
128128
];
129129
$this->assertObjectHasAttributes($attributes, $games->first());

0 commit comments

Comments
 (0)