pax_global_header00006660000000000000000000000064121032000700014473gustar00rootroot0000000000000052 comment=04faf5d110d4117984fd110f293f1991b19481a7 mediawiki-extensions-OpenGraphMeta-0.2012/000075500000000000000000000000001210320007000204055ustar00rootroot00000000000000mediawiki-extensions-OpenGraphMeta-0.2012/.gear/000075500000000000000000000000001210320007000214015ustar00rootroot00000000000000mediawiki-extensions-OpenGraphMeta-0.2012/.gear/mediawiki-extensions-OpenGraphMeta.spec000064400000000000000000000020331210320007000311030ustar00rootroot00000000000000%define oname OpenGraphMeta Name: mediawiki-extensions-%oname Version: 0.2012 Release: alt1 Summary: OpenGraphMeta provides OpenGraph protocol metadata for articles on the wiki for 3rd parties like Facebook to extract License: GPLv2+ Group: Networking/WWW Url: http://www.mediawiki.org/wiki/Extension:%oname Packager: Vitaly Lipatov BuildArch: noarch BuildPreReq: rpm-build-mediawiki >= 0.3 Requires: mediawiki-common >= 1.15.1-alt4 # https://gerrit.wikimedia.org/r/p/mediawiki/extensions/OpenGraphMeta.git Source: %name-%version.tar %description OpenGraphMeta provides OpenGraph protocol metadata for articles on the wiki for 3rd parties like Facebook to extract. The primary use for this extension is for any wiki that provides its users a button to "Like" pages on the wiki, especially if the wiki uses a custom default skin. %prep %setup %install %mediawiki_ext_install 50 %oname %files -f %oname.files %changelog * Sat Feb 02 2013 Vitaly Lipatov 0.2012-alt1 - initial build for ALT Linux Sisyphus mediawiki-extensions-OpenGraphMeta-0.2012/.gear/rules000064400000000000000000000000731210320007000224560ustar00rootroot00000000000000tar: . spec: .gear/mediawiki-extensions-OpenGraphMeta.spec mediawiki-extensions-OpenGraphMeta-0.2012/.gitignore000064400000000000000000000000321210320007000223700ustar00rootroot00000000000000.svn *~ *.kate-swp .*.swp mediawiki-extensions-OpenGraphMeta-0.2012/.gitreview000064400000000000000000000002021210320007000224050ustar00rootroot00000000000000[gerrit] host=gerrit.wikimedia.org port=29418 project=mediawiki/extensions/OpenGraphMeta.git defaultbranch=master defaultrebase=0 mediawiki-extensions-OpenGraphMeta-0.2012/OpenGraphMeta.i18n.php000064400000000000000000000166441210320007000244010ustar00rootroot00000000000000 "Adds OpenGraph meta tags used by Facebook's Like button", ); /** Message documentation (Message documentation) * @author Shirayuki * @author The Evil IP address */ $messages['qqq'] = array( 'opengraphmeta-desc' => '{{desc|name=Open Graph Meta|url=http://www.mediawiki.org/wiki/Extension:OpenGraphMeta}}', ); /** Arabic (العربية) * @author DRIHEM */ $messages['ar'] = array( 'opengraphmeta-desc' => 'يضيف وسم ميتا OpenGraph المستخدم من طرف زر أحب الخاص بالفايسبوك', ); /** Asturian (asturianu) * @author Xuacu */ $messages['ast'] = array( 'opengraphmeta-desc' => 'Amiesta les meta etiquetes OpenGraph qu\'usa el botón "Presta" de Facebook', ); /** Belarusian (Taraškievica orthography) (беларуская (тарашкевіца)‎) * @author EugeneZelenko * @author Jim-by */ $messages['be-tarask'] = array( 'opengraphmeta-desc' => 'Дадае мэта-тэгі OpenGraph, якія выкарыстоўваюцца кнопкай «Падабаецца» ў Facebook', ); /** Bulgarian (български) * @author DCLXVI */ $messages['bg'] = array( 'opengraphmeta-desc' => 'Добавя мета таговете от OpenGraph, използвани от бутона "Харесва ми" на Facebook', ); /** Breton (brezhoneg) * @author Fulup */ $messages['br'] = array( 'opengraphmeta-desc' => 'Ouzhpennañ a ra meta-tikedennoù OpenGraph implijet gant bouton "Plijout a ra din" Facebook', ); /** Bosnian (bosanski) * @author CERminator */ $messages['bs'] = array( 'opengraphmeta-desc' => 'Dodaje OpenGraph meta oznake koje se koriste kod dugmeta Like na Facebooku', ); /** German (Deutsch) * @author Kghbln * @author The Evil IP address */ $messages['de'] = array( 'opengraphmeta-desc' => 'Fügt „OpenGraph“-Meta-Elemente hinzu, die von Facebooks Schaltfläche „Gefällt mir“ verwendet werden', ); /** Lower Sorbian (dolnoserbski) * @author Michawiki */ $messages['dsb'] = array( 'opengraphmeta-desc' => 'Pśidawa metatoflicki OpenGraph, kótarež wužywaju se pśez tłocašk "Spodoba se mi" we FaceBooku', ); /** Spanish (español) * @author Armando-Martin */ $messages['es'] = array( 'opengraphmeta-desc' => 'Añade meta-etiquetas OpenGraph empleadas por el botón "Me gusta" de Facebook', ); /** French (français) * @author Peter17 */ $messages['fr'] = array( 'opengraphmeta-desc' => 'Ajoute des méta-étiquettes OpenGraph utilisées par le bouton « j’aime » de Facebook', ); /** Galician (galego) * @author Toliño */ $messages['gl'] = array( 'opengraphmeta-desc' => 'Engade etiquetas OpenGraph empregadas polo botón "Gústame" do Facebook', ); /** Swiss German (Alemannisch) * @author Als-Holder */ $messages['gsw'] = array( 'opengraphmeta-desc' => 'Fiegt „OpenGraph“-Meta-Elemänt yy, wu uf FaceBook in dr Schaltflechi „Gfallt mer“ brucht wäre', ); /** Hebrew (עברית) * @author YaronSh */ $messages['he'] = array( 'opengraphmeta-desc' => 'הוספת תגיות על של OpenGraph המשמשות את לחצן ה"אהבתי" של Facebook', ); /** Upper Sorbian (hornjoserbsce) * @author Michawiki */ $messages['hsb'] = array( 'opengraphmeta-desc' => 'Přidawa metafafličku OpenGraph, kotrež so přez tłóčatko "Lubi so mi" we FaceBooku wužiwaja', ); /** Interlingua (interlingua) * @author McDutchie */ $messages['ia'] = array( 'opengraphmeta-desc' => 'Adde meta-etiquettas OpenGraph usate per le button "Like" (Me place) de Facebook', ); /** Indonesian (Bahasa Indonesia) * @author IvanLanin */ $messages['id'] = array( 'opengraphmeta-desc' => 'Menambahkan tag meta OpenGraph untuk digunakan oleh tombol "Suka" FaceBook', ); /** Italian (italiano) * @author Beta16 */ $messages['it'] = array( 'opengraphmeta-desc' => 'Aggiunge i meta-tag OpenGraph usati dal pulsante "Mi piace" di Facebook', ); /** Japanese (日本語) * @author Shirayuki * @author 青子守歌 */ $messages['ja'] = array( 'opengraphmeta-desc' => 'Facebook の「いいね!」ボタンで使用される OpenGraph メタタグを追加する', ); /** Korean (한국어) * @author 아라 */ $messages['ko'] = array( 'opengraphmeta-desc' => '페이스북의 좋아요 버튼에 사용되는 OpenGraph 메타 태그 추가', ); /** Colognian (Ripoarisch) * @author Purodha */ $messages['ksh'] = array( 'opengraphmeta-desc' => 'Deiht de OpenGraph meta tags em Wiki dobei, di vum „Jefällt mer“-Knopp vun Facebook jebruch wääde.', ); /** Luxembourgish (Lëtzebuergesch) * @author Robby */ $messages['lb'] = array( 'opengraphmeta-desc' => 'Setzt "OpenGraph"-Meta-Tags derbäi, déi vum Facebook-Knäppchen "Like" benotzt ginn', ); /** Macedonian (македонски) * @author Bjankuloski06 */ $messages['mk'] = array( 'opengraphmeta-desc' => 'Додава метаознаки за OpenGraph што ги користи копчето „Ми се допаѓа“ на Facebook', ); /** Malay (Bahasa Melayu) * @author Anakmalaysia */ $messages['ms'] = array( 'opengraphmeta-desc' => 'Membubuh tag meta OpenGraph yang digunakan oleh butang Suka Facebook', ); /** Norwegian Bokmål (norsk (bokmål)‎) * @author Nghtwlkr */ $messages['nb'] = array( 'opengraphmeta-desc' => 'Legger til OpenGraph-meta-merkelapper brukt av Facebooks like-knapp', ); /** Dutch (Nederlands) * @author Siebrand */ $messages['nl'] = array( 'opengraphmeta-desc' => 'Voegt metalabels voor OpenGraph toe die door Facebookknop "Vind ik leuk" worden gebruikt', ); /** Polish (polski) * @author Sp5uhe */ $messages['pl'] = array( 'opengraphmeta-desc' => 'Dodaje meta znacznik OpenGraph wykorzystywany przez FaceBookowy przycisk „Lubię to”', ); /** Piedmontese (Piemontèis) * @author Borichèt * @author Dragonòt */ $messages['pms'] = array( 'opengraphmeta-desc' => 'A gionta le meta-tichëtte OpenGraph dovrà dal boton Am pias ëd Facebook', ); /** Portuguese (português) * @author Hamilton Abreu */ $messages['pt'] = array( 'opengraphmeta-desc' => 'Adiciona as meta tags OpenGraph usadas pelo botão Like do Facebook', ); /** Brazilian Portuguese (português do Brasil) * @author Giro720 */ $messages['pt-br'] = array( 'opengraphmeta-desc' => 'Adiciona as meta tags OpenGraph usadas pelo botão Like do Facebook', ); /** tarandíne (tarandíne) * @author Joetaras */ $messages['roa-tara'] = array( 'opengraphmeta-desc' => "Aggiunge meta tag OpenGraph ausate da 'u buttone de Facebook Me Piace", ); /** Russian (русский) * @author Александр Сигачёв */ $messages['ru'] = array( 'opengraphmeta-desc' => 'Добавляет мета-теги OpenGraph, используемые кнопкой Like FaceBook', ); /** Tagalog (Tagalog) * @author AnakngAraw */ $messages['tl'] = array( 'opengraphmeta-desc' => 'Nagdaragdag ng mga tatak ng meta ng OpenGraph na ginagamit ng pindutang Like ng Facebook', ); /** Ukrainian (українська) * @author Base */ $messages['uk'] = array( 'opengraphmeta-desc' => 'Додає мета-теґи OpenGraph, що використовуються кнопкою Like Facebook', ); /** Simplified Chinese (中文(简体)‎) * @author Yfdyh000 */ $messages['zh-hans'] = array( 'opengraphmeta-desc' => '增加 OpenGraph 元标签以供 Facebook 的 Like 按钮使用', ); mediawiki-extensions-OpenGraphMeta-0.2012/OpenGraphMeta.magic.php000064400000000000000000000035411210320007000246720ustar00rootroot00000000000000 array( 0, 'setmainimage' ), ); /** Arabic (العربية) */ $magicWords['ar'] = array( 'setmainimage' => array( 0, 'ضبط_صورة_رئيسية' ), ); /** German (Deutsch) */ $magicWords['de'] = array( 'setmainimage' => array( 0, 'setze_hauptbild' ), ); /** Zazaki (Zazaki) */ $magicWords['diq'] = array( 'setmainimage' => array( 0, 'sazêserêresiman' ), ); /** Persian (فارسی) */ $magicWords['fa'] = array( 'setmainimage' => array( 0, 'تنظیم_نگاره_اصلی' ), ); /** Korean (한국어) */ $magicWords['ko'] = array( 'setmainimage' => array( 0, '주그림설정' ), ); /** Macedonian (македонски) */ $magicWords['mk'] = array( 'setmainimage' => array( 0, 'поставиглавнастраница' ), ); /** Malayalam (മലയാളം) */ $magicWords['ml'] = array( 'setmainimage' => array( 0, 'പ്രധാനചിത്രംസജ്ജീകരിക്കൽ' ), ); /** Dutch (Nederlands) */ $magicWords['nl'] = array( 'setmainimage' => array( 0, 'hoofdafbeeldinginstellen' ), ); /** Russian (русский) */ $magicWords['ru'] = array( 'setmainimage' => array( 0, 'установитьглавноеизображение', 'установить_главное_изображение' ), ); /** Serbian (Cyrillic script) (српски (ћирилица)‎) */ $magicWords['sr-ec'] = array( 'setmainimage' => array( 0, 'поставиглавнуслику', 'постави_главну_слику' ), ); /** Serbian (Latin script) (srpski (latinica)‎) */ $magicWords['sr-el'] = array( 'setmainimage' => array( 0, 'postavi_glavnu_sliku' ), ); /** Ukrainian (українська) */ $magicWords['uk'] = array( 'setmainimage' => array( 0, 'встановити_головне_зображення' ), );mediawiki-extensions-OpenGraphMeta-0.2012/OpenGraphMeta.php000064400000000000000000000105601210320007000236120ustar00rootroot00000000000000 * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ if ( !defined( 'MEDIAWIKI' ) ) die( "This is an extension to the MediaWiki package and cannot be run standalone." ); $wgExtensionCredits['parserhook'][] = array ( "path" => __FILE__, "name" => "OpenGraphMeta", "author" => "[http://mediawiki.org/wiki/User:Dantman Daniel Friesen]", 'descriptionmsg' => 'opengraphmeta-desc', 'url' => 'https://www.mediawiki.org/wiki/Extension:OpenGraphMeta', ); $dir = dirname( __FILE__ ); $wgExtensionMessagesFiles['OpenGraphMetaMagic'] = $dir . '/OpenGraphMeta.magic.php'; $wgExtensionMessagesFiles['OpenGraphMeta'] = $dir . '/OpenGraphMeta.i18n.php'; $wgHooks['ParserFirstCallInit'][] = 'efOpenGraphMetaParserInit'; function efOpenGraphMetaParserInit( $parser ) { $parser->setFunctionHook( 'setmainimage', 'efSetMainImagePF' ); return true; } function efSetMainImagePF( $parser, $mainimage ) { $parserOutput = $parser->getOutput(); if ( isset($parserOutput->eHasMainImageAlready) && $parserOutput->eHasMainImageAlready ) return $mainimage; $file = Title::newFromText( $mainimage, NS_FILE ); $parserOutput->addOutputHook( 'setmainimage', array( 'dbkey' => $file->getDBkey() ) ); $parserOutput->eHasMainImageAlready = true; return $mainimage; } $wgParserOutputHooks['setmainimage'] = 'efSetMainImagePH'; function efSetMainImagePH( $out, $parserOutput, $data ) { $out->mMainImage = wfFindFile( Title::newFromDBkey($data['dbkey'], NS_FILE) ); } $wgHooks['BeforePageDisplay'][] = 'efOpenGraphMetaPageHook'; function efOpenGraphMetaPageHook( &$out, &$sk ) { global $wgLogo, $wgSitename, $wgXhtmlNamespaces, $egFacebookAppId, $egFacebookAdmins; $wgXhtmlNamespaces["og"] = "http://opengraphprotocol.org/schema/"; $title = $out->getTitle(); $isMainpage = $title->isMainPage(); $meta = array(); if ( $isMainpage ) { $meta["og:type"] = "website"; $meta["og:title"] = $wgSitename; } else { $meta["og:type"] = "article"; $meta["og:site_name"] = $wgSitename; // Try to chose the most appropriate title for showing in news feeds. if ( ( defined('NS_BLOG_ARTICLE') && $title->getNamespace() == NS_BLOG_ARTICLE ) || ( defined('NS_BLOG_ARTICLE_TALK') && $title->getNamespace() == NS_BLOG_ARTICLE_TALK ) ){ $meta["og:title"] = $title->getSubpageText(); } else { $meta["og:title"] = $title->getText(); } } if ( isset( $out->mMainImage ) && ( $out->mMainImage !== false ) ) { if( is_object( $out->mMainImage ) ){ $meta["og:image"] = wfExpandUrl($out->mMainImage->createThumb(100*3, 100)); } else { // In some edge-cases we won't have defined an object but rather a full URL. $meta["og:image"] = $out->mMainImage; } } elseif ( $isMainpage ) { $meta["og:image"] = wfExpandUrl($wgLogo); } if ( isset($out->mDescription) ) { // set by Description2 extension, install it if you want proper og:description support $meta["og:description"] = $out->mDescription; } $meta["og:url"] = $title->getFullURL(); if ( $egFacebookAppId ) { $meta["fb:app_id"] = $egFacebookAppId; } if ( $egFacebookAdmins ) { $meta["fb:admins"] = $egFacebookAdmins; } foreach( $meta as $property => $value ) { if ( $value ) { if ( isset( OutputPage::$metaAttrPrefixes ) && isset( OutputPage::$metaAttrPrefixes['property'] ) ) { $out->addMeta( "property:$property", $value ); } else { $out->addHeadItem("meta:property:$property", " ".Html::element( 'meta', array( 'property' => $property, 'content' => $value ) )."\n"); } } } return true; } $egFacebookAppId = null; $egFacebookAdmins = null;