Heads up! To view this whole video, sign in with your Courses account or enroll in your free 7-day trial. Sign In Enroll
Preview
Start a free Courses trial
to watch this video
In this video we will extend the child class from ListingPremium. This new grandchild will inherit all the attributes and abilities of ListingPremium AND ListingBasic.
$object = new ListingFeatured();
//parent
echo is_a($object, 'ListingPremium'); //returns true
//grandparent
echo is_a($object, 'ListingBasic'); //returns true
//sibling of parent
echo is_a($object, 'ListingInactive'); //returns false
Related Discussions
Have questions about this video? Start a discussion with the community and Treehouse staff.
Sign upRelated Discussions
Have questions about this video? Start a discussion with the community and Treehouse staff.
Sign up
For our ListingFeatured class,
we're going to add a code of conduct.
0:00
The code of conduct is going to
work much like the description.
0:04
So let's copy the code from
the ListingPremium and modify that.
0:07
We don't need to change the allowed tags.
0:21
We'll let the ListingPremium handle that,
so let's remove that line.
0:23
Now we can change description to
code of conduct, or coc for short.
0:31
We update the set values, getCoc,
0:50
And setCoc.
1:05
Let's update our collection
to use this new listing.
1:12
Once again we'll modify our addListing
method to use this new class.
1:17
Now let's update the statuses.
1:32
We want our featured
listings to show up first.
1:36
So let's add it first to this list.
1:39
Next, let's update our form.
1:44
Once again we can copy the code from the
description and make a few minor changes.
1:48
Coc, coc, coc, Featured.
2:02
GetCoc.
2:13
We'll call this Code of Conduct.
2:18
And say Featured Only.
2:23
Finally, we need to update our listing.
2:25
We'll start by adding another
case to our switch statement.
2:31
If featured, Then we'll use panel-success,
2:36
And break, now,
let's show the code of conduct.
2:48
We'll make this a footer.
2:52
If (is_a($listing,
2:57
'ListingFeatured').
3:02
&& !empty
3:12
($listing->getCoc()))
3:16
div class="panel-footer"
3:31
id="coc
3:39
$listing->getId()
3:47
Let's preview this in the browser and
upgrade one of our listings.
4:06
It looks good, but instead of
having this displayed all the time,
4:26
let's add a toggle link.
4:29
We'll copy that, and
we'll put our link here.
4:38
Onclick="toggle(\'coc'.
4:56
$listing->getID()
5:06
Code of Conduct.
5:19
Let's set the style to
start as a display:none.
5:33
Let's clean up the text
from our homepage too.
5:45
And we can preview once more.
5:54
Great job, we have featured listings,
6:04
premium listings, basic and inactive.
6:08
You need to sign up for Treehouse in order to download course files.
Sign upYou need to sign up for Treehouse in order to set up Workspace
Sign up