diff options
Diffstat (limited to 'skins/CologneBlue')
134 files changed, 2483 insertions, 0 deletions
diff --git a/skins/CologneBlue/COPYING b/skins/CologneBlue/COPYING new file mode 100644 index 0000000..d159169 --- /dev/null +++ b/skins/CologneBlue/COPYING @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + <one line to give the program's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + 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. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + <signature of Ty Coon>, 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/skins/CologneBlue/CologneBlue.php b/skins/CologneBlue/CologneBlue.php new file mode 100644 index 0000000..9600151 --- /dev/null +++ b/skins/CologneBlue/CologneBlue.php @@ -0,0 +1,14 @@ +<?php + +if ( function_exists( 'wfLoadSkin' ) ) { + wfLoadSkin( 'CologneBlue' ); + // Keep i18n globals so mergeMessageFileList.php doesn't break + $wgMessagesDirs['CologneBlue'] = __DIR__ . '/i18n'; + /* wfWarn( + 'Deprecated PHP entry point used for CologneBlue skin. Please use wfLoadSkin instead, ' . + 'see https://www.mediawiki.org/wiki/Extension_registration for more details.' + ); */ + return true; +} else { + die( 'This version of the CologneBlue skin requires MediaWiki 1.25+' ); +} diff --git a/skins/CologneBlue/Gruntfile.js b/skins/CologneBlue/Gruntfile.js new file mode 100644 index 0000000..9c56558 --- /dev/null +++ b/skins/CologneBlue/Gruntfile.js @@ -0,0 +1,20 @@ +/*jshint node:true */ +module.exports = function ( grunt ) { + grunt.loadNpmTasks( 'grunt-banana-checker' ); + grunt.loadNpmTasks( 'grunt-jsonlint' ); + + grunt.initConfig( { + banana: { + all: 'i18n/' + }, + jsonlint: { + all: [ + '**/*.json', + '!node_modules/**' + ] + } + } ); + + grunt.registerTask( 'test', [ 'jsonlint', 'banana' ] ); + grunt.registerTask( 'default', 'test' ); +}; diff --git a/skins/CologneBlue/SkinCologneBlue.php b/skins/CologneBlue/SkinCologneBlue.php new file mode 100644 index 0000000..7a07c21 --- /dev/null +++ b/skins/CologneBlue/SkinCologneBlue.php @@ -0,0 +1,649 @@ +<?php +/** + * Cologne Blue: A nicer-looking alternative to Standard. + * + * 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. + * http://www.gnu.org/copyleft/gpl.html + * + * @todo document + * @file + * @ingroup Skins + */ + +if ( !defined( 'MEDIAWIKI' ) ) { + die( -1 ); +} + +/** + * @todo document + * @ingroup Skins + */ +class SkinCologneBlue extends SkinTemplate { + public $skinname = 'cologneblue'; + public $template = 'CologneBlueTemplate'; + + /** + * @param OutputPage $out + */ + function setupSkinUserCss( OutputPage $out ) { + parent::setupSkinUserCss( $out ); + $out->addModuleStyles( 'mediawiki.legacy.oldshared' ); + $out->addModuleStyles( 'skins.cologneblue' ); + } + + /** + * Override langlink formatting behavior not to uppercase the language names. + * See otherLanguages() in CologneBlueTemplate. + * @param string $name + * @return string + */ + function formatLanguageName( $name ) { + return $name; + } +} + +class CologneBlueTemplate extends BaseTemplate { + function execute() { + // Suppress warnings to prevent notices about missing indexes in $this->data + wfSuppressWarnings(); + $this->html( 'headelement' ); + echo $this->beforeContent(); + $this->html( 'bodytext' ); + echo "\n"; + echo $this->afterContent(); + $this->html( 'dataAfterContent' ); + $this->printTrail(); + echo "\n</body></html>"; + wfRestoreWarnings(); + } + + /** + * Language/charset variant links for classic-style skins + * @return string + */ + function variantLinks() { + $s = array(); + + $variants = $this->data['content_navigation']['variants']; + + foreach ( $variants as $key => $link ) { + $s[] = $this->makeListItem( $key, $link, array( 'tag' => 'span' ) ); + } + + return $this->getSkin()->getLanguage()->pipeList( $s ); + } + + function otherLanguages() { + if ( $this->config->get( 'HideInterlanguageLinks' ) ) { + return ""; + } + + $html = ''; + + // We override SkinTemplate->formatLanguageName() in SkinCologneBlue + // not to capitalize the language names. + $language_urls = $this->data['language_urls']; + if ( !empty( $language_urls ) ) { + $s = array(); + foreach ( $language_urls as $key => $data ) { + $s[] = $this->makeListItem( $key, $data, array( 'tag' => 'span' ) ); + } + + $html = wfMessage( 'otherlanguages' )->text() + . wfMessage( 'colon-separator' )->text() + . $this->getSkin()->getLanguage()->pipeList( $s ); + } + + $html .= $this->renderAfterPortlet( 'lang' ); + + return $html; + } + + /** + * @param string $name + */ + protected function renderAfterPortlet( $name ) { + $content = ''; + Hooks::run( 'BaseTemplateAfterPortlet', array( $this, $name, &$content ) ); + + $html = $content !== '' ? "<div class='after-portlet after-portlet-$name'>$content</div>" : ''; + + return $html; + } + + function pageTitleLinks() { + $s = array(); + $footlinks = $this->getFooterLinks(); + + foreach ( $footlinks['places'] as $item ) { + $s[] = $this->data[$item]; + } + + return $this->getSkin()->getLanguage()->pipeList( $s ); + } + + /** + * Used in bottomLinks() to eliminate repetitive code. + * + * @param string $key Key to be passed to makeListItem() + * @param array $navlink Navlink suitable for processNavlinkForDocument() + * @param string $message Key of the message to use in place of standard text + * + * @return string + */ + function processBottomLink( $key, $navlink, $message = null ) { + if ( !$navlink ) { + // Empty navlinks might be passed. + return null; + } + + if ( $message ) { + $navlink['text'] = wfMessage( $message )->escaped(); + } + + return $this->makeListItem( + $key, + $this->processNavlinkForDocument( $navlink ), + array( 'tag' => 'span' ) + ); + } + + function bottomLinks() { + $toolbox = $this->getToolbox(); + $content_nav = $this->data['content_navigation']; + + $lines = array(); + + if ( $this->getSkin()->getOutput()->isArticleRelated() ) { + // First row. Regular actions. + $element = array(); + + $editLinkMessage = $this->getSkin()->getTitle()->exists() ? 'editthispage' : 'create-this-page'; + $element[] = $this->processBottomLink( 'edit', $content_nav['views']['edit'], $editLinkMessage ); + $element[] = $this->processBottomLink( + 'viewsource', + $content_nav['views']['viewsource'], + 'viewsource' + ); + + $element[] = $this->processBottomLink( + 'watch', + $content_nav['actions']['watch'], + 'watchthispage' + ); + $element[] = $this->processBottomLink( + 'unwatch', + $content_nav['actions']['unwatch'], + 'unwatchthispage' + ); + + $element[] = $this->talkLink(); + + $element[] = $this->processBottomLink( 'history', $content_nav['views']['history'], 'history' ); + $element[] = $this->processBottomLink( 'info', $toolbox['info'] ); + $element[] = $this->processBottomLink( 'whatlinkshere', $toolbox['whatlinkshere'] ); + $element[] = $this->processBottomLink( 'recentchangeslinked', $toolbox['recentchangeslinked'] ); + + $element[] = $this->processBottomLink( 'contributions', $toolbox['contributions'] ); + $element[] = $this->processBottomLink( 'emailuser', $toolbox['emailuser'] ); + + $lines[] = $this->getSkin()->getLanguage()->pipeList( array_filter( $element ) ); + + // Second row. Privileged actions. + $element = array(); + + $element[] = $this->processBottomLink( + 'delete', + $content_nav['actions']['delete'], + 'deletethispage' + ); + $element[] = $this->processBottomLink( + 'undelete', + $content_nav['actions']['undelete'], + 'undeletethispage' + ); + + $element[] = $this->processBottomLink( + 'protect', + $content_nav['actions']['protect'], + 'protectthispage' + ); + $element[] = $this->processBottomLink( + 'unprotect', + $content_nav['actions']['unprotect'], + 'unprotectthispage' + ); + + $element[] = $this->processBottomLink( 'move', $content_nav['actions']['move'], 'movethispage' ); + + $lines[] = $this->getSkin()->getLanguage()->pipeList( array_filter( $element ) ); + + // Third row. Language links. + $lines[] = $this->otherLanguages(); + } + + return implode( array_filter( $lines ), "<br />\n" ) . "<br />\n"; + } + + function talkLink() { + $title = $this->getSkin()->getTitle(); + + if ( $title->getNamespace() == NS_SPECIAL ) { + // No discussion links for special pages + return ""; + } + + $companionTitle = $title->isTalkPage() ? $title->getSubjectPage() : $title->getTalkPage(); + $companionNamespace = $companionTitle->getNamespace(); + + // TODO these messages are only be used by CologneBlue, + // kill and replace with something more sensibly named? + $nsToMessage = array( + NS_MAIN => 'articlepage', + NS_USER => 'userpage', + NS_PROJECT => 'projectpage', + NS_FILE => 'imagepage', + NS_MEDIAWIKI => 'mediawikipage', + NS_TEMPLATE => 'templatepage', + NS_HELP => 'viewhelppage', + NS_CATEGORY => 'categorypage', + NS_FILE => 'imagepage', + ); + + // Find out the message to use for link text. Use either the array above or, + // for non-talk pages, a generic "discuss this" message. + // Default is the same as for main namespace. + if ( isset( $nsToMessage[$companionNamespace] ) ) { + $message = $nsToMessage[$companionNamespace]; + } else { + $message = $companionTitle->isTalkPage() ? 'talkpage' : 'articlepage'; + } + + // Obviously this can't be reasonable and just return the key for talk + // namespace, only for content ones. Thus we have to mangle it in + // exactly the same way SkinTemplate does. (bug 40805) + $key = $companionTitle->getNamespaceKey( '' ); + if ( $companionTitle->isTalkPage() ) { + $key = ( $key == 'main' ? 'talk' : $key . "_talk" ); + } + + // Use the regular navigational link, but replace its text. Everything else stays unmodified. + $namespacesLinks = $this->data['content_navigation']['namespaces']; + + return $this->processBottomLink( $message, $namespacesLinks[$key], $message ); + } + + /** + * Takes a navigational link generated by SkinTemplate in whichever way + * and mangles attributes unsuitable for repeated use. In particular, this + * modifies the ids and removes the accesskeys. This is necessary to be + * able to use the same navlink twice, e.g. in sidebar and in footer. + * + * @param array $navlink Navigational link generated by SkinTemplate + * @param mixed $idPrefix Prefix to add to id of this navlink. If false, id + * is removed entirely. Default is 'cb-'. + */ + function processNavlinkForDocument( $navlink, $idPrefix = 'cb-' ) { + if ( $navlink['id'] ) { + $navlink['single-id'] = $navlink['id']; // to allow for tooltip generation + $navlink['tooltiponly'] = true; // but no accesskeys + + // mangle or remove the id + if ( $idPrefix === false ) { + unset( $navlink['id'] ); + } else { + $navlink['id'] = $idPrefix . $navlink['id']; + } + } + + return $navlink; + } + + /** + * @return string + */ + function beforeContent() { + ob_start(); + ?> + <div id="content"> + <div id="topbar"> + <p id="sitetitle" role="banner"> + <a href="<?php echo htmlspecialchars( $this->data['nav_urls']['mainpage']['href'] ) ?>"> + <?php echo wfMessage( 'sitetitle' )->escaped() ?> + </a> + </p> + + <p id="sitesub"><?php echo wfMessage( 'sitesubtitle' )->escaped() ?></p> + + <div id="linkcollection" role="navigation"> + <div id="langlinks"><?php echo str_replace( '<br />', '', $this->otherLanguages() ) ?></div> + <?php echo $this->getSkin()->getCategories() ?> + <div id="titlelinks"><?php echo $this->pageTitleLinks() ?></div> + <?php + if ( $this->data['newtalk'] ) { + ?> + <div class="usermessage"><strong><?php echo $this->data['newtalk'] ?></strong></div> + <?php + } + ?> + </div> + </div> + <div id="article" class="mw-body" role="main"> + <?php + if ( $this->getSkin()->getSiteNotice() ) { + ?> + <div id="siteNotice"><?php echo $this->getSkin()->getSiteNotice() ?></div> + <?php + } + ?> + <?php echo $this->getIndicators(); ?> + <h1 id="firstHeading" lang="<?php + $this->data['pageLanguage'] = $this->getSkin()->getTitle()->getPageViewLanguage()->getHtmlCode(); + $this->text( 'pageLanguage' ); + ?>"><?php echo $this->data['title'] ?></h1> + <?php + if ( $this->translator->translate( 'tagline' ) ) { + ?> + <p class="tagline"><?php + echo htmlspecialchars( $this->translator->translate( 'tagline' ) ) + ?></p> + <?php + } + ?> + <?php + if ( $this->getSkin()->getOutput()->getSubtitle() ) { + ?> + <p class="subtitle"><?php echo $this->getSkin()->getOutput()->getSubtitle() ?></p> + <?php + } + ?> + <?php + if ( $this->getSkin()->subPageSubtitle() ) { + ?> + <p class="subpages"><?php echo $this->getSkin()->subPageSubtitle() ?></p> + <?php + } + ?> + <?php + $s = ob_get_contents(); + ob_end_clean(); + + return $s; + } + + /** + * @return string + */ + function afterContent() { + ob_start(); + ?> + </div> + <div id="footer"> + <div id="footer-navigation" role="navigation"> + <?php + // Page-related links + echo $this->bottomLinks(); + echo "\n<br />"; + + // Footer and second searchbox + echo $this->getSkin()->getLanguage()->pipeList( array( + $this->getSkin()->mainPageLink(), + $this->getSkin()->aboutLink(), + $this->searchForm( 'footer' ) + ) ); + ?> + </div> + <div id="footer-info" role="contentinfo"> + <?php + // Standard footer info + $footlinks = $this->getFooterLinks(); + if ( $footlinks['info'] ) { + foreach ( $footlinks['info'] as $item ) { + echo $this->data[$item] . ' '; + } + } + ?> + </div> + </div> + </div> + <div id="mw-navigation"> + <h2><?php echo wfMessage( 'navigation-heading' )->escaped() ?></h2> + + <div id="toplinks" role="navigation"> + <p id="syslinks"><?php echo $this->sysLinks() ?></p> + + <p id="variantlinks"><?php echo $this->variantLinks() ?></p> + </div> + <?php echo $this->quickBar() ?> + </div> + <?php + $s = ob_get_contents(); + ob_end_clean(); + + return $s; + } + + /** + * @return string + */ + function sysLinks() { + $s = array( + $this->getSkin()->mainPageLink(), + Linker::linkKnown( + Title::newFromText( wfMessage( 'aboutpage' )->inContentLanguage()->text() ), + wfMessage( 'about' )->text() + ), + Linker::makeExternalLink( + Skin::makeInternalOrExternalUrl( wfMessage( 'helppage' )->inContentLanguage()->text() ), + wfMessage( 'help' )->text(), + false + ), + Linker::linkKnown( + Title::newFromText( wfMessage( 'faqpage' )->inContentLanguage()->text() ), + wfMessage( 'faq' )->text() + ), + ); + + $personalUrls = $this->getPersonalTools(); + foreach ( array( 'logout', 'createaccount', 'login' ) as $key ) { + if ( $personalUrls[$key] ) { + $s[] = $this->makeListItem( $key, $personalUrls[$key], array( 'tag' => 'span' ) ); + } + } + + return $this->getSkin()->getLanguage()->pipeList( $s ); + } + + /** + * Adds CologneBlue-specific items to the sidebar: qbedit, qbpageoptions and qbmyoptions menus. + * + * @param array $bar Sidebar data + * @return array Modified sidebar data + */ + function sidebarAdditions( $bar ) { + // "This page" and "Edit" menus + // We need to do some massaging here... we reuse all of the items, + // except for $...['views']['view'], as $...['namespaces']['main'] and + // $...['namespaces']['talk'] together serve the same purpose. We also + // don't use $...['variants'], these are displayed in the top menu. + $content_navigation = $this->data['content_navigation']; + $qbpageoptions = array_merge( + $content_navigation['namespaces'], + array( + 'history' => $content_navigation['views']['history'], + 'watch' => $content_navigation['actions']['watch'], + 'unwatch' => $content_navigation['actions']['unwatch'], + ) + ); + $content_navigation['actions']['watch'] = null; + $content_navigation['actions']['unwatch'] = null; + $qbedit = array_merge( + array( + 'edit' => $content_navigation['views']['edit'], + 'addsection' => $content_navigation['views']['addsection'], + ), + $content_navigation['actions'] + ); + + // Personal tools ("My pages") + $qbmyoptions = $this->getPersonalTools(); + foreach ( array( 'logout', 'createaccount', 'login', ) as $key ) { + $qbmyoptions[$key] = null; + } + + // Use the closest reasonable name + $bar['cactions'] = $qbedit; + $bar['pageoptions'] = $qbpageoptions; // this is a non-standard portlet name, but nothing fits + $bar['personal'] = $qbmyoptions; + + return $bar; + } + + /** + * Compute the sidebar + * @access private + * + * @return string + */ + function quickBar() { + // Massage the sidebar. We want to: + // * place SEARCH at the beginning + // * add new portlets before TOOLBOX (or at the end, if it's missing) + // * remove LANGUAGES (langlinks are displayed elsewhere) + $orig_bar = $this->data['sidebar']; + $bar = array(); + $hasToolbox = false; + + // Always display search first + $bar['SEARCH'] = true; + // Copy everything except for langlinks, inserting new items before toolbox + foreach ( $orig_bar as $heading => $data ) { + if ( $heading == 'TOOLBOX' ) { + // Insert the stuff + $bar = $this->sidebarAdditions( $bar ); + $hasToolbox = true; + } + + if ( $heading != 'LANGUAGES' ) { + $bar[$heading] = $data; + } + } + // If toolbox is missing, add our items at the end + if ( !$hasToolbox ) { + $bar = $this->sidebarAdditions( $bar ); + } + + // Fill out special sidebar items with content + $orig_bar = $bar; + $bar = array(); + foreach ( $orig_bar as $heading => $data ) { + if ( $heading == 'SEARCH' ) { + $bar['search'] = $this->searchForm( 'sidebar' ); + } elseif ( $heading == 'TOOLBOX' ) { + $bar['tb'] = $this->getToolbox(); + } else { + $bar[$heading] = $data; + } + } + + // Output the sidebar + // CologneBlue uses custom messages for some portlets, but we should keep the ids for consistency + $idToMessage = array( + 'search' => 'qbfind', + 'navigation' => 'qbbrowse', + 'tb' => 'toolbox', + 'cactions' => 'qbedit', + 'personal' => 'qbmyoptions', + 'pageoptions' => 'qbpageoptions', + ); + + $s = "<div id='quickbar'>\n"; + + foreach ( $bar as $heading => $data ) { + // Numeric strings gets an integer when set as key, cast back - T73639 + $heading = (string)$heading; + + $portletId = Sanitizer::escapeId( "p-$heading" ); + $headingMsg = wfMessage( $idToMessage[$heading] ? $idToMessage[$heading] : $heading ); + $headingHTML = "<h3>"; + $headingHTML .= $headingMsg->exists() + ? $headingMsg->escaped() + : htmlspecialchars( $heading ); + $headingHTML .= "</h3>"; + $listHTML = ""; + + if ( is_array( $data ) ) { + // $data is an array of links + foreach ( $data as $key => $link ) { + // Can be empty due to how the sidebar additions are done + if ( $link ) { + $listHTML .= $this->makeListItem( $key, $link ); + } + } + if ( $listHTML ) { + $listHTML = "<ul>$listHTML</ul>"; + } + } else { + // $data is a HTML <ul>-list string + $listHTML = $data; + } + + if ( $listHTML ) { + $role = ( $heading == 'search' ) ? 'search' : 'navigation'; + $s .= "<div class=\"portlet\" id=\"$portletId\" " + . "role=\"$role\">\n$headingHTML\n$listHTML\n</div>\n"; + } + + $s .= $this->renderAfterPortlet( $heading ); + } + + $s .= "</div>\n"; + + return $s; + } + + /** + * @param string $label + * @return string + */ + function searchForm( $which ) { + $search = $this->getSkin()->getRequest()->getText( 'search' ); + $action = $this->data['searchaction']; + $s = "<form id=\"searchform-" . htmlspecialchars( $which ) + . "\" method=\"get\" class=\"inline\" action=\"$action\">"; + if ( $which == 'footer' ) { + $s .= wfMessage( 'qbfind' )->text() . ": "; + } + + $s .= $this->makeSearchInput( array( + 'class' => 'mw-searchInput', + 'type' => 'text', + 'size' => '14' + ) ); + $s .= ( $which == 'footer' ? " " : "<br />" ); + $s .= $this->makeSearchButton( 'go', array( 'class' => 'searchButton' ) ); + + if ( $this->config->get( 'UseTwoButtonsSearchForm' ) ) { + $s .= $this->makeSearchButton( 'fulltext', array( 'class' => 'searchButton' ) ); + } else { + $s .= '<div><a href="' . $action . '" rel="search">' + . wfMessage( 'powersearch-legend' )->escaped() . "</a></div>\n"; + } + + $s .= '</form>'; + + return $s; + } +} diff --git a/skins/CologneBlue/composer.json b/skins/CologneBlue/composer.json new file mode 100644 index 0000000..fd380fb --- /dev/null +++ b/skins/CologneBlue/composer.json @@ -0,0 +1,10 @@ +{ + "require-dev": { + "jakub-onderka/php-parallel-lint": "0.9" + }, + "scripts": { + "test": [ + "parallel-lint . --exclude node_modules --exclude vendor" + ] + } +} diff --git a/skins/CologneBlue/i18n/af.json b/skins/CologneBlue/i18n/af.json new file mode 100644 index 0000000..9bf97ed --- /dev/null +++ b/skins/CologneBlue/i18n/af.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Keulen blou" +} diff --git a/skins/CologneBlue/i18n/aln.json b/skins/CologneBlue/i18n/aln.json new file mode 100644 index 0000000..61d4569 --- /dev/null +++ b/skins/CologneBlue/i18n/aln.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "Bresta" + ] + }, + "cologneblue.css": "/* CSS i vendosun këtu ka me i prekë shfrytëzuesit e dukjes Cologne Blue */", + "cologneblue.js": "/* Çdo JavaScript këtu ka me u ngarkue për shfrytëzuesit që përdorin dukjen Cologne Blue */" +} diff --git a/skins/CologneBlue/i18n/an.json b/skins/CologneBlue/i18n/an.json new file mode 100644 index 0000000..2925c14 --- /dev/null +++ b/skins/CologneBlue/i18n/an.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Juanpabl" + ] + }, + "cologneblue.css": "/* Os estilos CSS colocaus aquí s'aplicarán ta totz os usuarios que faigan servir l'apariencia Cologne Blue */", + "cologneblue.js": "/* Qualsiquier codigo Javascript escrito aquí se cargará ta totz os usuarios que faigan servir l'apariencia Colonia azul */", + "skinname-cologneblue": "Colonia Azul (Cologne Blue)" +} diff --git a/skins/CologneBlue/i18n/ar.json b/skins/CologneBlue/i18n/ar.json new file mode 100644 index 0000000..2c9b7f8 --- /dev/null +++ b/skins/CologneBlue/i18n/ar.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Meno25", + "Khaled" + ] + }, + "cologneblue.css": "/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمي واجهة كولون بلو */", + "cologneblue.js": "/* أي جافاسكريبت هنا سيتم تحميلها للمستخدمين الذين يستعملون واجهة كولون بلو */", + "skinname-cologneblue": "كولون بلو", + "cologneblue-desc": "تصميم خفيف بالحد الأدنى من التنسيقات." +} diff --git a/skins/CologneBlue/i18n/arq.json b/skins/CologneBlue/i18n/arq.json new file mode 100644 index 0000000..65d2cde --- /dev/null +++ b/skins/CologneBlue/i18n/arq.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Bachounda" + ] + }, + "cologneblue-desc": "A lightweight skin with minimal formatting" +} diff --git a/skins/CologneBlue/i18n/arz.json b/skins/CologneBlue/i18n/arz.json new file mode 100644 index 0000000..82695dd --- /dev/null +++ b/skins/CologneBlue/i18n/arz.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Meno25" + ] + }, + "cologneblue.css": "/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمى واجهة كولون بلو */", + "cologneblue.js": "/* أى جافاسكريبت هنا ح تتحمل لليوزرز اللى بيستعملو واجهة كولون بلو */", + "skinname-cologneblue": "كولون بلو" +} diff --git a/skins/CologneBlue/i18n/ast.json b/skins/CologneBlue/i18n/ast.json new file mode 100644 index 0000000..115031f --- /dev/null +++ b/skins/CologneBlue/i18n/ast.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Xuacu" + ] + }, + "cologneblue.css": "/* Los CSS allugaos equí afeutarán a los usuarios del aspeutu Cologne Blue */", + "cologneblue.js": "/* Cualesquier JavaScript que tea equí se cargará pa los usuarios del aspeutu Cologne Blue */", + "skinname-cologneblue": "Azul Colonia", + "cologneblue-desc": "Un tema llixeru col mínimu formatu" +} diff --git a/skins/CologneBlue/i18n/av.json b/skins/CologneBlue/i18n/av.json new file mode 100644 index 0000000..2cc4277 --- /dev/null +++ b/skins/CologneBlue/i18n/av.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Gazimagomedov" + ] + }, + "cologneblue-desc": "Бищун дагьаб форматированиегун бигьаяб куцалъул тема" +} diff --git a/skins/CologneBlue/i18n/az.json b/skins/CologneBlue/i18n/az.json new file mode 100644 index 0000000..fbf09a9 --- /dev/null +++ b/skins/CologneBlue/i18n/az.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Vago" + ] + }, + "cologneblue.css": "/* Burada yerləşən CSS Cologne Blue skin istifadəçilərinə tətbiq olunur */", + "cologneblue.js": "/* Burada Cologne Blue skin istifadəçiləri üçün istənilən JavaScript yüklənəcək */", + "skinname-cologneblue": "Cologne Blue" +} diff --git a/skins/CologneBlue/i18n/ba.json b/skins/CologneBlue/i18n/ba.json new file mode 100644 index 0000000..a9c1ac8 --- /dev/null +++ b/skins/CologneBlue/i18n/ba.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Assele", + "Sagan" + ] + }, + "skinname-cologneblue": "Кёльн һағышы", + "cologneblue-desc": "Минималь форматлау булған еңел тема." +} diff --git a/skins/CologneBlue/i18n/bcc.json b/skins/CologneBlue/i18n/bcc.json new file mode 100644 index 0000000..f94cc62 --- /dev/null +++ b/skins/CologneBlue/i18n/bcc.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "نیلی کولاجن" +} diff --git a/skins/CologneBlue/i18n/be-tarask.json b/skins/CologneBlue/i18n/be-tarask.json new file mode 100644 index 0000000..e7967a3 --- /dev/null +++ b/skins/CologneBlue/i18n/be-tarask.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "Red Winged Duck" + ] + }, + "skinname-cologneblue": "Кёльнскі смутак", + "cologneblue-desc": "Лёгкая тэма афармленьня зь мінімальным фарматаваньнем" +} diff --git a/skins/CologneBlue/i18n/be.json b/skins/CologneBlue/i18n/be.json new file mode 100644 index 0000000..a4829c2 --- /dev/null +++ b/skins/CologneBlue/i18n/be.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Сіні Кёльн" +} diff --git a/skins/CologneBlue/i18n/bg.json b/skins/CologneBlue/i18n/bg.json new file mode 100644 index 0000000..973e81b --- /dev/null +++ b/skins/CologneBlue/i18n/bg.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Кьолнско синьо" +} diff --git a/skins/CologneBlue/i18n/bn.json b/skins/CologneBlue/i18n/bn.json new file mode 100644 index 0000000..2b9e689 --- /dev/null +++ b/skins/CologneBlue/i18n/bn.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Aftab1995" + ] + }, + "skinname-cologneblue": "কলোন ব্লু" +} diff --git a/skins/CologneBlue/i18n/br.json b/skins/CologneBlue/i18n/br.json new file mode 100644 index 0000000..fed61a8 --- /dev/null +++ b/skins/CologneBlue/i18n/br.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Fulup" + ] + }, + "cologneblue.css": "/* Talvezout a raio ar CSS lakaet amañ evit implijerien ar gwiskadur Glaz Kologn */", + "cologneblue.js": "/* Kement JavaScript amañ a vo karget evit an implijerien a ra gant ar gwiskadur Glaz Kologn */", + "skinname-cologneblue": "Glaz Kologn" +} diff --git a/skins/CologneBlue/i18n/bs.json b/skins/CologneBlue/i18n/bs.json new file mode 100644 index 0000000..bce812a --- /dev/null +++ b/skins/CologneBlue/i18n/bs.json @@ -0,0 +1,13 @@ +{ + "@metadata": { + "authors": [ + "CERminator", + "Kal-El", + "Srdjan m" + ] + }, + "cologneblue.css": "/* CSS umetnut ovdje uticat će na korisnike koji koriste Cologne Blue skin */", + "cologneblue.js": "/* Bilo koja JavaScript će biti učitana za sve korisnike koji koriste Cologne Blue skin */", + "skinname-cologneblue": "Kelnsko plava", + "cologneblue-desc": "Lagahna tema s minimalnim formatiranjem" +} diff --git a/skins/CologneBlue/i18n/ca.json b/skins/CologneBlue/i18n/ca.json new file mode 100644 index 0000000..897ff14 --- /dev/null +++ b/skins/CologneBlue/i18n/ca.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Colònia blava" +} diff --git a/skins/CologneBlue/i18n/ce.json b/skins/CologneBlue/i18n/ce.json new file mode 100644 index 0000000..2e71c1b --- /dev/null +++ b/skins/CologneBlue/i18n/ce.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Умар" + ] + }, + "skinname-cologneblue": "Кёльнин сингаттам" +} diff --git a/skins/CologneBlue/i18n/ckb.json b/skins/CologneBlue/i18n/ckb.json new file mode 100644 index 0000000..014b2d2 --- /dev/null +++ b/skins/CologneBlue/i18n/ckb.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Asoxor" + ] + }, + "skinname-cologneblue": "شینی کۆلۆن" +} diff --git a/skins/CologneBlue/i18n/crh-cyrl.json b/skins/CologneBlue/i18n/crh-cyrl.json new file mode 100644 index 0000000..020b8a5 --- /dev/null +++ b/skins/CologneBlue/i18n/crh-cyrl.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Кёльн асретлиги" +} diff --git a/skins/CologneBlue/i18n/crh-latn.json b/skins/CologneBlue/i18n/crh-latn.json new file mode 100644 index 0000000..4f01276 --- /dev/null +++ b/skins/CologneBlue/i18n/crh-latn.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Köln asretligi" +} diff --git a/skins/CologneBlue/i18n/cs.json b/skins/CologneBlue/i18n/cs.json new file mode 100644 index 0000000..ded73e0 --- /dev/null +++ b/skins/CologneBlue/i18n/cs.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Li-sung", + "Mormegil" + ] + }, + "cologneblue.css": "/* Zde uvedené CSS bude ovlivňovat pouze styl „Kolínská modř“ */", + "cologneblue.js": "/* JavaScript pro uživatele používající vzhled „Kolínská modř“ */", + "skinname-cologneblue": "Kolínská modř", + "cologneblue-desc": "Odlehčený vzhled s minimálním formátováním" +} diff --git a/skins/CologneBlue/i18n/cy.json b/skins/CologneBlue/i18n/cy.json new file mode 100644 index 0000000..7d34187 --- /dev/null +++ b/skins/CologneBlue/i18n/cy.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Glas Cwlen" +} diff --git a/skins/CologneBlue/i18n/da.json b/skins/CologneBlue/i18n/da.json new file mode 100644 index 0000000..57d1142 --- /dev/null +++ b/skins/CologneBlue/i18n/da.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Kølnerblå" +} diff --git a/skins/CologneBlue/i18n/de.json b/skins/CologneBlue/i18n/de.json new file mode 100644 index 0000000..d28846f --- /dev/null +++ b/skins/CologneBlue/i18n/de.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Metalhead64", + "Kghbln" + ] + }, + "cologneblue.css": "/* Das folgende CSS wird für Benutzer der Kölnisch-Blau-Benutzeroberfläche geladen. */", + "cologneblue.js": "/* Das folgende JavaScript wird für Benutzer der Kölnisch-Blau-Benutzeroberfläche geladen. */", + "skinname-cologneblue": "Kölnisch Blau", + "cologneblue-desc": "Stellt eine minimalistische Benutzeroberfläche bereit" +} diff --git a/skins/CologneBlue/i18n/diq.json b/skins/CologneBlue/i18n/diq.json new file mode 100644 index 0000000..50d0060 --- /dev/null +++ b/skins/CologneBlue/i18n/diq.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Erdemaslancan" + ] + }, + "skinname-cologneblue": "Cologne Blue" +} diff --git a/skins/CologneBlue/i18n/dsb.json b/skins/CologneBlue/i18n/dsb.json new file mode 100644 index 0000000..a7d4be9 --- /dev/null +++ b/skins/CologneBlue/i18n/dsb.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Kölnski Módry" +} diff --git a/skins/CologneBlue/i18n/el.json b/skins/CologneBlue/i18n/el.json new file mode 100644 index 0000000..502ecf2 --- /dev/null +++ b/skins/CologneBlue/i18n/el.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "Dead3y3" + ] + }, + "cologneblue.css": "/* Το τοποθετημένο εδώ CSS θα επηρεάσει χρήστες του Cologne Blue skin */", + "cologneblue.js": "/* Οποιοσδήποτε κώδικας JavaScript εδώ θα φορτωθεί για χρήστες που χρησιμοποιούν το Cologne Blue skin */" +} diff --git a/skins/CologneBlue/i18n/en.json b/skins/CologneBlue/i18n/en.json new file mode 100644 index 0000000..cb55ee9 --- /dev/null +++ b/skins/CologneBlue/i18n/en.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [] + }, + "cologneblue.css": "/* CSS placed here will affect users of the Cologne Blue skin */", + "cologneblue.js": "/* Any JavaScript here will be loaded for users using the Cologne Blue skin */", + "skinname-cologneblue": "Cologne Blue", + "cologneblue-desc": "A lightweight skin with minimal formatting" +} diff --git a/skins/CologneBlue/i18n/eo.json b/skins/CologneBlue/i18n/eo.json new file mode 100644 index 0000000..38e8e19 --- /dev/null +++ b/skins/CologneBlue/i18n/eo.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Objectivesea" + ] + }, + "cologneblue.css": "/* La jena CSS influos la paĝaspekton por uzantoj de la Kolonja Blua temo. */", + "cologneblue.js": "/* La jena Ĝavaskripto ŝargiĝos por uzantoj de la Kolonja Blua temo. */", + "skinname-cologneblue": "Kolonja Bluo" +} diff --git a/skins/CologneBlue/i18n/es.json b/skins/CologneBlue/i18n/es.json new file mode 100644 index 0000000..2c45cba --- /dev/null +++ b/skins/CologneBlue/i18n/es.json @@ -0,0 +1,15 @@ +{ + "@metadata": { + "authors": [ + "Fitoschido", + "Locos epraix", + "Sanbec", + "Vivaelcelta", + "Macofe" + ] + }, + "cologneblue.css": "/* El CSS colocado en esta página afectará a los usuarios que usen la apariencia Cologne Blue */", + "cologneblue.js": "/* Cualquier código JavaScript escrito aquí se cargará para todos los usuarios que usen la apariencia Cologne Blue */", + "skinname-cologneblue": "Colonia azul", + "cologneblue-desc": "Una apariencia ligera con formato minimalista" +} diff --git a/skins/CologneBlue/i18n/et.json b/skins/CologneBlue/i18n/et.json new file mode 100644 index 0000000..4791a47 --- /dev/null +++ b/skins/CologneBlue/i18n/et.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Pikne" + ] + }, + "cologneblue.css": "/* Siin asuv kaskaadilaadistik puudutab kõiki Kölni sinise kujunduse kasutajaid. */", + "cologneblue.js": "/* Siin asuv JavaScript laaditakse kõigi Kölni sinise kujunduse kasutajate jaoks. */", + "skinname-cologneblue": "Kölni sinine", + "cologneblue-desc": "Lihtne minimaalse vormistusega kujundus" +} diff --git a/skins/CologneBlue/i18n/eu.json b/skins/CologneBlue/i18n/eu.json new file mode 100644 index 0000000..f204e10 --- /dev/null +++ b/skins/CologneBlue/i18n/eu.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Cologne Blue" +} diff --git a/skins/CologneBlue/i18n/fa.json b/skins/CologneBlue/i18n/fa.json new file mode 100644 index 0000000..3cc04eb --- /dev/null +++ b/skins/CologneBlue/i18n/fa.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Huji", + "Reza1615" + ] + }, + "cologneblue.css": "/* دستورات این بخش کاربرانی را که از پوستهٔ کلونبلو استفاده کنند تحت تاثیر قرار میدهند. */", + "cologneblue.js": "/ * کدهای جاوااسکریپتی که در اینجا قرار میگیرند برای کاربران پوستهٔ کلون بارگیری میشود * /", + "skinname-cologneblue": "آبی کلن", + "cologneblue-desc": "پوستهٔ بسیار سبک با حداقل شکلبندی" +} diff --git a/skins/CologneBlue/i18n/fi.json b/skins/CologneBlue/i18n/fi.json new file mode 100644 index 0000000..1d7a143 --- /dev/null +++ b/skins/CologneBlue/i18n/fi.json @@ -0,0 +1,13 @@ +{ + "@metadata": { + "authors": [ + "Crt", + "Nedergard", + "McSalama" + ] + }, + "cologneblue.css": "/* Tämä sivu sisältää Kölnin sininen -ulkoasua muuttavia tyylejä. */", + "cologneblue.js": "/* Tämän sivun JavaScript-koodi liitetään Kölnin sininen -tyyliin */", + "skinname-cologneblue": "Kölnin sininen", + "cologneblue-desc": "Kevyt teema minimaalisella muotoilulla" +} diff --git a/skins/CologneBlue/i18n/fo.json b/skins/CologneBlue/i18n/fo.json new file mode 100644 index 0000000..32b358c --- /dev/null +++ b/skins/CologneBlue/i18n/fo.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "EileenSanda" + ] + }, + "skinname-cologneblue": "Cologne-bláur", + "cologneblue-desc": "Ein lættvekts útsjónd við minimalari formatering" +} diff --git a/skins/CologneBlue/i18n/fr.json b/skins/CologneBlue/i18n/fr.json new file mode 100644 index 0000000..fe2a7ae --- /dev/null +++ b/skins/CologneBlue/i18n/fr.json @@ -0,0 +1,13 @@ +{ + "@metadata": { + "authors": [ + "Gomoko", + "IAlex", + "Zetud" + ] + }, + "cologneblue.css": "/* Le CSS placé ici affectera les utilisateurs de l’habillage Cologne Blue. */", + "cologneblue.js": "/* Tout JavaScript ici sera chargé avec les pages accédées par les utilisateurs de l’habillage Bleu de cologne uniquement */", + "skinname-cologneblue": "Bleu de Cologne", + "cologneblue-desc": "Un habillage léger avec une mise en forme minimale" +} diff --git a/skins/CologneBlue/i18n/frp.json b/skins/CologneBlue/i18n/frp.json new file mode 100644 index 0000000..c373d9b --- /dev/null +++ b/skins/CologneBlue/i18n/frp.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "ChrisPtDe" + ] + }, + "cologneblue.css": "/* Lo code CSS betâ ique afècterat los usanciérs de l’habelyâjo « Blu de Cologne ». */", + "cologneblue.js": "/* Tot code JavaScript betâ ique serat chargiê per los usanciérs de l’habelyâjo « Blu de Cologne ». */", + "skinname-cologneblue": "Blu de Cologne" +} diff --git a/skins/CologneBlue/i18n/ga.json b/skins/CologneBlue/i18n/ga.json new file mode 100644 index 0000000..8752ba5 --- /dev/null +++ b/skins/CologneBlue/i18n/ga.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Kwekubo" + ] + }, + "skinname-cologneblue": "Gorm Köln" +} diff --git a/skins/CologneBlue/i18n/gl.json b/skins/CologneBlue/i18n/gl.json new file mode 100644 index 0000000..15cfa25 --- /dev/null +++ b/skins/CologneBlue/i18n/gl.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Toliño", + "Elisardojm" + ] + }, + "cologneblue.css": "/* O CSS que se coloque aquí afectará a quen use a aparencia Azul colonial */", + "cologneblue.js": "/* Calquera JavaScript que haxa aquí será cargado para os usuarios que usen a aparencia Azul colonial */", + "skinname-cologneblue": "Azul colonial", + "cologneblue-desc": "Un tema lixeiro con formato minimalista" +} diff --git a/skins/CologneBlue/i18n/he.json b/skins/CologneBlue/i18n/he.json new file mode 100644 index 0000000..4f90a00 --- /dev/null +++ b/skins/CologneBlue/i18n/he.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Guycn2" + ] + }, + "cologneblue.css": "/* הסגנונות הנכתבים כאן ישפיעו על העיצוב CologneBlue בלבד */", + "cologneblue.js": "/* כל סקריפט JavaScript שנכתב כאן ירוץ רק עבור המשתמשים בעיצוב CologneBlue */", + "skinname-cologneblue": "מים כחולים", + "cologneblue-desc": "מעטפת קלה עם עיצוב מינימלי" +} diff --git a/skins/CologneBlue/i18n/hi.json b/skins/CologneBlue/i18n/hi.json new file mode 100644 index 0000000..ae5564c --- /dev/null +++ b/skins/CologneBlue/i18n/hi.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Siddhartha Ghai" + ] + }, + "cologneblue-desc": "न्यूनतम प्रारूपण वाली एक हलकी-फुल्की त्वचा" +} diff --git a/skins/CologneBlue/i18n/hr.json b/skins/CologneBlue/i18n/hr.json new file mode 100644 index 0000000..bc0e97c --- /dev/null +++ b/skins/CologneBlue/i18n/hr.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Kölnska plava" +} diff --git a/skins/CologneBlue/i18n/hsb.json b/skins/CologneBlue/i18n/hsb.json new file mode 100644 index 0000000..5cdf8e6 --- /dev/null +++ b/skins/CologneBlue/i18n/hsb.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Michawiki" + ] + }, + "skinname-cologneblue": "Kölnjanska módrina" +} diff --git a/skins/CologneBlue/i18n/hu.json b/skins/CologneBlue/i18n/hu.json new file mode 100644 index 0000000..14a6e53 --- /dev/null +++ b/skins/CologneBlue/i18n/hu.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Dj", + "ViDam" + ] + }, + "cologneblue.css": "/* Az ide elhelyezett CSS hatással lesz a Kölni kék felület használóira */", + "cologneblue.js": "/* A Kölni kék felületet használó szerkesztők számára betöltendő JavaScriptek */", + "skinname-cologneblue": "Kölni kék", + "cologneblue-desc": "Egy pehelykönnyű felület minimális formázással" +} diff --git a/skins/CologneBlue/i18n/hy.json b/skins/CologneBlue/i18n/hy.json new file mode 100644 index 0000000..c1e3f55 --- /dev/null +++ b/skins/CologneBlue/i18n/hy.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Քյոլնի թախիծ" +} diff --git a/skins/CologneBlue/i18n/ia.json b/skins/CologneBlue/i18n/ia.json new file mode 100644 index 0000000..f7131fd --- /dev/null +++ b/skins/CologneBlue/i18n/ia.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "McDutchie" + ] + }, + "cologneblue.css": "/* Le CSS placiate hic afficera le usatores del apparentia Colonia Blau */", + "cologneblue.js": "/* Omne JavaScript hic se executara pro le usatores del apparentia Colonia Blau */", + "skinname-cologneblue": "Colonia Blau", + "cologneblue-desc": "Apparentia legier e minimalista" +} diff --git a/skins/CologneBlue/i18n/id.json b/skins/CologneBlue/i18n/id.json new file mode 100644 index 0000000..b5c11b0 --- /dev/null +++ b/skins/CologneBlue/i18n/id.json @@ -0,0 +1,13 @@ +{ + "@metadata": { + "authors": [ + "Arifin.wijaya", + "Bennylin", + "Iwan Novirion" + ] + }, + "cologneblue.css": "/* CSS yang ada di sini akan diterapkan pada kulit Cologne Blue. */", + "cologneblue.js": "/* Semua JavaScript di sini akan dimuatkan untuk para pengguna yang menggunakan kulit Cologne Blue */", + "skinname-cologneblue": "Biru Köln", + "cologneblue-desc": "Kulit yang ringan dengan format minimal" +} diff --git a/skins/CologneBlue/i18n/ilo.json b/skins/CologneBlue/i18n/ilo.json new file mode 100644 index 0000000..61c5ace --- /dev/null +++ b/skins/CologneBlue/i18n/ilo.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Lam-ang" + ] + }, + "cologneblue-desc": "Ti nalag-an a kudil nga addaan iti bassit a pannakapormat" +} diff --git a/skins/CologneBlue/i18n/is.json b/skins/CologneBlue/i18n/is.json new file mode 100644 index 0000000..7c5d37c --- /dev/null +++ b/skins/CologneBlue/i18n/is.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Sveinn í Felli" + ] + }, + "cologneblue.css": "/* Allt CSS sem sett er hér mun hafa áhrif á alla notendur Kölnarblátt-skinnsins. */", + "cologneblue.js": "/* Allt JavaScript sem sett er hér mun hafa áhrif á notendur Kölnarblátt-skinnsins. */", + "skinname-cologneblue": "Kölnarblátt", + "cologneblue-desc": "Létt skinn með lágmarks-sniðum" +} diff --git a/skins/CologneBlue/i18n/it.json b/skins/CologneBlue/i18n/it.json new file mode 100644 index 0000000..8c41f53 --- /dev/null +++ b/skins/CologneBlue/i18n/it.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Darth Kule", + "FRacco", + "Beta16" + ] + }, + "cologneblue.css": "/* Gli stili CSS inseriti qui si applicano agli utenti che usano il tema Cologne Blue */", + "cologneblue.js": "/* Il codice JavaScript inserito qui viene caricato dagli utenti che usano il tema Cologne Blue */", + "cologneblue-desc": "Tema leggero con formattazione minima" +} diff --git a/skins/CologneBlue/i18n/ja.json b/skins/CologneBlue/i18n/ja.json new file mode 100644 index 0000000..28c599d --- /dev/null +++ b/skins/CologneBlue/i18n/ja.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "青子守歌", + "Fryed-peach" + ] + }, + "cologneblue.css": "/* ここに記述したCSSはケルンブルー外装の利用者に影響します */", + "cologneblue.js": "/* ここにあるすべてのJavaScriptは、ケルンブルー外装を使用している利用者に対して読み込まれます */", + "skinname-cologneblue": "ケルンブルー", + "cologneblue-desc": "最小限の書式設定しかない軽量な外装" +} diff --git a/skins/CologneBlue/i18n/ka.json b/skins/CologneBlue/i18n/ka.json new file mode 100644 index 0000000..7795690 --- /dev/null +++ b/skins/CologneBlue/i18n/ka.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "David1010" + ] + }, + "cologneblue.css": "/* აქ ჩასმული CSS გამოყენებული იქნება კელნის ლურჯი გაფორმების თემაში */", + "skinname-cologneblue": "კელნის ლურჯი" +} diff --git a/skins/CologneBlue/i18n/kk-arab.json b/skins/CologneBlue/i18n/kk-arab.json new file mode 100644 index 0000000..962dc77 --- /dev/null +++ b/skins/CologneBlue/i18n/kk-arab.json @@ -0,0 +1,6 @@ +{ + "@metadata": [], + "cologneblue.css": "/* مىندا ورنالاستىرىلعان CSS تەك «كولن زەڭگىرلىگى» (cologneblue) مانەرىن پايدالانۋشىلارىنا ىقپال ەتەدى skin */", + "cologneblue.js": "/* مىنداعى JavaScript تەك «كولن زەڭگىرلىگى» (cologneblue) مانەرىن پايدالانۋشىلار ٴۇشىن جەگىلەدى */", + "skinname-cologneblue": "كولن زەڭگىرلىگى (cologneblue)" +} diff --git a/skins/CologneBlue/i18n/kk-cyrl.json b/skins/CologneBlue/i18n/kk-cyrl.json new file mode 100644 index 0000000..c7fb741 --- /dev/null +++ b/skins/CologneBlue/i18n/kk-cyrl.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Arystanbek" + ] + }, + "cologneblue.css": "/* Мында орналастырылған CSS тек «Көлн зеңгірлігі» (cologneblue) мәнерін пайдаланушыларына ықпал етеді skin */", + "cologneblue.js": "/* Мындағы JavaScript тек «Көлн зеңгірлігі» (cologneblue) мәнерін пайдаланушылар үшін жегіледі */", + "skinname-cologneblue": "Көк зеңгірлігі (cologneblue)" +} diff --git a/skins/CologneBlue/i18n/kk-latn.json b/skins/CologneBlue/i18n/kk-latn.json new file mode 100644 index 0000000..d11974c --- /dev/null +++ b/skins/CologneBlue/i18n/kk-latn.json @@ -0,0 +1,6 @@ +{ + "@metadata": [], + "cologneblue.css": "/* Mında ornalastırılğan CSS tek «Köln zeñgirligi» (cologneblue) mänerin paýdalanwşılarına ıqpal etedi skin */", + "cologneblue.js": "/* Mındağı JavaScript tek «Köln zeñgirligi» (cologneblue) mänerin paýdalanwşılar üşin jegiledi */", + "skinname-cologneblue": "Köln zeñgirligi (cologneblue)" +} diff --git a/skins/CologneBlue/i18n/km.json b/skins/CologneBlue/i18n/km.json new file mode 100644 index 0000000..df90126 --- /dev/null +++ b/skins/CologneBlue/i18n/km.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "វ័ណថារិទ្ធ" + ] + }, + "cologneblue.css": "/* CSS បានដាក់ទីនេះនឹងមានអនុភាពលើអ្នកប្រើប្រាស់នៃសំបក Cologne Blue */", + "skinname-cologneblue": "ទឹកអប់ខៀវ" +} diff --git a/skins/CologneBlue/i18n/ko.json b/skins/CologneBlue/i18n/ko.json new file mode 100644 index 0000000..39b42cb --- /dev/null +++ b/skins/CologneBlue/i18n/ko.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "아라", + "Kwj2772" + ] + }, + "cologneblue.css": "/* 이 CSS 설정은 쾰른 블루 스킨을 사용하는 사용자에게 적용됩니다 */", + "cologneblue.js": "/* 이 자바스크립트 설정은 쾰른 블루 스킨을 사용하는 사용자에게 적용됩니다 */", + "skinname-cologneblue": "쾰른 블루", + "cologneblue-desc": "최소한의 형식을 가진 경량 스킨" +} diff --git a/skins/CologneBlue/i18n/krc.json b/skins/CologneBlue/i18n/krc.json new file mode 100644 index 0000000..6bcafeb --- /dev/null +++ b/skins/CologneBlue/i18n/krc.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Къарачайлы" + ] + }, + "skinname-cologneblue": "Кёльн такъылыкъ" +} diff --git a/skins/CologneBlue/i18n/ksh.json b/skins/CologneBlue/i18n/ksh.json new file mode 100644 index 0000000..e533859 --- /dev/null +++ b/skins/CologneBlue/i18n/ksh.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Purodha" + ] + }, + "cologneblue.css": "/* Dat CSS heh aan dä Schtäll wirrek blohß op de Bedehnbovverfläsch „Kölsch Blou“ */", + "cologneblue.js": "/* De JavaSkreppte fun heh krijje alle Sigge met dä Bedehnbovverfläsch „Kölsch Blou“ jescheck */", + "skinname-cologneblue": "Kölsch Blou", + "cologneblue-desc": "En einfache Bedehnbovverfläsch met winnesch Schnikschnak." +} diff --git a/skins/CologneBlue/i18n/la.json b/skins/CologneBlue/i18n/la.json new file mode 100644 index 0000000..fe5d28b --- /dev/null +++ b/skins/CologneBlue/i18n/la.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Caerulus Colonia" +} diff --git a/skins/CologneBlue/i18n/lb.json b/skins/CologneBlue/i18n/lb.json new file mode 100644 index 0000000..b8e192f --- /dev/null +++ b/skins/CologneBlue/i18n/lb.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Kaffi", + "Robby" + ] + }, + "cologneblue.css": "/* Dës CSS huet nëmmen Afloss op de Skin ''Köln Blo'' */", + "cologneblue.js": "/* All JavaScript hei gëtt gelueden esoubal ee Benotzer d'Ausgesinn Köln Blo benotzt */", + "skinname-cologneblue": "Köln Blo", + "cologneblue-desc": "E liicht Ausgesi mat minimaler Formatéierung" +} diff --git a/skins/CologneBlue/i18n/li.json b/skins/CologneBlue/i18n/li.json new file mode 100644 index 0000000..6aeab06 --- /dev/null +++ b/skins/CologneBlue/i18n/li.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Keuls blauw" +} diff --git a/skins/CologneBlue/i18n/lt.json b/skins/CologneBlue/i18n/lt.json new file mode 100644 index 0000000..61c7067 --- /dev/null +++ b/skins/CologneBlue/i18n/lt.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Kelno mėlyna" +} diff --git a/skins/CologneBlue/i18n/lzh.json b/skins/CologneBlue/i18n/lzh.json new file mode 100644 index 0000000..c88f4bc --- /dev/null +++ b/skins/CologneBlue/i18n/lzh.json @@ -0,0 +1,6 @@ +{ + "@metadata": [], + "cologneblue.css": "/* 此之 CSS 用於馨藍面之簿也 */", + "cologneblue.js": "/* 此之JavaScript將載於用馨藍面之簿 */", + "skinname-cologneblue": "馨藍" +} diff --git a/skins/CologneBlue/i18n/min.json b/skins/CologneBlue/i18n/min.json new file mode 100644 index 0000000..eb622e8 --- /dev/null +++ b/skins/CologneBlue/i18n/min.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Iwan Novirion" + ] + }, + "skinname-cologneblue": "Biru Köln" +} diff --git a/skins/CologneBlue/i18n/mk.json b/skins/CologneBlue/i18n/mk.json new file mode 100644 index 0000000..7be469c --- /dev/null +++ b/skins/CologneBlue/i18n/mk.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Bjankuloski06" + ] + }, + "cologneblue.css": "/* Тука поставениот CSS ќе се применува врз корисниците што го избрале рувото „Келнско сино“ */", + "cologneblue.js": "/* Тука поставениот JavaScript ќе им се вчитува на корисниците што го користат рувото „Келнско сино“ */", + "skinname-cologneblue": "Келнско сино", + "cologneblue-desc": "Лесно руво со минимално форматирање" +} diff --git a/skins/CologneBlue/i18n/ml.json b/skins/CologneBlue/i18n/ml.json new file mode 100644 index 0000000..ac77055 --- /dev/null +++ b/skins/CologneBlue/i18n/ml.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Praveenp" + ] + }, + "cologneblue.css": "/* ഇവിടെ നൽകുന്ന സി.എസ്.എസ്. കൊളോൺ നീല ദൃശ്യരൂപം ഉപയോഗിക്കുന്നവർക്ക് ബാധകമായിരിക്കും */", + "cologneblue.js": "/* ഇവിടെ നൽകുന്ന ജാവാസ്ക്രിപ്റ്റ് കൊളോൺ നീല ദൃശ്യരൂപം ഉപയോഗിക്കുന്നവർക്ക് ബാധകമായിരിക്കും */", + "skinname-cologneblue": "ക്ലോൺ നീല", + "cologneblue-desc": "കുറച്ച് ക്രമപ്പെടുത്തൽ മാത്രമുള്ള ഒരു ലഘു ദൃശ്യരൂപം" +} diff --git a/skins/CologneBlue/i18n/mr.json b/skins/CologneBlue/i18n/mr.json new file mode 100644 index 0000000..8a1a9cd --- /dev/null +++ b/skins/CologneBlue/i18n/mr.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "सुरेखनीळी" +} diff --git a/skins/CologneBlue/i18n/ms.json b/skins/CologneBlue/i18n/ms.json new file mode 100644 index 0000000..9812299 --- /dev/null +++ b/skins/CologneBlue/i18n/ms.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Anakmalaysia", + "Aviator" + ] + }, + "cologneblue.css": "/* Kod CSS yang terletak di sini akan mempengaruhi pengguna yang memakai rupa Cologne Blue */", + "cologneblue.js": "/* Sebarang kod JavaScript di sini akan dimuat oleh sesiapa yang memakai rupa Blue Cologne */", + "skinname-cologneblue": "Cologne Blue", + "cologneblue-desc": "Rupa ringan dengan pemformatan minimum" +} diff --git a/skins/CologneBlue/i18n/mt.json b/skins/CologneBlue/i18n/mt.json new file mode 100644 index 0000000..871f045 --- /dev/null +++ b/skins/CologneBlue/i18n/mt.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Chrisportelli", + "Giangian15" + ] + }, + "cologneblue.css": "/* CSS li tpoġġa hawnhekk se jaffetwa dawk l-utenti li jagħmlu użu mill-aspett grafiku Cologne Blue */", + "cologneblue.js": "/* Kull ''JavaScript'' hawnhekk jiġi mniżżel għal dawk l-utenti li qegħdin jagħmlu użu mill-iskin ''Cologne Blue'' */", + "skinname-cologneblue": "Cologne Blue" +} diff --git a/skins/CologneBlue/i18n/mwl.json b/skins/CologneBlue/i18n/mwl.json new file mode 100644 index 0000000..2dd05b4 --- /dev/null +++ b/skins/CologneBlue/i18n/mwl.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Azul" +} diff --git a/skins/CologneBlue/i18n/nap.json b/skins/CologneBlue/i18n/nap.json new file mode 100644 index 0000000..2910821 --- /dev/null +++ b/skins/CologneBlue/i18n/nap.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "C.R." + ] + }, + "cologneblue-desc": "Skin leggera co' furmattazione minima" +} diff --git a/skins/CologneBlue/i18n/nb.json b/skins/CologneBlue/i18n/nb.json new file mode 100644 index 0000000..5eb0b9b --- /dev/null +++ b/skins/CologneBlue/i18n/nb.json @@ -0,0 +1,7 @@ +{ + "@metadata": [], + "cologneblue.css": "/* CSS i denne fila vil gjelde alle som bruker drakta Kølnerblå */", + "cologneblue.js": "/* Javascript i denne fila vil gjelde for brukere av drakta Kølnerblå */", + "skinname-cologneblue": "Kølnerblå", + "cologneblue-desc": "En lettvekterdrakt med minimal formatering" +} diff --git a/skins/CologneBlue/i18n/nds-nl.json b/skins/CologneBlue/i18n/nds-nl.json new file mode 100644 index 0000000..6aeab06 --- /dev/null +++ b/skins/CologneBlue/i18n/nds-nl.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Keuls blauw" +} diff --git a/skins/CologneBlue/i18n/nds.json b/skins/CologneBlue/i18n/nds.json new file mode 100644 index 0000000..3587d5a --- /dev/null +++ b/skins/CologneBlue/i18n/nds.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Kölsch Blau" +} diff --git a/skins/CologneBlue/i18n/ne.json b/skins/CologneBlue/i18n/ne.json new file mode 100644 index 0000000..75a52f1 --- /dev/null +++ b/skins/CologneBlue/i18n/ne.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "सरोज कुमार ढकाल", + "राम प्रसाद जोशी" + ] + }, + "cologneblue.css": "/* यहाँ राखिएको CSS ले कोलोग्ने ब्लु स्किनको प्रयोगकर्ताहरूलाई प्रभावित गर्ने छ */", + "skinname-cologneblue": "कोलोग्ने निलो" +} diff --git a/skins/CologneBlue/i18n/new.json b/skins/CologneBlue/i18n/new.json new file mode 100644 index 0000000..94c5014 --- /dev/null +++ b/skins/CologneBlue/i18n/new.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Eukesh" + ] + }, + "cologneblue.css": "/* थन तःगु CSS नं कोलोन ब्लु स्किनया छ्य्लामितेत असर याइ */" +} diff --git a/skins/CologneBlue/i18n/nl.json b/skins/CologneBlue/i18n/nl.json new file mode 100644 index 0000000..ec81b6a --- /dev/null +++ b/skins/CologneBlue/i18n/nl.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Siebrand" + ] + }, + "cologneblue.css": "/* CSS die hier wordt geplaatst heeft alleen invloed op het uiterlijk Keuls blauw */", + "cologneblue.js": "/* JavaScript die hier wordt geplaatst heeft alleen invloed op gebruikers die het uiterlijk Keuls blauw gebruiken */", + "skinname-cologneblue": "Keuls blauw", + "cologneblue-desc": "Een lichtgewicht uiterlijk met minimale opmaak" +} diff --git a/skins/CologneBlue/i18n/nn.json b/skins/CologneBlue/i18n/nn.json new file mode 100644 index 0000000..a0f699e --- /dev/null +++ b/skins/CologneBlue/i18n/nn.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Frokor" + ] + }, + "cologneblue.css": "/* CSS i denne fila vil gjelde alle som nyttar drakta Kølnerblå */", + "cologneblue.js": "/* Javascript i denne fila vil gjelde for brukarar av drakta Kølnerblå */", + "skinname-cologneblue": "Kölnerblå" +} diff --git a/skins/CologneBlue/i18n/oc.json b/skins/CologneBlue/i18n/oc.json new file mode 100644 index 0000000..090ce49 --- /dev/null +++ b/skins/CologneBlue/i18n/oc.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Cedric31" + ] + }, + "cologneblue.css": "/* Lo CSS plaçat aicí afectarà los utilizaires de l’abilhatge Cologne Blue */", + "cologneblue.js": "/* Tot JavaScript aicí serà cargat amb las paginas accedidas pels utilizaires de l’abilhatge Cologne Blue unicament. */", + "skinname-cologneblue": "Colonha Blau" +} diff --git a/skins/CologneBlue/i18n/os.json b/skins/CologneBlue/i18n/os.json new file mode 100644 index 0000000..d748352 --- /dev/null +++ b/skins/CologneBlue/i18n/os.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Кёльны æрхæндæг" +} diff --git a/skins/CologneBlue/i18n/pdt.json b/skins/CologneBlue/i18n/pdt.json new file mode 100644 index 0000000..f37352d --- /dev/null +++ b/skins/CologneBlue/i18n/pdt.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "Wikipeeta" + ] + }, + "cologneblue.css": "/* CSS opp dise Sted wirtjt opp daut Keloonsch-Blau-Skin */", + "cologneblue.js": "/* Daut neachste JavaScript woat fe Brucka mett Keloonsch-Blau-Skin jelode */" +} diff --git a/skins/CologneBlue/i18n/pl.json b/skins/CologneBlue/i18n/pl.json new file mode 100644 index 0000000..4356577 --- /dev/null +++ b/skins/CologneBlue/i18n/pl.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Chrumps", + "Sp5uhe" + ] + }, + "cologneblue.css": "/* Umieszczony tutaj kod CSS wpłynie na wygląd skórki Błękit */", + "cologneblue.js": "/* Umieszczony tutaj kod JavaScript zostanie załadowany wyłącznie przez użytkowników korzystających ze skórki Błękit */", + "skinname-cologneblue": "Błękit", + "cologneblue-desc": "Lekka skórka z minimalnym formatowaniem" +} diff --git a/skins/CologneBlue/i18n/ps.json b/skins/CologneBlue/i18n/ps.json new file mode 100644 index 0000000..190488e --- /dev/null +++ b/skins/CologneBlue/i18n/ps.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "شين کلون" +} diff --git a/skins/CologneBlue/i18n/pt-br.json b/skins/CologneBlue/i18n/pt-br.json new file mode 100644 index 0000000..72ddd5b --- /dev/null +++ b/skins/CologneBlue/i18n/pt-br.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Diego Queiroz", + "Cainamarques" + ] + }, + "cologneblue.css": "/* o código CSS colocado aqui terá efeito nos usuários do tema Cologne Blue */", + "cologneblue.js": "/* Qualquer JavaScript aqui colocado afetará os usuários do tema Cologne Blue */", + "skinname-cologneblue": "Azul Colonial", + "cologneblue-desc": "Um tema leve com formatação mínima" +} diff --git a/skins/CologneBlue/i18n/pt.json b/skins/CologneBlue/i18n/pt.json new file mode 100644 index 0000000..b223597 --- /dev/null +++ b/skins/CologneBlue/i18n/pt.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Hamilton Abreu" + ] + }, + "cologneblue.css": "/* Código CSS colocado aqui afectará os utilizadores do tema Azul colonial */", + "cologneblue.js": "/* Código Javascript colocado aqui será carregado para utilizadores do tema Azul colonial */", + "skinname-cologneblue": "Azul colonial" +} diff --git a/skins/CologneBlue/i18n/qqq.json b/skins/CologneBlue/i18n/qqq.json new file mode 100644 index 0000000..3c469af --- /dev/null +++ b/skins/CologneBlue/i18n/qqq.json @@ -0,0 +1,14 @@ +{ + "@metadata": { + "authors": [ + "Meno25", + "Umherirrender", + "Shirayuki", + "Raymond" + ] + }, + "cologneblue.css": "{{optional}}", + "cologneblue.js": "{{optional}}", + "skinname-cologneblue": "{{optional}}", + "cologneblue-desc": "{{desc|what=skin|name=Cologne Blue|url=https://www.mediawiki.org/wiki/Skin:Cologne_Blue}}" +} diff --git a/skins/CologneBlue/i18n/qu.json b/skins/CologneBlue/i18n/qu.json new file mode 100644 index 0000000..09f3e27 --- /dev/null +++ b/skins/CologneBlue/i18n/qu.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "AlimanRuna" + ] + }, + "cologneblue.css": "/* Churamusqa CSS chantakunaqa ''Cologne Blue skin'' nisqa qarata llamk'achiq ruraqkunapaq llamk'anqa */", + "cologneblue.js": "/* Ima kaypi qillqamusqa JavaScript nisqa wakichi qillqapas ''Cologne Blue skin'' nisqa qarata llamk'achiq ruraqkunapaq chaqnasqa kanqa */" +} diff --git a/skins/CologneBlue/i18n/ro.json b/skins/CologneBlue/i18n/ro.json new file mode 100644 index 0000000..b8a2aff --- /dev/null +++ b/skins/CologneBlue/i18n/ro.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Firilacroco", + "Minisarm" + ] + }, + "cologneblue.css": "/* CSS plasate aici vor afecta utilizatorii stilului Cologne Blue */", + "skinname-cologneblue": "Albastru de Cologne", + "cologneblue-desc": "Un aspect simplu cu o formatare minimă" +} diff --git a/skins/CologneBlue/i18n/roa-tara.json b/skins/CologneBlue/i18n/roa-tara.json new file mode 100644 index 0000000..75d08a7 --- /dev/null +++ b/skins/CologneBlue/i18n/roa-tara.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Joetaras" + ] + }, + "cologneblue.css": "/* 'U CSS ca se iacchie aqquà 'u 'ndrucane le utinde d'a masckere Blu Cologne */", + "cologneblue.js": "/* Ogne JavaScript aqquà avène carecate pe le utinde ca ausane 'a masckere Blu Cologne */", + "skinname-cologneblue": "Blu Cologne", + "cologneblue-desc": "'Nu skin leggere cu 'nu picca-picche de formattazzione" +} diff --git a/skins/CologneBlue/i18n/ru.json b/skins/CologneBlue/i18n/ru.json new file mode 100644 index 0000000..d411c20 --- /dev/null +++ b/skins/CologneBlue/i18n/ru.json @@ -0,0 +1,14 @@ +{ + "@metadata": { + "authors": [ + "Kaganer", + "Okras", + "Rave", + "NBS" + ] + }, + "cologneblue.css": "/* Размещённый здесь CSS будет применяться к теме оформления Cologne Blue */", + "cologneblue.js": "/* Размещённый здесь код JavaScript будет загружаться пользователям, использующим тему оформления Cologne Blue */", + "skinname-cologneblue": "Кёльнская тоска", + "cologneblue-desc": "Лёгкая тема оформления с минимальным форматированием." +} diff --git a/skins/CologneBlue/i18n/sa.json b/skins/CologneBlue/i18n/sa.json new file mode 100644 index 0000000..15c6281 --- /dev/null +++ b/skins/CologneBlue/i18n/sa.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "नील" +} diff --git a/skins/CologneBlue/i18n/sah.json b/skins/CologneBlue/i18n/sah.json new file mode 100644 index 0000000..ecd2201 --- /dev/null +++ b/skins/CologneBlue/i18n/sah.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "HalanTul" + ] + }, + "cologneblue-desc": "Чэпчэки ыйааһыннаах судургу тиэмэ" +} diff --git a/skins/CologneBlue/i18n/scn.json b/skins/CologneBlue/i18n/scn.json new file mode 100644 index 0000000..8d0ea11 --- /dev/null +++ b/skins/CologneBlue/i18n/scn.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Santu", + "Pippinu", + "Sarvaturi" + ] + }, + "skinname-cologneblue": "Cologne Blu", + "cologneblue-desc": "Na peddi leggia cu picca furmattazzioni" +} diff --git a/skins/CologneBlue/i18n/sco.json b/skins/CologneBlue/i18n/sco.json new file mode 100644 index 0000000..64822bf --- /dev/null +++ b/skins/CologneBlue/i18n/sco.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "John Reid" + ] + }, + "cologneblue-desc": "Ae lichtweicht skin wi minimal formattin" +} diff --git a/skins/CologneBlue/i18n/si.json b/skins/CologneBlue/i18n/si.json new file mode 100644 index 0000000..277abb4 --- /dev/null +++ b/skins/CologneBlue/i18n/si.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Singhalawap", + "නන්දිමිතුරු" + ] + }, + "cologneblue.css": "/* මෙහි CSS බහාලීම \"Cologne Blue\" ඡවිය භාවිතා කරන පරිශීලකයන් හට බලපෑම් සිදු කල හැක */", + "cologneblue.js": "/* මෙහි ඕනෑම ජාවාස්ක්රිප්ට් එකක් සිහිල්-සුවඳ-පැන් ඡවිය භාවිතා කරන පරිශීලකයන්හට ප්රවේශනය කෙරේ */" +} diff --git a/skins/CologneBlue/i18n/sk.json b/skins/CologneBlue/i18n/sk.json new file mode 100644 index 0000000..a9fdc93 --- /dev/null +++ b/skins/CologneBlue/i18n/sk.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Helix84", + "Rudko" + ] + }, + "cologneblue.css": "/* Tu umiestnené CSS bude ovplyvňovať používateľov štýlu Kolínska modrá */", + "cologneblue.js": "/* Tu sa nachádzajúci JavaScript sa načíta používateľom vzhľadu Kolínska modrá */", + "skinname-cologneblue": "Kolínska modrá" +} diff --git a/skins/CologneBlue/i18n/sq.json b/skins/CologneBlue/i18n/sq.json new file mode 100644 index 0000000..8e4ed95 --- /dev/null +++ b/skins/CologneBlue/i18n/sq.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Kolonjë Blu" +} diff --git a/skins/CologneBlue/i18n/sr-ec.json b/skins/CologneBlue/i18n/sr-ec.json new file mode 100644 index 0000000..3a4a4a1 --- /dev/null +++ b/skins/CologneBlue/i18n/sr-ec.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Milicevic01", + "Rancher" + ] + }, + "cologneblue.css": "/* CSS постављен овде ће утицати на све кориснике теме „Келнско плава“ */", + "cologneblue.js": "/* Јаваскрипт постављен овде ће се учитати за све оне који користе тему „Келнско плава“ */", + "skinname-cologneblue": "Келнско плава", + "cologneblue-desc": "Лагана тема са минималним форматирањем" +} diff --git a/skins/CologneBlue/i18n/sr-el.json b/skins/CologneBlue/i18n/sr-el.json new file mode 100644 index 0000000..cb17eb7 --- /dev/null +++ b/skins/CologneBlue/i18n/sr-el.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Milicevic01" + ] + }, + "cologneblue.css": "/* CSS postavljen ovde će uticati na sve korisnike teme „Kelnsko plava“ */", + "cologneblue.js": "/* Javaskript postavljen ovde će se učitati za sve one koji koriste temu „Kelnsko plava“ */", + "skinname-cologneblue": "Kelnsko plava", + "cologneblue-desc": "Lagana tema sa minimalnim formatiranjem" +} diff --git a/skins/CologneBlue/i18n/su.json b/skins/CologneBlue/i18n/su.json new file mode 100644 index 0000000..1c2803d --- /dev/null +++ b/skins/CologneBlue/i18n/su.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Kandar" + ] + }, + "cologneblue-desc": "Kulit hampang kalayan format anu basajan" +} diff --git a/skins/CologneBlue/i18n/sv.json b/skins/CologneBlue/i18n/sv.json new file mode 100644 index 0000000..82160c1 --- /dev/null +++ b/skins/CologneBlue/i18n/sv.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Lokal Profil" + ] + }, + "cologneblue.css": "/* CSS som skrivs här kommer att påverka alla användare av utseendet Cologne blå */", + "cologneblue.js": "/* JavaScript här kommer att laddas för dem som använder utseendet Cologne blå */", + "skinname-cologneblue": "Cologne blå", + "cologneblue-desc": "Ett lättviktsutseende med minimal formatering" +} diff --git a/skins/CologneBlue/i18n/ta.json b/skins/CologneBlue/i18n/ta.json new file mode 100644 index 0000000..d3b6d40 --- /dev/null +++ b/skins/CologneBlue/i18n/ta.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "கொலோன் (Cologne) நீலம் Blue" +} diff --git a/skins/CologneBlue/i18n/te.json b/skins/CologneBlue/i18n/te.json new file mode 100644 index 0000000..522e31e --- /dev/null +++ b/skins/CologneBlue/i18n/te.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Veeven" + ] + }, + "skinname-cologneblue": "కలోన్ నీలం" +} diff --git a/skins/CologneBlue/i18n/tet.json b/skins/CologneBlue/i18n/tet.json new file mode 100644 index 0000000..3574f0c --- /dev/null +++ b/skins/CologneBlue/i18n/tet.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Kolónia azúl" +} diff --git a/skins/CologneBlue/i18n/th.json b/skins/CologneBlue/i18n/th.json new file mode 100644 index 0000000..4246b6f --- /dev/null +++ b/skins/CologneBlue/i18n/th.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Manop", + "Octahedron80" + ] + }, + "cologneblue.css": "/* สไตล์ชีตในหน้านี้จะส่งผลแก่ผู้ใช้ที่ใช้สกินโคโลญจ์บลู */", + "cologneblue.js": "/* จาวาสคริปต์ใด ๆ ในหน้านี้จะถูกโหลดให้แก่ผู้ใช้ที่ใช้สกินโคโลญจ์บลู */", + "skinname-cologneblue": "โคโลญจ์บลู" +} diff --git a/skins/CologneBlue/i18n/tl.json b/skins/CologneBlue/i18n/tl.json new file mode 100644 index 0000000..72e6ecd --- /dev/null +++ b/skins/CologneBlue/i18n/tl.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Sky Harbor" + ] + }, + "cologneblue.css": "/* Ang Cascading Style Sheets na inilagay dito ay makakaapekto sa mga tagagamit ng pabalat na Cologne Blue */", + "cologneblue.js": "/* Ang anumang JavaScript dito ay ikakarga para sa mga tagagamit ng pabalat na Cologne Blue */", + "skinname-cologneblue": "Cologne Blue" +} diff --git a/skins/CologneBlue/i18n/tt-cyrl.json b/skins/CologneBlue/i18n/tt-cyrl.json new file mode 100644 index 0000000..5b18bac --- /dev/null +++ b/skins/CologneBlue/i18n/tt-cyrl.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "Ильнар" + ] + }, + "skinname-cologneblue": "Зәңгәр сагыш", + "cologneblue-desc": "Гади булган күренеш." +} diff --git a/skins/CologneBlue/i18n/tt-latn.json b/skins/CologneBlue/i18n/tt-latn.json new file mode 100644 index 0000000..545b954 --- /dev/null +++ b/skins/CologneBlue/i18n/tt-latn.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Don Alessandro" + ] + }, + "skinname-cologneblue": "Zäñgär sağış" +} diff --git a/skins/CologneBlue/i18n/tyv.json b/skins/CologneBlue/i18n/tyv.json new file mode 100644 index 0000000..f204e10 --- /dev/null +++ b/skins/CologneBlue/i18n/tyv.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Cologne Blue" +} diff --git a/skins/CologneBlue/i18n/ug-arab.json b/skins/CologneBlue/i18n/ug-arab.json new file mode 100644 index 0000000..fcfb891 --- /dev/null +++ b/skins/CologneBlue/i18n/ug-arab.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Arlin" + ] + }, + "cologneblue.css": "/* CSS placed here will affect users of the Cologne Blue skin */", + "cologneblue.js": "/* Any JavaScript here will be loaded for users using the Cologne Blue skin */", + "skinname-cologneblue": "Cologne Blue" +} diff --git a/skins/CologneBlue/i18n/uk.json b/skins/CologneBlue/i18n/uk.json new file mode 100644 index 0000000..748fc42 --- /dev/null +++ b/skins/CologneBlue/i18n/uk.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Dim Grits", + "Alex Khimich" + ] + }, + "cologneblue.css": "/* Розміщений тут CSS-код буде використаний для користувачів з налаштованою темою оформлення Кельнське блакитне */", + "cologneblue.js": "/* Розміщений тут код JavaScript буде завантажений для всіх користувачів, що використовують тему оформлення Кельнське синє */", + "skinname-cologneblue": "Кельнське синє", + "cologneblue-desc": "Легка тема оформлення з мінімальними форматуванням." +} diff --git a/skins/CologneBlue/i18n/ur.json b/skins/CologneBlue/i18n/ur.json new file mode 100644 index 0000000..761e258 --- /dev/null +++ b/skins/CologneBlue/i18n/ur.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Obaid Raza" + ] + }, + "cologneblue-desc": "کم سے کم لکھائی کے ساتھ سادہ صورت" +} diff --git a/skins/CologneBlue/i18n/uz.json b/skins/CologneBlue/i18n/uz.json new file mode 100644 index 0000000..6d2c6e1 --- /dev/null +++ b/skins/CologneBlue/i18n/uz.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Sociologist" + ] + }, + "skinname-cologneblue": "Kyolncha sogʻinch" +} diff --git a/skins/CologneBlue/i18n/vep.json b/skins/CologneBlue/i18n/vep.json new file mode 100644 index 0000000..c647564 --- /dev/null +++ b/skins/CologneBlue/i18n/vep.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Игорь Бродский" + ] + }, + "skinname-cologneblue": "Köl'nan sinine" +} diff --git a/skins/CologneBlue/i18n/vi.json b/skins/CologneBlue/i18n/vi.json new file mode 100644 index 0000000..c1d2470 --- /dev/null +++ b/skins/CologneBlue/i18n/vi.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Minh Nguyen", + "Vinhtantran" + ] + }, + "cologneblue.css": "/* Mã CSS tại đây sẽ ảnh hưởng đến những người dùng sử dụng giao diện Xanh Cologne */", + "cologneblue.js": "/* Mã JavaScript tại đây sẽ được tải khi người dùng sử dụng giao diện Xanh Cologne */", + "skinname-cologneblue": "Xanh Cologne", + "cologneblue-desc": "Giao diện nhẹ nhàng có ít định dạng" +} diff --git a/skins/CologneBlue/i18n/vmf.json b/skins/CologneBlue/i18n/vmf.json new file mode 100644 index 0000000..21fa28f --- /dev/null +++ b/skins/CologneBlue/i18n/vmf.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Silvicola" + ] + }, + "cologneblue.css": "/* CSS hiir beâjflusd nôr dii Kölnisch-Blau-schelfn. Wen'd ale uf ôômôôl beâjflusn wilsch, muâsch an MediaWiki:Common.css was ändârn. */" +} diff --git a/skins/CologneBlue/i18n/vro.json b/skins/CologneBlue/i18n/vro.json new file mode 100644 index 0000000..00c1cd7 --- /dev/null +++ b/skins/CologneBlue/i18n/vro.json @@ -0,0 +1,4 @@ +{ + "@metadata": [], + "skinname-cologneblue": "Array" +} diff --git a/skins/CologneBlue/i18n/wo.json b/skins/CologneBlue/i18n/wo.json new file mode 100644 index 0000000..6981f6f --- /dev/null +++ b/skins/CologneBlue/i18n/wo.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "Ibou" + ] + }, + "cologneblue.css": "/* CSS yiñ def fii dañuy am ay njeexit ci jëfandikukatu col gu Cologne Blue */", + "cologneblue.js": "/* Bépp JavaScript buñ fi duggal jëfandikukat yiy jëfandikoo col gu Cologne Blue keppa koy yeb */" +} diff --git a/skins/CologneBlue/i18n/yi.json b/skins/CologneBlue/i18n/yi.json new file mode 100644 index 0000000..8275709 --- /dev/null +++ b/skins/CologneBlue/i18n/yi.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "פוילישער" + ] + }, + "cologneblue.css": "/* CSS געשטעלט דא ווירקט נאר אויפן קעלנישן־בלוי סקין */", + "skinname-cologneblue": "קעלניש בלוי" +} diff --git a/skins/CologneBlue/i18n/yue.json b/skins/CologneBlue/i18n/yue.json new file mode 100644 index 0000000..841f2fd --- /dev/null +++ b/skins/CologneBlue/i18n/yue.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Ktchankt" + ] + }, + "cologneblue.css": "/* 響呢度放 CSS 碼去改用戶用嘅科隆藍畫面 */", + "cologneblue.js": "/* 響每一次個頁面載入時,用科隆藍畫面嘅用戶都會載入呢度任何嘅JavaScript */", + "skinname-cologneblue": "科隆藍", + "cologneblue-desc": "用最少格式設定嘅輕量級外觀" +} diff --git a/skins/CologneBlue/i18n/zh-hans.json b/skins/CologneBlue/i18n/zh-hans.json new file mode 100644 index 0000000..724cfc9 --- /dev/null +++ b/skins/CologneBlue/i18n/zh-hans.json @@ -0,0 +1,13 @@ +{ + "@metadata": { + "authors": [ + "Liuxinyu970226", + "Xiaomingyan", + "Yfdyh000" + ] + }, + "cologneblue.css": "/* 这里放置的CSS将影响使用科隆香水蓝皮肤的用户 */", + "cologneblue.js": "/* 这里的任何JavaScript将为使用科隆香水蓝皮肤的用户加载 */", + "skinname-cologneblue": "科隆香水蓝", + "cologneblue-desc": "使用最少量格式的轻量级皮肤" +} diff --git a/skins/CologneBlue/i18n/zh-hant.json b/skins/CologneBlue/i18n/zh-hant.json new file mode 100644 index 0000000..1152165 --- /dev/null +++ b/skins/CologneBlue/i18n/zh-hant.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Cwlin0416" + ] + }, + "cologneblue.css": "/* 此 CSS 會影響使用 Cologne Blue 介面外觀的使用者 */", + "cologneblue.js": "/* 此 JavaScript 會用於使用 Cologne Blue 介面外觀的使用者 */", + "skinname-cologneblue": "科隆香水藍", + "cologneblue-desc": "使用最少格式設定的輕量級的外觀" +} diff --git a/skins/CologneBlue/resources/print.css b/skins/CologneBlue/resources/print.css new file mode 100644 index 0000000..d4b0551 --- /dev/null +++ b/skins/CologneBlue/resources/print.css @@ -0,0 +1,6 @@ +#sitetitle, +#sitesub, +#titlelinks, +#footer-navigation { + display: none; +} diff --git a/skins/CologneBlue/resources/screen.css b/skins/CologneBlue/resources/screen.css new file mode 100644 index 0000000..7bc3c3d --- /dev/null +++ b/skins/CologneBlue/resources/screen.css @@ -0,0 +1,303 @@ +body { + margin: 0; + padding: 0; + color: black; + font-family: serif; +} + +#specialform { + display: inline; +} + +#content { + top: 0; + margin: 0; + padding: 0; +} + +#mw-data-after-content { + font-family: Verdana, Arial, sans-serif; + color: black; + font-size: 8pt; +} + +#powersearch { + background: #DDEEFF; + border-style: solid; + border-width: 1px; + padding: 2px; +} + +#quickbar { + width: 140px; + top: 18ex; + padding: 2px; + visibility: visible; + z-index: 99; +} + +#article, #article td, #article th, #article p { + font-family: Verdana, Arial, sans-serif; + font-size: 10pt; + color: black; +} + +#article p { + padding-top: 0; + padding-bottom: 0; + margin-top: 1ex; + margin-bottom: 0; +} + +p, pre, .mw-code, td, th, li, dd, dt { + line-height: 12pt; +} + +textarea { + overflow: auto; + width: 100%; + display: block; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; +} + +#footer { + margin-right: 2%; + margin-top: 1em; + padding: 4px; + font-family: verdana, arial, sans-serif; + font-size: 10pt; + text-align: center; +} + +#footer form { + display: inline; +} + +#cb-ca-edit { + font-weight: bold; +} + +#pagestats { + font-family: Verdana, Arial, sans-serif; + color: black; + font-size: 9pt; +} + +#quickbar { + font-family: Verdana, Arial, sans-serif; + font-size: 8pt; + font-weight: bold; + line-height: 9.5pt; + text-decoration: none; + color: black; + padding: 0; + margin-top: 0; +} + +#quickbar a { + color: #446688; +} + +/* Hide, but keep accessible for screen-readers */ +#mw-navigation h2 { + position: absolute; + top: -9999px; +} + +#quickbar h3 { + font-family: Verdana, Arial, sans-serif; + font-size: 10pt; + font-weight: bold; + line-height: 12pt; + text-decoration: none; + color: #666666; + padding: 0; + margin-bottom: 2px; + margin-top: 6px; +} + +#quickbar form { + padding: 0; + margin-top: 0; +} + +#quickbar .portlet ul, +#quickbar .portlet li { + list-style-type: none; + margin: 0; + padding: 0; + line-height: inherit; +} + +div.after-portlet { + display: inline; + padding-left: .5em; +} + +h1 { + color: #666666; + font-family: Verdana, Arial, sans-serif; + font-size: 180%; + line-height: 21pt; +} + +h1#firstHeading { + padding-bottom: 0; + margin-bottom: 0; +} + +.mw-indicators { + float: right; +} + +.mw-indicator { + display: -moz-inline-block; + display: inline-block; + zoom: 1; + *display: inline; +} + +#article p.subtitle, #article p.subpages, #article p.tagline { + color: #666666; + font-size: 11pt; + font-weight: bold; + padding-top: 0; + margin-top: 0; + padding-bottom: 1ex; +} + +a { + color: #223366; +} + +a.external { + color: #336644; +} + +a:visited { + color: #8D0749; +} + +a.printable { + text-decoration: underline; +} + +a.stub, #quickbar a.stub { + color: #772233; + text-decoration: none; +} + +a.new, #quickbar span.new a, #footer span.new a { + color: #CC2200; +} + +h2, h3, h4, h5, h6 { + margin-bottom: 0; +} + +small { + font-size: 75%; +} + +input.mw-searchInput { + width: 106px; +} + +/* Directionality-specific styles */ +#quickbar { + position: absolute; + left: 4px; +} + +#article { + margin-left: 148px; + margin-right: 4px; +} + +#footer { + margin-left: 152px; +} + +#sitetitle, #sitesub, #toplinks, #linkcollection { + margin-top: 0; + margin-bottom: 0; +} + +#sitetitle, #toplinks { + color: white; + text-transform: uppercase; + height: 32pt; +} + +#sitetitle { + padding-left: 8px; + font-family: Times, serif; + font-weight: normal; + font-size: 32pt; + line-height: 32pt; + background-color: #6688AA; +} + +#sitetitle a, #toplinks a { + color: white; + text-decoration: none; +} + +/* Bring #sitetitle to top. Otherwise #toplinks is overlaid over it, making the link unclickable. */ +#sitetitle a { + position: relative; + z-index: 10; +} + +#toplinks { + font-family: Verdana, Arial, sans-serif; + position: absolute; + top: 0; + right: 8px; + width: 100%; + font-size: 8pt; +} + +#toplinks a { + font-size: 10pt; +} + +#toplinks p { + position: absolute; + right: 0; + margin: 0; + width: 100%; + text-align: right; +} + +#toplinks #syslinks { + bottom: 0; +} + +#toplinks #variantlinks { + bottom: 12pt; +} + +#sitesub { + float: left; + margin-left: 8px; + font-family: Verdana, Arial, sans-serif; + font-size: 9pt; + font-weight: bold; + color: black; +} + +#linkcollection { + margin-top: 0.5em; + font-size: small; + margin-right: 8px; + text-align: right; + padding-left: 140px; +} + +/* Override text justification (user preference), see bug 31990 */ +#linkcollection * { + text-align: right; +} diff --git a/skins/CologneBlue/resources/sectionAnchor.css b/skins/CologneBlue/resources/sectionAnchor.css new file mode 100644 index 0000000..84f813c --- /dev/null +++ b/skins/CologneBlue/resources/sectionAnchor.css @@ -0,0 +1,4 @@ +/* Hide section anchor link, no space for it in the UI */ +.mw-headline-anchor { + display: none; +} diff --git a/skins/CologneBlue/skin.json b/skins/CologneBlue/skin.json new file mode 100644 index 0000000..60f5924 --- /dev/null +++ b/skins/CologneBlue/skin.json @@ -0,0 +1,50 @@ +{ + "name": "Cologne Blue", + "author": [ + "Lee Daniel Crocker", + "..." + ], + "url": "https://www.mediawiki.org/wiki/Skin:Cologne_Blue", + "descriptionmsg": "cologneblue-desc", + "namemsg": "skinname-cologneblue", + "license-name": "GPL-2.0+", + "type": "skin", + "ValidSkinNames": { + "cologneblue": "CologneBlue" + }, + "requires": { + "MediaWiki": ">= 1.25.0" + }, + "MessagesDirs": { + "CologneBlue": [ + "i18n" + ] + }, + "ResourceModules": { + "skins.cologneblue": { + "position": "top", + "styles": { + "resources/screen.css": { + "media": "screen" + }, + "resources/print.css": { + "media": "print" + } + } + } + }, + "ResourceFileModulePaths": { + "localBasePath": "", + "remoteSkinPath": "CologneBlue" + }, + "ResourceModuleSkinStyles": { + "cologneblue": { + "mediawiki.sectionAnchor": "resources/sectionAnchor.css" + } + }, + "AutoloadClasses": { + "SkinCologneBlue": "SkinCologneBlue.php", + "CologneBlueTemplate": "SkinCologneBlue.php" + }, + "manifest_version": 1 +} |