World Library  
Flag as Inappropriate
Email this Article

High School Musical 3: Senior Year

Article Id: WHEBN0009391085
Reproduction Date:

Title: High School Musical 3: Senior Year  
Author: World Heritage Encyclopedia
Language: English
Subject:
Collection:
Publisher: World Heritage Encyclopedia
Publication
Date:
 

High School Musical 3: Senior Year

High School Musical 3: Senior Year
The six main cast members do their signature jump, this time in prom outfits and graduation gowns
Theatrical release poster
Directed by Kenny Ortega
Produced by Bill Borden
Barry Rosenbush
Written by Peter Barsocchini
Based on Characters 
by Peter Barsocchini
Starring Zac Efron
Vanessa Hudgens
Ashley Tisdale
Lucas Grabeel
Corbin Bleu
Monique Coleman
Music by David Lawrence
Cinematography Daniel Aranyò
Edited by Lauren Flaum
Production
company
Walt Disney Pictures
Borden and Rosenbush Entertainment
Distributed by Walt Disney Studios
Motion Pictures
Release dates
  • October 24, 2008 (2008-10-24)
Running time
111 minutes[1]
120 minutes (DVD Special Edition)
Country United States
Language English
Budget $11 million[2]
Box office $252.9 million[2]

High School Musical 3: Senior Year is a 2008 American teen romantic comedy musical film and the third and final installment in the High School Musical trilogy. Produced and released on October 24, 2008 by Walt Disney Pictures, it was the only film in the series to be released theatrically. Kenny Ortega returned as director and choreographer, as did all six primary actors.

The sequel follows the main six high school seniors: Troy, Gabriella, Sharpay, Ryan, Chad, and Taylor as they are faced with the challenging prospect of being separated after graduating from high school. Joined by the rest of their East High Wildcat classmates, they stage an elaborate spring musical reflecting their experiences, hopes, and fears about the future.

The film received positive reviews, relatively better than the first installment of the series, and, in its first three days of release, High School Musical 3: Senior Year grossed $50 million in North America and an additional $40 million overseas, setting a new record for the largest opening weekend for a musical film.

Contents

  • Plot 1
  • Cast 2
  • Musical numbers 3
  • Production 4
    • Development 4.1
    • Vanessa Hudgens photo controversy 4.2
  • Release 5
    • Sing-along version 5.1
    • Critical reception 5.2
    • International release 5.3
    • Box office 5.4
  • Awards 6
  • Home media 7
  • Broadcasting 8
    • International release 8.1
  • References 9
  • External links 10

Plot

The movie begins with the Wildcats trailing the West High Knights, with the Wildcats entering the locker room for the final quarter feeling bitter. Team captain Troy rallies the team's spirit ("Now or Never") and, thanks to new transfer Jimmie "The Rocket" Zara, the Wildcats win the championship game which is the last one for the seniors on the squad at East High. Later, at Troy's after-match party at his house, Troy and Gabriella are seen thinking about their future and wishing that their last few months at East High would not end ("Right Here, Right Now").

Sharpay meets Tiara Gold, a British exchange student whom she hires to be her personal assistant. When drama teacher Ms. Darbus notices that there were so few sign-ups for the spring musical, Sharpay suggests she could do a one-woman show. This alarms Kelsi, who is writing the show, so she immediately signs up everyone in their homeroom for it instead. This results in Ms. Darbus announcing they will create a play about their final days at East High, called Senior Year. In addition, she reveals that Sharpay, Ryan, Kelsi, and Troy have all been considered for a scholarship at Juilliard School, but only one of them is to be chosen. Troy is confused, because he did not apply to Juilliard. Seeing his friends laughing, he believes they gave his name to Juilliard. Sharpay becomes desperate to win the scholarship, and knowing that Kelsi will give the best songs to Troy and Gabriella in the musical, she gets Ryan to try to persuade Kelsi to give them a song, by predicting her (and Ryan's) future ("I Want It All").

The very next day, Troy asks Gabriella to the dance while on the rooftop (seen previously in the first film as The Garden Club, a place where Troy goes seeking some quiet). She then teaches him how to waltz ("Can I Have This Dance?"). After that, Troy and Chad steal Jimmie and Donny's clothes, thus leading through a big chase and Mrs. Darbus forced them to volunteer as understudies. Chad then asks Taylor to go to prom with him with a cheesy pick-up line. She initially refuses, but later agrees when Chad proves he can put in some effort and asks again in front of everyone in school. The group rehearses for the musical, a scene about their prom night ("A Night to Remember"). The next day, Ryan walks in on Kelsi composing in the music room and they start to sing ("Just Wanna Be with You") which leads to Ryan asking Kelsi to prom. While Troy and Chad reminisce about their past ("The Boys Are Back"), Sharpay and Tiara discover that Gabriella has a chance to go to college early to Stanford and Sharpay convinces Troy that he is the only thing keeping Gabriella from her dream. Troy talks to Gabriella about this and after sharing an awkward goodnight, Gabriella sings ("Walk Away") and leaves for college the next day.

Troy's father, Jack, talks to him about his academic future, which he expects will be in the University of Albuquerque. This assumption makes Troy become angry and confused, and he runs away, storming around East High bewildered until he finally screams at the top of his lungs in the theater ("Scream"). Ms. Darbus is secretly watching and reveals that she sent in his application for Juilliard. Troy later gets a call from Gabriella saying that although she loves him, she will not return to Albuquerque for prom or graduation. However, on the day of the prom, Troy visits Gabriella at Stanford University and convinces her to return and they kiss during the lunch break ("Can I Have This Dance? (Reprise)"). Back at East High, Sharpay is prepared for the last musical at East High and Troy's fellow basketball player Jimmie receives a text from Troy to tell him to cover for him onstage because he is going to be late. The Juilliard representatives are there, and watch as the show seems to go well.

Kelsi and Ryan start out the show followed by a couple other numbers; Jimmie then performs with Sharpay and embarrasses her, although the audience applauds the performance. Troy and Gabriella appear during the second half of the show and sing their duet together. Tiara then betrays Sharpay and tells her how she is going to take over next year in the drama department. Sharpay finally learns how it feels to be manipulated and humiliated, but nevertheless does not wish to go down. While Tiara performs, Sharpay immediately crashes her performance and upstages her ("Senior Year Spring Musical").

At the end of the musical, Ms. Darbus reveals that both Kelsi and Ryan have won the Juilliard scholarship and tells about everyone's future plans, in which Troy reveals he's chosen Berkeley so he can be close to Gabriella where he can play basketball and perform in theater ("We're All in This Together" [Graduation Mix]).

At the graduation ceremony, Troy gives the class speech after being selected by Ms. Darbus. Throwing their caps in the air, the graduates form a giant "wildcat" before breaking out into song and dance ("High School Musical"). As the film ends, the graduates run across the field, the curtain falls, and they appear on the East High stage. The main cast perform the song, "High School Musical", before jumping and bowing when the curtain falls.

Cast

See High School Musical characters

Main Characters:

Side Characters:

Musical numbers

Song Lead Singers Scene Notes
"Now or Never" Troy, Gabriella, Chad, Zeke, Jason, Martha, and Cheerleaders East High gym The championship game
"Right Here, Right Now" Troy and Gabriella Troy's Treehouse After-party at Bolton residence
"I Want It All" Sharpay and Ryan East High cafeteria Sharpay and Ryan's fantasy sequence
"Can I Have This Dance?" (Verse 1 + Bridge) Troy and Gabriella Rooftop garden of East High Gabriella teaches Troy the waltz
"A Night to Remember" Troy, Chad, Gabriella, Jason, Zeke, Taylor, Martha, Kelsi, Sharpay, Ryan East High Auditorium Rehearsal for musical number
"Just Wanna Be with You" Ryan and Kelsi; Troy and Gabriella East High Auditorium/East High Music Room A declaration of friendship that survives against all odds
"The Boys Are Back" Troy and Chad Riley's Auto Salvage Junkyard Troy and Chad reliving childhood memories/finding out what they want to be in life
"Right Here, Right Now" (Reprise) Troy and Gabriella Gabriella's house/Troy's treehouse Emotional reprise of "Right Here, Right Now"; Troy and Gabriella worrying about how far away they'll be from each other (Only on extended edition)
"Walk Away" Gabriella Gabriella's house Gabriella's move to Stanford University
"Scream" Troy Throughout East High Troy's confusion about his future after Gabriella leaves
"Can I Have This Dance?" (Verse 2) Troy and Gabriella Stanford University/East High Auditorium Troy convinces Gabriella to come back for the musical and graduation
"Senior Year Spring Musical" Kelsi, Ryan, Chad, Sharpay, Jimmie, Troy, Gabriella, & Tiara East High Auditorium (The Spring Musical performance) Featuring: Last Chance with Kelsi & Ryan, Now or Never (Reprise) with Chad and the Jocks, I Want it All (Reprise) with Ryan and the Dancers,
Just Wanna Be with You (Reprise) with Sharpay, Jimmy, Troy, Gabriella, and the Ensemble, and A Night to Remember (Reprise) with Tiara, Sharpay, and Male Chorus
"We're All in This Together
(Graduation Mix)"
Troy, Gabriella, Sharpay, Ryan, Chad, Taylor (on soundtrack); Choir (in film) East High auditorium/graduation ceremony A slower, graduation-tuned reprise from the first installment
"High School Musical" Troy, Gabriella, Sharpay, Ryan, Chad and Taylor Graduation Ceremony on the East High Football Field The trilogy finale

Production

According to the Salt Lake City Tribune, "...to help lure the production back to where it all began – at Salt Lake City's East High School – the GOED board Friday approved a maximum $2 million incentive for the production, the largest ever given to entice a filmmaker to Utah."[3]

Principal photography began on May 3, 2008; the 41 days scheduled for shooting was a longer period than for the first two films.[4]

Stan Carrizosa, the winner of ABC's summer reality show, High School Musical: Get in the Picture appears in a music video "Just Getting Started" that is shown over the end credits of the theatrical release of the film.[5] The show's other 11 finalists were featured in the music video as well.

Development

Zac Efron was quoted in People Magazine as saying, "I can tell you that if the script is good and if we all agree on a final script, then there's nothing that is going to hold us back from doing it. We have fun making these movies and that's very rare in this business."[6] Rumors persisted of ongoing salary disputes between Disney and the lead performers, particularly Efron. According to Rachel Abramowitz, as reported online by the Chicago Tribune, "an eclectic cross-section of Hollywood insiders think Efron should get a cool $5 million for High School Musical 3, the theatrical version of the franchise, which Disney hoped to make before the Writers Guild strike and Screen Actors Guild strike shut down Hollywood for several months. Efron declined to comment for the article, and although contract negotiations still are ongoing, sources say Efron is being offered a salary closer to $3 million, not $5 million, for the follow-up, which focuses on senior year at East High. Whatever the price, he's still perceived as a steal."[7] The movie was originally titled " Haunted High school musical " with plans of a Halloween theme but was later scraped.[8]

Ortega stated that pre-production would most likely start in January 2008. Filming began May 3, 2008, at East High School in Salt Lake City, Utah. He stated that the script had been submitted before the writers' strike started and that they were developing music. He added that filming will happen in Salt Lake City, Utah (as the first two films), hinted that the plot will be something of the nature of the Wildcat's final year in High School and stated, "it looks like we've rounded up the cast."[9][10]

Before filming began, the HSM3 board and cast held a press conference at East High School announcing the start of filming. The film would be released in theaters (in the United States) on October 24, 2008, though the film was to open in several countries including the UK at least one week earlier. The film had a $11 million budget and a 40-day shooting period. The film was said at the time to be the final installment with the current cast. The London premiere was the biggest London premiere of all time.[11]

Vanessa Hudgens photo controversy

Despite early speculation that Vanessa Hudgens would be dropped from the film due to her nude photo scandal, The Walt Disney Company denied the reports, saying, "Vanessa has apologized for what was obviously a lapse in judgment. We hope she's learned a valuable lesson."[12][13][14]

Release

Sing-along version

On November 7, 2008, High School Musical 3: Senior Year: The Sing-Along Edition with lyrics highlighted on the screen was released in selected theaters. The sing along version was released on May 21, 2011.[15]

Critical reception

High School Musical 3: Senior Year received generally positive reviews from critics.[16] On Rotten Tomatoes the film has a rating of 65%, based on 121 reviews, with an average rating of 6.1/10. The site's critical consensus reads, "It won't win many converts, but High School Musical 3 is bright, energetic, and well-crafted." The site also gave it a Golden Tomato for best musical film of 2008.[17] Metacritic, which assigns a weighted average score, the film has a score of 57 out of 100, based on 26 critics, "mixed or average reviews".[18]

The Telegraph praised the changes brought about by the higher budget of a theatrical release: "High School Musical 3 uses its bigger budget to inject colour, scale, and visual depth. The opening basketball game alone is dizzying as the camera swoops high and wide, before a winning point makes the crowd erupt".[19]

Stephen Farber, for Reuteres UK, says the film "will please fan base but won't win converts", as the story "never really does kick in" and that "the picture quickly grows tedious",[20] while MSNBC's Alonso Duralde describes it as "a stitched-together Frankenstein monster of an entertainment, featuring major components that were already trotted out the first two times."[21]

Peter Johnson of The Guardian describes the film as so bland that it "makes cellophane taste like chicken jalfrezi", and says that "the sheer squeaky-cleanness of everything is creepy, and when the characters are called upon to dance, they do so with robotic efficiency, and sing in that decaffeinated high vibrato, like 21st-century Hollywood castrati."[22]

Entertainment Weekly on the other hand was very positive towards the film, praising the stars' energy: "the beauty of Efron's performance is that he's a vibrant athletic hoofer who leaps and clowns with the heartthrob vigor of a young Gene Kelly, yet he's also achingly sincere. His fast-break alertness makes him the most empathetic of teen idols; he's like a David Cassidy who knows how to act, and who can swoon without getting too moist about it. Apart from Efron, the breakout star is Ashley Tisdale, whose Sharpay makes narcissism a goofy, bedazzled pleasure."[23]

MovieGuide has also favorably reviewed the film, strongly recommending it for the family as "fun, clean and full of energy" and describing it as "thin on plot" yet nevertheless "a phenomenon."[24]

The BBC film critic Mark Kermode loved the film and said it was in his top 5 films for the year, and named Tisdale the "Best Supporting Actress" of 2008.

The Fort Worth Star-Telegram stated that the latest installment was "critic-proof" and "everything fans could hope for and more." They go on to say that "the kids finally look like true performers rather than Disney Channel mainstays desperately trying to remain relevant, and they deserve the lucrative careers that lie ahead" and gave the film a rating of four out of five stars. The film was also well received in the UK.[25] Hudgens was recognized as Favorite Movie Actress at Nickelodeon's Kids' Choice Awards, Efron was voted Best Male Performance at the 2009 MTV awards and Choice Actor: Music/Dance at the 2009 Teen Choice Awards and Tisdale was voted Breakthrough Performance Female at the 2009 MTV Movie awards and Best Supporting Actress at the 2009 UK Kermode Awards.

International release

Country Title Theatrical release TV release
 United States High School Musical 3: Senior Year October 24, 2008 April 4, 2010
 Canada
 Brazil High School Musical 3: Ano da Formatura October 24, 2008 March 13, 2011
 Colombia High School Musical 3: La Graduación October 24, 2008
 Uruguay October 21, 2008
 Venezuela October 28, 2008
 Peru October 30, 2008
 Mexico
 Ecuador
 Guatemala
 Belize
 El Salvador
 Nicaragua
 Honduras
 Panama
 Costa Rica
October 31, 2008
 France High School Musical 3 : Nos années lycée October 22, 2008 October 31, 2011
 United Kingdom
 Ireland
High School Musical 3: Senior Year October 24, 2008 December 4, 2009
 Turkey High School Musical 3: Yıldızlar Takımı November 14, 2008 July 23, 2011
 Germany High School Musical 3: Senior Year October 23, 2008
 Spain High School Musical 3: Fin de Curso October 24, 2008 November 16, 2012
 Italy High School Musical 3: Senior Year October 31, 2008
 Belgium October 29, 2008
  Switzerland October 22, 2008
 Indonesia High School Musical 3: Senior Year October 29, 2008 September 19, 2012
 Singapore October 24, 2008
 Thailand January 22, 2009
 Vietnam November 20, 2008
 Brunei
 Malaysia
 Cambodia
N/A

Box office

The film opened with $16 million on Friday for the biggest opening day for a musical film of all time until the record was topped in 2012 by Les Miserables ($18.1 million).[26] It also debuted at the #1 spot (beating out Saw V in box office earnings) with an opening weekend of over $42,030,184 in the United States and breaking the record, previously held by Enchanted, for the biggest opening ever for a movie musical.[27] This record would later be broken by Pitch Perfect 2 in 2015 ($69.2 million).[28] The film also opened at #1 overseas, with an international opening of $42,622,505. High School Musical 3: Senior Year grossed $90,559,416 in North America and $162,349,761 in other territories leading to a worldwide total of $252,909,177,[2] which was above even Disney's expectations.require('Module:No globals')

local p = {}

-- articles in which traditional Chinese preceeds simplified Chinese local t1st = { ["228 Incident"] = true, ["Chinese calendar"] = true, ["Lippo Centre, Hong Kong"] = true, ["Republic of China"] = true, ["Republic of China at the 1924 Summer Olympics"] = true, ["Taiwan"] = true, ["Taiwan (island)"] = true, ["Taiwan Province"] = true, ["Wei Boyang"] = true, }

-- the labels for each part local labels = { ["c"] = "Chinese", ["s"] = "simplified Chinese", ["t"] = "traditional Chinese", ["p"] = "pinyin", ["tp"] = "Tongyong Pinyin", ["w"] = "Wade–Giles", ["j"] = "Jyutping", ["cy"] = "Cantonese Yale", ["poj"] = "Pe̍h-ōe-jī", ["zhu"] = "Zhuyin Fuhao", ["l"] = "literally", }

-- article titles for wikilinks for each part local wlinks = { ["c"] = "Chinese language", ["s"] = "simplified Chinese characters", ["t"] = "traditional Chinese characters", ["p"] = "pinyin", ["tp"] = "Tongyong Pinyin", ["w"] = "Wade–Giles", ["j"] = "Jyutping", ["cy"] = "Yale romanization of Cantonese", ["poj"] = "Pe̍h-ōe-jī", ["zhu"] = "Bopomofo", }

-- for those parts which are to be treated as languages their ISO code local ISOlang = { ["c"] = "zh", ["t"] = "zh-Hant", ["s"] = "zh-Hans", ["p"] = "zh-Latn-pinyin", ["tp"] = "zh-Latn", ["w"] = "zh-Latn-wadegile", ["j"] = "yue-jyutping", ["cy"] = "yue", ["poj"] = "hak", ["zhu"] = "zh-Bopo", }

local italic = { ["p"] = true, ["tp"] = true, ["w"] = true, ["j"] = true, ["cy"] = true, ["poj"] = true, } -- Categories for different kinds of Chinese text local cats = { ["c"] = "", ["s"] = "", ["t"] = "", }

function p.Zh(frame) -- load arguments module to simplify handling of args local getArgs = require('Module:Arguments').getArgs local args = getArgs(frame) return p._Zh(args) end function p._Zh(args) local uselinks = not (args["links"] == "no") -- whether to add links local uselabels = not (args["labels"] == "no") -- whether to have labels local capfirst = args["scase"] ~= nil

        local t1 = false -- whether traditional Chinese characters go first
        local j1 = false -- whether Cantonese Romanisations go first
        local testChar
        if (args["first"]) then
                 for testChar in mw.ustring.gmatch(args["first"], "%a+") do
          if (testChar == "t") then
           t1 = true
           end
          if (testChar == "j") then
           j1 = true
           end
         end
        end
        if (t1 == false) then
         local title = mw.title.getCurrentTitle()
         t1 = t1st[title.text] == true
        end

-- based on setting/preference specify order local orderlist = {"c", "s", "t", "p", "tp", "w", "j", "cy", "poj", "zhu", "l"} if (t1) then orderlist[2] = "t" orderlist[3] = "s" end if (j1) then orderlist[4] = "j" orderlist[5] = "cy" orderlist[6] = "p" orderlist[7] = "tp" orderlist[8] = "w" end -- rename rules. Rules to change parameters and labels based on other parameters if args["hp"] then -- hp an alias for p ([hanyu] pinyin) args["p"] = args["hp"] end if args["tp"] then -- if also Tongyu pinyin use full name for Hanyu pinyin labels["p"] = "Hanyu Pinyin" end if (args["s"] and args["s"] == args["t"]) then -- Treat simplified + traditional as Chinese if they're the same args["c"] = args["s"] args["s"] = nil args["t"] = nil elseif (not (args["s"] and args["t"])) then -- use short label if only one of simplified and traditional labels["s"] = labels["c"] labels["t"] = labels["c"] end local body = "" -- the output string local params -- for creating HTML spans local label -- the label, i.e. the bit preceeding the supplied text local val -- the supplied text -- go through all possible fields in loop, adding them to the output for i, part in ipairs(orderlist) do if (args[part]) then -- build label label = "" if (uselabels) then label = labels[part] if (capfirst) then label = mw.language.getContentLanguage():ucfirst(

Awards

Year Award Category Result
2008 CMA Wild and Young Awards Best Actor International
(Zac Efron)
Won
Most Popular Celebrity International
(Zac Efron)
Won
Phoenix Film Critics Society Awards Best Live Action Family Film Won
2009 ASCAP Film and Television Music Awards Top Box Office Film
(Andy Dodd, David Nessim Lawrence, Adam Anders, Antonina Armato, Matthew Gerrard, Robbie Nevil, Nikki Anders, Jamie Houston, Adam Watts, Theodore Thomas, Theron Thomas and Timothy Thomas)
Won
BAFTA Awards BAFTA Kids' Vote – Feature Film[29] Won
Golden Reel Award Best Sound Editing – Music in a Musical Feature Film
(Tanya Noel Hill and Charles Martin Inouye)
Nominated
MTV Movie Awards Best Male Performance
(Zac Efron)
Won
Breakthrough Performance Female
(Ashley Tisdale)
Won
Best Movie Nominated
Breakthrough Performance Female
(Vanessa Hudgens)
Nominated
Best Kiss
(Vanessa Hudgens & Zac Efron)
Nominated
National Association of Latino Independent Producers Outstanding Achievement Award
(Kenny Ortega)
Won
Nickelodeon Kids' Choice Awards Favorite Movie Won
Favorite Actress
(Vanessa Hudgens)
Won
Nickelodeon Australian Kids' Choice Awards Fave Movie Star
(Zac Efron)
Nominated
UK Kermode Awards Best Supporting Actress
(Ashley Tisdale)
Won
Teen Choice Awards Choice Movie Actor: Music/Dance
(Zac Efron)
Won
Choice Movie: Music/Dance Won
Choice Movie Actress: Music/Dance
(Vanessa Hudgens)
Nominated
Choice Movie Actress: Music/Dance
(Ashley Tisdale)
Nominated
Choice Movie Liplock
(Zac Efron and Vanessa Hudgens)
Nominated
Choice Movie Actor: Music/Dance
(Corbin Bleu)
Nominated
Choice Music: Soundtrack
(High School Musical 3: Senior Year (soundtrack))
Nominated
Young Artist Award Jackie Coogan Award - Contribution to Youth
(Kenny Ortega)
Won

Home media

High School Musical 3: Senior Year was released in Region 1 DVD and Blu-ray on February 17, 2009,[30] in Region 2 DVD on February 16, 2009[31] and in Region 3 DVD on February 24, 2009.[32] The DVD was released in single- and two-disc editions.[33]

In Region 2, the single-disc edition DVD featured most of the two-disc edition bonus features such as bloopers, deleted scenes, extended version of the film, sing-along and cast goodbyes.[34] In Region 3, only the single-disc edition DVD was released with all of the two-disc bonus features as well the extended edition of the film. In the Philippines, it was released on February 25, 2009. The Region 4 DVD was released on April 8, 2009. As of November 1, 2009, the DVD has sold over 23 million copies and generated over $200 million in sales revenue.[35]

Broadcasting

The film premiered on Disney Channel before the series premiere of Good Luck Charlie. The premiere on Disney Channel US brought 4 million viewers.[36]

International release

The film premiered on Disney Channel India on 18 October 2009 and on 5 December 2009 in Disney Channel Asia. On 4 December 2009, for one night only, it premiered on Disney Cinemagic, and it will premiere on Disney Channel (UK & Ireland) in January/February 2010. It premiered on 12 December 2009 on Disney Channel New Zealand/Australia. And 16 March 2011 in [LatinAmerica]. It premiered in France on 31 October 2011 on M6

Disney Channel India was the first to telecast High School Musical 3 officially. It was originally telecasted on 18 October as a part of Club HSM, but did not gain too much popularity. It was again aired on January 1 as a part Fully Funny First Day, and again on 14 February as a part of Pyaar Ke after effects.

References


-- Module:Hatnote -- -- -- -- This module produces hatnote links and links to related articles. It -- -- implements the and meta-templates and includes -- -- helper functions for other Lua hatnote modules. --


local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local mArguments -- lazily initialise Module:Arguments local yesno -- lazily initialise Module:Yesno

local p = {}


-- Helper functions


local function getArgs(frame) -- Fetches the arguments from the parent frame. Whitespace is trimmed and -- blanks are removed. mArguments = require('Module:Arguments') return mArguments.getArgs(frame, {parentOnly = true}) end

local function removeInitialColon(s) -- Removes the initial colon from a string, if present. return s:match('^:?(.*)') end

function p.findNamespaceId(link, removeColon) -- Finds the namespace id (namespace number) of a link or a pagename. This -- function will not work if the link is enclosed in double brackets. Colons -- are trimmed from the start of the link by default. To skip colon -- trimming, set the removeColon parameter to true. checkType('findNamespaceId', 1, link, 'string') checkType('findNamespaceId', 2, removeColon, 'boolean', true) if removeColon ~= false then link = removeInitialColon(link) end local namespace = link:match('^(.-):') if namespace then local nsTable = mw.site.namespaces[namespace] if nsTable then return nsTable.id end end return 0 end

function p.formatPages(...) -- Formats a list of pages using formatLink and returns it as an array. Nil -- values are not allowed. local pages = {...} local ret = {} for i, page in ipairs(pages) do ret[i] = p._formatLink(page) end return ret end

function p.formatPageTables(...) -- Takes a list of page/display tables and returns it as a list of -- formatted links. Nil values are not allowed. local pages = {...} local links = {} for i, t in ipairs(pages) do checkType('formatPageTables', i, t, 'table') local link = t[1] local display = t[2] links[i] = p._formatLink(link, display) end return links end

function p.makeWikitextError(msg, helpLink, addTrackingCategory) -- Formats an error message to be returned to wikitext. If -- addTrackingCategory is not false after being returned from -- Module:Yesno, and if we are not on a talk page, a tracking category -- is added. checkType('makeWikitextError', 1, msg, 'string') checkType('makeWikitextError', 2, helpLink, 'string', true) yesno = require('Module:Yesno') local title = mw.title.getCurrentTitle() -- Make the help link text. local helpText if helpLink then helpText = ' (help)' else helpText = end -- Make the category text. local category if not title.isTalkPage and yesno(addTrackingCategory) ~= false then category = 'Hatnote templates with errors' category = string.format( '%s:%s', mw.site.namespaces[14].name, category ) else category = end return string.format( '%s', msg, helpText, category ) end


-- Format link -- -- Makes a wikilink from the given link and display values. Links are escaped -- with colons if necessary, and links to sections are detected and displayed -- with " § " as a separator rather than the standard MediaWiki "#". Used in -- the template.


function p.formatLink(frame) local args = getArgs(frame) local link = args[1] local display = args[2] if not link then return p.makeWikitextError( 'no link specified', 'Template:Format hatnote link#Errors', args.category ) end return p._formatLink(link, display) end

function p._formatLink(link, display) -- Find whether we need to use the colon trick or not. We need to use the -- colon trick for categories and files, as otherwise category links -- categorise the page and file links display the file. checkType('_formatLink', 1, link, 'string') checkType('_formatLink', 2, display, 'string', true) link = removeInitialColon(link) local namespace = p.findNamespaceId(link, false) local colon if namespace == 6 or namespace == 14 then colon = ':' else colon = end -- Find whether a faux display value has been added with the | magic -- word. if not display then local prePipe, postPipe = link:match('^(.-)|(.*)$') link = prePipe or link display = postPipe end -- Find the display value. if not display then local page, section = link:match('^(.-)#(.*)$') if page then display = page .. ' § ' .. section end end -- Assemble the link. if display then return string.format('%s', colon, link, display) else return string.format('%s%s', colon, link) end end


-- Hatnote -- -- Produces standard hatnote text. Implements the template.


function p.hatnote(frame) local args = getArgs(frame) local s = args[1] local options = {} if not s then return p.makeWikitextError( 'no text specified', 'Template:Hatnote#Errors', args.category ) end options.extraclasses = args.extraclasses options.selfref = args.selfref return p._hatnote(s, options) end

function p._hatnote(s, options) checkType('_hatnote', 1, s, 'string') checkType('_hatnote', 2, options, 'table', true) local classes = {'hatnote'} local extraclasses = options.extraclasses local selfref = options.selfref if type(extraclasses) == 'string' then classes[#classes + 1] = extraclasses end if selfref then classes[#classes + 1] = 'selfref' end return string.format( '
%s
', table.concat(classes, ' '), s )

end

return p-------------------------------------------------------------------------------- -- Module:Hatnote -- -- -- -- This module produces hatnote links and links to related articles. It -- -- implements the and meta-templates and includes -- -- helper functions for other Lua hatnote modules. --


local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local mArguments -- lazily initialise Module:Arguments local yesno -- lazily initialise Module:Yesno

local p = {}


-- Helper functions


local function getArgs(frame) -- Fetches the arguments from the parent frame. Whitespace is trimmed and -- blanks are removed. mArguments = require('Module:Arguments') return mArguments.getArgs(frame, {parentOnly = true}) end

local function removeInitialColon(s) -- Removes the initial colon from a string, if present. return s:match('^:?(.*)') end

function p.findNamespaceId(link, removeColon) -- Finds the namespace id (namespace number) of a link or a pagename. This -- function will not work if the link is enclosed in double brackets. Colons -- are trimmed from the start of the link by default. To skip colon -- trimming, set the removeColon parameter to true. checkType('findNamespaceId', 1, link, 'string') checkType('findNamespaceId', 2, removeColon, 'boolean', true) if removeColon ~= false then link = removeInitialColon(link) end local namespace = link:match('^(.-):') if namespace then local nsTable = mw.site.namespaces[namespace] if nsTable then return nsTable.id end end return 0 end

function p.formatPages(...) -- Formats a list of pages using formatLink and returns it as an array. Nil -- values are not allowed. local pages = {...} local ret = {} for i, page in ipairs(pages) do ret[i] = p._formatLink(page) end return ret end

function p.formatPageTables(...) -- Takes a list of page/display tables and returns it as a list of -- formatted links. Nil values are not allowed. local pages = {...} local links = {} for i, t in ipairs(pages) do checkType('formatPageTables', i, t, 'table') local link = t[1] local display = t[2] links[i] = p._formatLink(link, display) end return links end

function p.makeWikitextError(msg, helpLink, addTrackingCategory) -- Formats an error message to be returned to wikitext. If -- addTrackingCategory is not false after being returned from -- Module:Yesno, and if we are not on a talk page, a tracking category -- is added. checkType('makeWikitextError', 1, msg, 'string') checkType('makeWikitextError', 2, helpLink, 'string', true) yesno = require('Module:Yesno') local title = mw.title.getCurrentTitle() -- Make the help link text. local helpText if helpLink then helpText = ' (help)' else helpText = end -- Make the category text. local category if not title.isTalkPage and yesno(addTrackingCategory) ~= false then category = 'Hatnote templates with errors' category = string.format( '%s:%s', mw.site.namespaces[14].name, category ) else category = end return string.format( '%s', msg, helpText, category ) end


-- Format link -- -- Makes a wikilink from the given link and display values. Links are escaped -- with colons if necessary, and links to sections are detected and displayed -- with " § " as a separator rather than the standard MediaWiki "#". Used in -- the template.


function p.formatLink(frame) local args = getArgs(frame) local link = args[1] local display = args[2] if not link then return p.makeWikitextError( 'no link specified', 'Template:Format hatnote link#Errors', args.category ) end return p._formatLink(link, display) end

function p._formatLink(link, display) -- Find whether we need to use the colon trick or not. We need to use the -- colon trick for categories and files, as otherwise category links -- categorise the page and file links display the file. checkType('_formatLink', 1, link, 'string') checkType('_formatLink', 2, display, 'string', true) link = removeInitialColon(link) local namespace = p.findNamespaceId(link, false) local colon if namespace == 6 or namespace == 14 then colon = ':' else colon = end -- Find whether a faux display value has been added with the | magic -- word. if not display then local prePipe, postPipe = link:match('^(.-)|(.*)$') link = prePipe or link display = postPipe end -- Find the display value. if not display then local page, section = link:match('^(.-)#(.*)$') if page then display = page .. ' § ' .. section end end -- Assemble the link. if display then return string.format('%s', colon, link, display) else return string.format('%s%s', colon, link) end end


-- Hatnote -- -- Produces standard hatnote text. Implements the template.


function p.hatnote(frame) local args = getArgs(frame) local s = args[1] local options = {} if not s then return p.makeWikitextError( 'no text specified', 'Template:Hatnote#Errors', args.category ) end options.extraclasses = args.extraclasses options.selfref = args.selfref return p._hatnote(s, options) end

function p._hatnote(s, options) checkType('_hatnote', 1, s, 'string') checkType('_hatnote', 2, options, 'table', true) local classes = {'hatnote'} local extraclasses = options.extraclasses local selfref = options.selfref if type(extraclasses) == 'string' then classes[#classes + 1] = extraclasses end if selfref then classes[#classes + 1] = 'selfref' end return string.format( '
%s
', table.concat(classes, ' '), s )

end

return p
  1. ^
  2. ^ a b c
  3. ^
  4. ^
  5. ^
  6. ^
  7. ^
  8. ^ http://www.comingsoon.net/movies/news/18804-haunted-high-school-musical-to-the-big-screen
  9. ^
  10. ^
  11. ^
  12. ^
  13. ^
  14. ^
  15. ^
  16. ^
  17. ^
  18. ^
  19. ^
  20. ^
  21. ^
  22. ^
  23. ^
  24. ^
  25. ^
  26. ^
  27. ^
  28. ^ Box office report: Pitch Perfect 2 earns biggest movie musical opening ever, Entertainment Weekly; accessed August 1, 2015
  29. ^
  30. ^
  31. ^
  32. ^
  33. ^
  34. ^
  35. ^
  36. ^

External links

This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
 
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
 
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.
 



Copyright © World Library Foundation. All rights reserved. eBooks from World eBook Library are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.