diff options
25 files changed, 505 insertions, 81 deletions
diff --git a/apps/files/css/files.css b/apps/files/css/files.css index 55f3d17ac2b..4dac2b66a59 100644 --- a/apps/files/css/files.css +++ b/apps/files/css/files.css @@ -186,7 +186,8 @@ table th#headerSize, table td.filesize { table table td.filesize { padding: 0 16px; } -table th#headerDate, table td.date { +table th#headerDate, table td.date, +table th.column-last, table td.column-last { -moz-box-sizing: border-box; box-sizing: border-box; position: relative; @@ -237,9 +238,9 @@ table td.filename input.filename { cursor: text; } table td.filename a, table td.login, table td.logout, table td.download, table td.upload, table td.create, table td.delete { padding:3px 8px 8px 3px; } -table td.filename .nametext, .uploadtext, .modified { float:left; padding:14px 0; } +table td.filename .nametext, .uploadtext, .modified, .column-last>span:first-child { float:left; padding:14px 0; } -.modified { +.modified, .column-last>span:first-child { position: relative; padding-left: 15px; overflow: hidden; @@ -247,8 +248,8 @@ table td.filename .nametext, .uploadtext, .modified { float:left; padding:14px 0 width: 90%; } /* ellipsize long modified dates to make room for showing delete button */ -#fileList tr:hover .modified, -#fileList tr:focus .modified { +#fileList tr:hover .modified, #fileList tr:hover .column-last>span:first-child, +#fileList tr:focus .modified, #fileList tr:focus .column-last>span:first-child { width: 75%; } diff --git a/apps/files_external/appinfo/app.php b/apps/files_external/appinfo/app.php index ca164784fb0..e88880fe516 100644 --- a/apps/files_external/appinfo/app.php +++ b/apps/files_external/appinfo/app.php @@ -20,12 +20,23 @@ OC::$CLASSPATH['OC\Files\Storage\AmazonS3'] = 'files_external/lib/amazons3.php'; OC::$CLASSPATH['OC\Files\Storage\Dropbox'] = 'files_external/lib/dropbox.php'; OC::$CLASSPATH['OC\Files\Storage\SFTP'] = 'files_external/lib/sftp.php'; OC::$CLASSPATH['OC_Mount_Config'] = 'files_external/lib/config.php'; +OC::$CLASSPATH['OCA\Files\External\Api'] = 'files_external/lib/api.php'; OCP\App::registerAdmin('files_external', 'settings'); if (OCP\Config::getAppValue('files_external', 'allow_user_mounting', 'yes') == 'yes') { OCP\App::registerPersonal('files_external', 'personal'); } +\OCA\Files\App::getNavigationManager()->add( + array( + "id" => 'extstoragemounts', + "appname" => 'files_external', + "script" => 'list.php', + "order" => 30, + "name" => $l->t('External storage') + ) +); + // connecting hooks OCP\Util::connectHook('OC_Filesystem', 'post_initMountPoints', '\OC_Mount_Config', 'initMountPointsHook'); OCP\Util::connectHook('OC_User', 'post_login', 'OC\Files\Storage\SMB_OC', 'login'); @@ -164,3 +175,4 @@ OC_Mount_Config::registerBackend('\OC\Files\Storage\SFTP', array( 'user' => (string)$l->t('Username'), 'password' => '*'.$l->t('Password'), 'root' => '&'.$l->t('Root')))); + diff --git a/apps/files_external/appinfo/routes.php b/apps/files_external/appinfo/routes.php new file mode 100644 index 00000000000..cb950364e5d --- /dev/null +++ b/apps/files_external/appinfo/routes.php @@ -0,0 +1,27 @@ +<?php +/** + * ownCloud - External Storage Routes + * + * @author Vincent Petry + * @copyright 2014 Vincent Petry <pvince81@owncloud.com> + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library 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 AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ + +OC_API::register('get', + '/apps/files_external/api/v1/mounts', + array('\OCA\Files\External\Api', 'getUserMounts'), + 'files_external'); + diff --git a/apps/files_external/js/app.js b/apps/files_external/js/app.js new file mode 100644 index 00000000000..58ad1a0f6ef --- /dev/null +++ b/apps/files_external/js/app.js @@ -0,0 +1,71 @@ +/* + * Copyright (c) 2014 Vincent Petry <pvince81@owncloud.com> + * + * This file is licensed under the Affero General Public License version 3 + * or later. + * + * See the COPYING-README file. + * + */ + +if (!OCA.External) { + OCA.External = {}; +} +OCA.External.App = { + + fileList: null, + + initList: function($el) { + if (this.fileList) { + return this.fileList; + } + + this.fileList = new OCA.External.FileList( + $el, + { + scrollContainer: $('#app-content'), + fileActions: this._createFileActions() + } + ); + + this._extendFileList(this.fileList); + this.fileList.appName = t('files_external', 'External storage'); + return this.fileList; + }, + + removeList: function() { + if (this.fileList) { + this.fileList.$fileList.empty(); + } + }, + + _createFileActions: function() { + // inherit file actions from the files app + var fileActions = new OCA.Files.FileActions(); + fileActions.registerDefaultActions(); + + // when the user clicks on a folder, redirect to the corresponding + // folder in the files app instead of opening it directly + fileActions.register('dir', 'Open', OC.PERMISSION_READ, '', function (filename, context) { + OCA.Files.App.setActiveView('files', {silent: true}); + OCA.Files.App.fileList.changeDirectory(context.$file.attr('data-path') + '/' + filename, true, true); + }); + fileActions.setDefault('dir', 'Open'); + return fileActions; + }, + + _extendFileList: function(fileList) { + // remove size column from summary + fileList.fileSummary.$el.find('.filesize').remove(); + } +}; + +$(document).ready(function() { + $('#app-content-extstoragemounts').on('show', function(e) { + OCA.External.App.initList($(e.target)); + }); + $('#app-content-extstoragemounts').on('hide', function() { + OCA.External.App.removeList(); + }); +}); + diff --git a/apps/files_external/js/mountsfilelist.js b/apps/files_external/js/mountsfilelist.js new file mode 100644 index 00000000000..70b5b81e65b --- /dev/null +++ b/apps/files_external/js/mountsfilelist.js @@ -0,0 +1,122 @@ +/* + * Copyright (c) 2014 Vincent Petry <pvince81@owncloud.com> + * + * This file is licensed under the Affero General Public License version 3 + * or later. + * + * See the COPYING-README file. + * + */ +(function() { + + /** + * External storage file list + */ + var FileList = function($el, options) { + this.initialize($el, options); + }; + + FileList.prototype = _.extend({}, OCA.Files.FileList.prototype, { + appName: 'External storage', + + initialize: function($el, options) { + OCA.Files.FileList.prototype.initialize.apply(this, arguments); + if (this.initialized) { + return; + } + }, + + _createRow: function(fileData) { + // TODO: hook earlier and render the whole row here + var $tr = OCA.Files.FileList.prototype._createRow.apply(this, arguments); + var $scopeColumn = $('<td class="column-scope column-last"><span></span></td>'); + var $backendColumn = $('<td class="column-backend"></td>'); + var scopeText = t('files_external', 'Personal'); + if (fileData.scope === 'system') { + scopeText = t('files_external', 'System'); + } + $tr.find('.filesize,.date').remove(); + $scopeColumn.find('span').text(scopeText); + $backendColumn.text(fileData.backend); + $tr.find('td.filename').after($scopeColumn).after($backendColumn); + $tr.find('td.filename input:checkbox').remove(); + return $tr; + }, + + updateEmptyContent: function() { + var dir = this.getCurrentDirectory(); + if (dir === '/') { + // root has special permissions + this.$el.find('#emptycontent').toggleClass('hidden', !this.isEmpty); + this.$el.find('#filestable thead th').toggleClass('hidden', this.isEmpty); + } + else { + OCA.Files.FileList.prototype.updateEmptyContent.apply(this, arguments); + } + }, + + getDirectoryPermissions: function() { + return OC.PERMISSION_READ | OC.PERMISSION_DELETE; + }, + + updateStorageStatistics: function() { + // no op because it doesn't have + // storage info like free space / used space + }, + + reload: function() { + var self = this; + this.showMask(); + if (this._reloadCall) { + this._reloadCall.abort(); + } + this._reloadCall = $.ajax({ + url: OC.linkToOCS('apps/files_external/api/v1') + 'mounts', + data: { + format: 'json' + }, + type: 'GET', + beforeSend: function(xhr) { + xhr.setRequestHeader('OCS-APIREQUEST', 'true'); + }, + error: function(result) { + self.reloadCallback(result); + }, + success: function(result) { + self.reloadCallback(result); + } + }); + }, + + reloadCallback: function(result) { + delete this._reloadCall; + this.hideMask(); + + if (result.ocs && result.ocs.data) { + this.setFiles(this._makeFiles(result.ocs.data)); + } + else { + // TODO: error handling + } + }, + + /** + * Converts the OCS API response data to a file info + * list + * @param OCS API mounts array + * @return array of file info maps + */ + _makeFiles: function(data) { + var files = _.map(data, function(fileData) { + fileData.icon = OC.imagePath('core', 'filetypes/folder-external'); + return fileData; + }); + + files.sort(this._sortComparator); + + return files; + } + }); + + OCA.External.FileList = FileList; +})(); diff --git a/apps/files_external/lib/api.php b/apps/files_external/lib/api.php new file mode 100644 index 00000000000..51c48427aa3 --- /dev/null +++ b/apps/files_external/lib/api.php @@ -0,0 +1,83 @@ +<?php +/** + * ownCloud + * + * @author Vincent Petry + * @copyright 2014 Vincent Petry pvince81@owncloud.com + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library 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 AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ + +namespace OCA\Files\External; + +class Api { + + /** + * Formats the given mount config to a mount entry. + * + * @param bool $isSystemMount true for system mount, false + * for personal mount + * + * @return array entry + */ + private static function formatMount($mountConfig, $isSystemMount = false) { + // split user name from mount point + $path = dirname($mountConfig['mountpoint']); + if ($path === '.') { + $path = ''; + } + + $permissions = \OCP\PERMISSION_READ; + // personal mounts can be deleted + if (!$isSystemMount) { + $permissions |= \OCP\PERMISSION_DELETE; + } + + // TODO: add storageType, might need to use another OC_Mount_Config method + $entry = array( + 'name' => basename($mountConfig['mountpoint']), + 'path' => $path, + 'type' => 'dir', + 'backend' => $mountConfig['backend'], + 'scope' => ( $isSystemMount ? 'system' : 'personal' ), + 'permissions' => $permissions + ); + return $entry; + } + + /** + * Returns the mount points visible for this user. + * + * @param array $params + * @return \OC_OCS_Result share information + */ + public static function getUserMounts($params) { + $entries = array(); + $user = \OC_User::getUser(); + + $personalMounts = \OC_Mount_Config::getPersonalMountPoints(); + $systemMounts = \OC_Mount_Config::getSystemMountPoints(); + + foreach ($systemMounts as $mountConfig) { + $entries[] = self::formatMount($mountConfig, true); + } + + foreach ($personalMounts as $mountConfig) { + $entries[] = self::formatMount($mountConfig, false); + } + + return new \OC_OCS_Result($entries); + } +} diff --git a/apps/files_external/list.php b/apps/files_external/list.php new file mode 100644 index 00000000000..e9517724f2f --- /dev/null +++ b/apps/files_external/list.php @@ -0,0 +1,11 @@ +<?php + +// Check if we are a user +OCP\User::checkLoggedIn(); + +$tmpl = new OCP\Template('files_external', 'list', ''); + +OCP\Util::addScript('files_external', 'app'); +OCP\Util::addScript('files_external', 'mountsfilelist'); + +$tmpl->printPage(); diff --git a/apps/files_external/templates/list.php b/apps/files_external/templates/list.php new file mode 100644 index 00000000000..4e06bc7024c --- /dev/null +++ b/apps/files_external/templates/list.php @@ -0,0 +1,31 @@ +<?php /** @var $l OC_L10N */ ?> +<div id="controls"> + <div id="file_action_panel"></div> +</div> +<div id='notification'></div> + +<div id="emptycontent" class="hidden"><?php p($l->t( 'You don\'t have any external storages' )); ?></div> + +<input type="hidden" name="dir" value="" id="dir"> + +<table id="filestable"> + <thead> + <tr> + <th id='headerName' class="hidden column-name"> + <div id="headerName-container"> + <a class="name sort columntitle" data-sort="name"><span><?php p($l->t( 'Name' )); ?></span><span class="sort-indicator"></span></a> + </div> + </th> + <th id="headerBackend" class="hidden column-backend"> + <a class="backend sort columntitle" data-sort="backend"><span><?php p($l->t('Storage type')); ?></span><span class="sort-indicator"></span></a> + </th> + <th id="headerScope" class="hidden column-scope column-last"> + <a class="scope sort columntitle" data-sort="scope"><span><?php p($l->t('Scope')); ?></span><span class="sort-indicator"></span></a> + </th> + </tr> + </thead> + <tbody id="fileList"> + </tbody> + <tfoot> + </tfoot> +</table> diff --git a/apps/files_trashbin/appinfo/database.xml b/apps/files_trashbin/appinfo/database.xml index a6ba242c1cf..2944a31b02d 100644 --- a/apps/files_trashbin/appinfo/database.xml +++ b/apps/files_trashbin/appinfo/database.xml @@ -13,6 +13,15 @@ <declaration> + <field> + <name>auto_id</name> + <type>integer</type> + <default>0</default> + <notnull>true</notnull> + <autoincrement>1</autoincrement> + <length>4</length> + </field> + <field> <name>id</name> <type>text</type> diff --git a/apps/files_trashbin/appinfo/version b/apps/files_trashbin/appinfo/version index 5a2a5806df6..ee6cdce3c29 100644 --- a/apps/files_trashbin/appinfo/version +++ b/apps/files_trashbin/appinfo/version @@ -1 +1 @@ -0.6 +0.6.1 diff --git a/apps/user_ldap/appinfo/database.xml b/apps/user_ldap/appinfo/database.xml index 812e450dde7..4875a70f852 100644 --- a/apps/user_ldap/appinfo/database.xml +++ b/apps/user_ldap/appinfo/database.xml @@ -46,6 +46,7 @@ <index> <name>owncloud_name_users</name> + <primary>true</primary> <unique>true</unique> <field> <name>owncloud_name</name> @@ -90,6 +91,7 @@ <index> <name>ldap_dn_groups</name> <unique>true</unique> + <primary>true</primary> <field> <name>ldap_dn</name> </field> @@ -132,6 +134,7 @@ <index> <name>ldap_group_members_index</name> <unique>true</unique> + <primary>true</primary> <field> <name>owncloudname</name> </field> @@ -141,4 +144,4 @@ </table> -</database>
\ No newline at end of file +</database> diff --git a/core/css/header.css b/core/css/header.css index d04895d27cf..d2645c6a7d5 100644 --- a/core/css/header.css +++ b/core/css/header.css @@ -34,7 +34,7 @@ position: absolute; top: 0; left: 0; - padding: 6px; + padding: 5px; padding-bottom: 0; height: 45px; /* header height */ -moz-box-sizing: border-box; @@ -44,16 +44,16 @@ #header .logo { background-image: url(../img/logo.svg); background-repeat: no-repeat; - width: 250px; - height: 118px; + width: 252px; + height: 120px; margin: 0 auto; } #header .logo-wide { background-image: url(../img/logo-wide.svg); background-repeat: no-repeat; - width: 147px; - height: 32px; + width: 150px; + height: 34px; } #header .logo-icon { @@ -61,8 +61,8 @@ display: inline-block; background-image: url(../img/logo-icon.svg); background-repeat: no-repeat; - width: 60px; - height: 32px; + width: 62px; + height: 34px; } #header .menutoggle { diff --git a/core/img/logo-icon.png b/core/img/logo-icon.png Binary files differindex 26ed8b46416..4f494d6121f 100644 --- a/core/img/logo-icon.png +++ b/core/img/logo-icon.png diff --git a/core/img/logo-icon.svg b/core/img/logo-icon.svg index 05b467e87a7..9c4260f56a3 100644 --- a/core/img/logo-icon.svg +++ b/core/img/logo-icon.svg @@ -1,51 +1,2 @@ <?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg - xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:cc="http://creativecommons.org/ns#" - xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" - xmlns:svg="http://www.w3.org/2000/svg" - xmlns="http://www.w3.org/2000/svg" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - enable-background="new 0 0 595.275 311.111" - xml:space="preserve" - height="32" - width="60" - version="1.1" - y="0px" - x="0px" - viewBox="0 0 60.001066 32" - id="svg2" - inkscape:version="0.48.4 r9939" - sodipodi:docname="logo-icon.svg"><metadata - id="metadata28"><rdf:RDF><cc:Work - rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type - rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs - id="defs26" /><sodipodi:namedview - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1" - objecttolerance="10" - gridtolerance="10" - guidetolerance="10" - inkscape:pageopacity="0" - inkscape:pageshadow="2" - inkscape:window-width="1920" - inkscape:window-height="1002" - id="namedview24" - showgrid="false" - inkscape:zoom="5.3370171" - inkscape:cx="92.998089" - inkscape:cy="17.546808" - inkscape:window-x="0" - inkscape:window-y="34" - inkscape:window-maximized="1" - inkscape:current-layer="svg2" - fit-margin-top="0" - fit-margin-left="0" - fit-margin-right="0" - fit-margin-bottom="0" /><path - inkscape:connector-curvature="0" - style="text-indent:0;text-transform:none;block-progression:tb;color:#000000;fill:#ffffff;enable-background:accumulate" - d="m 26.799495,-2.8433247e-4 c -4.405596,0 -7.965069,3.55932393247 -7.965069,7.96507263247 0,1.8160141 0.604729,3.4874067 1.624238,4.8258037 2.211704,-2.559892 5.476107,-4.1855106 9.120767,-4.1855106 1.78311,0 3.47404,0.39707 4.99765,1.093249 0.12336,-0.55787 0.18742,-1.138036 0.18742,-1.7335421 0,-4.4056007 -3.55933,-7.96507263247 -7.965075,-7.96507263247 z M 16.398242,3.6853126 c -2.294322,0 -4.138652,1.8599639 -4.138652,4.1542875 0,0.7428413 0.19164,1.4447423 0.530989,2.0459199 1.384467,-0.7810176 2.985128,-1.2337766 4.685276,-1.2337766 0.164073,0 0.322114,0.0059 0.48415,0.01578 -0.01835,-0.232579 -0.03122,-0.465534 -0.03122,-0.7027887 0,-1.2778741 0.277549,-2.4937463 0.76528,-3.5920269 -0.656667,-0.440337 -1.443409,-0.687152 -2.295801,-0.687152 z m 19.646819,2.8580148 c -0.16951,0 -0.33288,0.020716 -0.49977,0.031173 0.0722,0.4551355 0.12493,0.9146904 0.12493,1.3899908 0,0.7395852 -0.094,1.4532752 -0.2655,2.1395898 2.00997,1.112338 3.67919,2.776726 4.779,4.79458 1.1407,-0.593878 2.41324,-0.971464 3.76382,-1.061976 -0.34808,-4.0820746 -3.72989,-7.2932591 -7.90242,-7.2932591 z m -6.46558,2.96732 c -6.164697,0 -11.151006,4.9858156 -11.151006,11.1510016 0,6.164694 4.985816,11.151003 11.151006,11.151003 6.16519,0 11.151,-4.986309 11.151,-11.151003 0,-6.165186 -4.98631,-11.1510016 -11.151,-11.1510016 z m -12.103478,0.04676 c -4.782694,0 -8.652175,3.8694326 -8.652175,8.6521756 0,2.815496 1.341453,5.30791 3.420225,6.887311 0.876365,-1.690285 2.636541,-2.842379 4.66964,-2.842379 0.245725,0 0.481581,0.02979 0.718422,0.06255 -0.07434,-0.540903 -0.109323,-1.094236 -0.109323,-1.655461 0,-2.683155 0.873405,-5.164373 2.358247,-7.168465 -0.888843,-1.112195 -1.524893,-2.448569 -1.796035,-3.9044096 -0.200939,-0.01381 -0.404575,-0.03117 -0.60907,-0.03117 z m 27.112218,5.1540156 c -1.45224,0 -2.81263,0.370769 -4.01371,0.99953 0.68202,1.51069 1.06198,3.186868 1.06198,4.950794 0,3.302733 -1.32789,6.301818 -3.48272,8.480523 1.583,1.757466 3.87979,2.858015 6.4345,2.858015 4.7827,0 8.65218,-3.869384 8.65218,-8.652175 0,-4.782693 -3.86943,-8.636391 -8.65218,-8.636391 z M 7.980856,15.851581 C 3.574615,15.851088 0,19.394627 0,23.800375 c 0,4.405749 3.574812,7.980363 7.980363,7.980363 1.676867,0 3.230273,-0.522455 4.513474,-1.405577 -0.530249,-0.823933 -0.843366,-1.809011 -0.843366,-2.858015 0,-0.544455 0.08034,-1.06755 0.234261,-1.561742 -2.402296,-1.736108 -3.96685,-4.561272 -3.96685,-7.746067 0,-0.809233 0.106642,-1.591732 0.296737,-2.342663 -0.0789,-0.002 -0.154783,-0.01578 -0.234266,-0.01578 z m 46.836965,6.840451 c -0.23502,0 -0.46245,0.02683 -0.68715,0.06255 0.0124,0.198664 0.0156,0.391684 0.0156,0.593484 0,2.540309 -1.00234,4.846027 -2.62377,6.559297 0.79769,0.927614 1.96937,1.514883 3.29533,1.514883 2.41517,0 4.3729,-1.94209 4.3729,-4.357311 0,-2.41517 -1.95773,-4.372897 -4.3729,-4.372897 z m -37.903634,0.468513 c -2.415074,0 -4.357313,1.942239 -4.357313,4.357311 0,2.415072 1.942239,4.372898 4.357313,4.372898 1.85118,0 3.422493,-1.155103 4.060565,-2.779933 -1.556954,-1.585764 -2.675951,-3.608748 -3.170341,-5.85641 -0.289328,-0.05978 -0.582977,-0.09372 -0.890224,-0.09372 z" - id="path6" /></svg>
\ No newline at end of file +<svg xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" xml:space="preserve" height="34" width="62" version="1.1" y="0px" x="0px" xmlns:cc="http://creativecommons.org/ns#" enable-background="new 0 0 595.275 311.111" viewBox="0 0 62.001102 34" xmlns:dc="http://purl.org/dc/elements/1.1/"><path style="block-progression:tb;color:#000000;enable-background:accumulate;text-transform:none;text-indent:0" d="m27.8 0.99971c-4.4056 0-7.9651 3.5593-7.9651 7.9651 0 1.816 0.60473 3.4874 1.6242 4.8258 2.2117-2.5599 5.4761-4.1855 9.1208-4.1855 1.7831 0 3.474 0.39707 4.9976 1.0932 0.12336-0.55787 0.18742-1.138 0.18742-1.7335 0-4.4056-3.5593-7.9651-7.9651-7.9651zm-10.402 3.6856c-2.2943 0-4.1387 1.86-4.1387 4.1543 0 0.74284 0.19164 1.4447 0.53099 2.0459 1.3845-0.78102 2.9851-1.2338 4.6853-1.2338 0.16407 0 0.32211 0.0059 0.48415 0.01578-0.01835-0.23258-0.03122-0.46553-0.03122-0.70279 0-1.2779 0.27755-2.4937 0.76528-3.592-0.65667-0.44034-1.4434-0.68715-2.2958-0.68715zm19.647 2.858c-0.16951 0-0.33288 0.020716-0.49977 0.031173 0.0722 0.45514 0.12493 0.91469 0.12493 1.39 0 0.73959-0.094 1.4533-0.2655 2.1396 2.01 1.1123 3.6792 2.7767 4.779 4.7946 1.1407-0.59388 2.4132-0.97146 3.7638-1.062-0.34808-4.0821-3.7299-7.2933-7.9024-7.2933zm-6.4656 2.9673c-6.1647 0-11.151 4.9858-11.151 11.151 0 6.1647 4.9858 11.151 11.151 11.151s11.151-4.9863 11.151-11.151c0-6.1652-4.9863-11.151-11.151-11.151zm-12.103 0.04676c-4.7827 0-8.6522 3.8694-8.6522 8.6522 0 2.8155 1.3415 5.3079 3.4202 6.8873 0.87636-1.6903 2.6365-2.8424 4.6696-2.8424 0.24572 0 0.48158 0.02979 0.71842 0.06255-0.07434-0.5409-0.10932-1.0942-0.10932-1.6555 0-2.6832 0.8734-5.1644 2.3582-7.1685-0.88884-1.1122-1.5249-2.4486-1.796-3.9044-0.20094-0.01381-0.40458-0.03117-0.60907-0.03117zm27.112 5.154c-1.4522 0-2.8126 0.37077-4.0137 0.99953 0.68202 1.5107 1.062 3.1869 1.062 4.9508 0 3.3027-1.3279 6.3018-3.4827 8.4805 1.583 1.7575 3.8798 2.858 6.4345 2.858 4.7827 0 8.6522-3.8694 8.6522-8.6522 0-4.7827-3.8694-8.6364-8.6522-8.6364zm-36.607 1.14c-4.4062-0.000493-7.9809 3.543-7.9809 7.9488 0 4.4057 3.5748 7.9804 7.9804 7.9804 1.6769 0 3.2303-0.52246 4.5135-1.4056-0.53025-0.82393-0.84337-1.809-0.84337-2.858 0-0.54446 0.08034-1.0676 0.23426-1.5617-2.4023-1.7361-3.9669-4.5613-3.9669-7.7461 0-0.80923 0.10664-1.5917 0.29674-2.3427-0.0789-0.002-0.15478-0.01578-0.23427-0.01578zm46.837 6.8405c-0.23502 0-0.46245 0.02683-0.68715 0.06255 0.0124 0.19866 0.0156 0.39168 0.0156 0.59348 0 2.5403-1.0023 4.846-2.6238 6.5593 0.79769 0.92761 1.9694 1.5149 3.2953 1.5149 2.4152 0 4.3729-1.9421 4.3729-4.3573s-1.9577-4.3729-4.3729-4.3729zm-37.904 0.46851c-2.4151 0-4.3573 1.9422-4.3573 4.3573s1.9422 4.3729 4.3573 4.3729c1.8512 0 3.4225-1.1551 4.0606-2.7799-1.557-1.5858-2.676-3.6087-3.1703-5.8564-0.28933-0.05978-0.58298-0.09372-0.89022-0.09372z" fill="#FFF"/></svg> diff --git a/core/img/logo-wide.png b/core/img/logo-wide.png Binary files differindex b15c76ecb15..bca5fa7997f 100644 --- a/core/img/logo-wide.png +++ b/core/img/logo-wide.png diff --git a/core/img/logo-wide.svg b/core/img/logo-wide.svg index bacba6755c5..1ee00e725e5 100644 --- a/core/img/logo-wide.svg +++ b/core/img/logo-wide.svg @@ -1,3 +1,2 @@ <?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 595.275 311.111" xml:space="preserve" height="32" width="147.33" version="1.1" y="0px" x="0px" xmlns:cc="http://creativecommons.org/ns#" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 147.33262 32" xmlns:dc="http://purl.org/dc/elements/1.1/"><g fill="#fff"> -<path style="block-progression:tb;color:#000000;enable-background:accumulate;text-transform:none;text-indent:0" d="m104 13v15.344c0 2.008 1.71 3.656 3.72 3.656v-1c-1.52 0-2.72-1.137-2.72-2.656v-15.344h-1zm42 0v8h-4.53c-2.99 0-5.47 2.571-5.47 5.562s2.48 5.466 5.47 5.438h1.78c0.88 0 1.74-0.442 2.44-1.094 0.7-0.651 1.29-1.555 1.31-2.562v-15.344h-1zm-44.5 2c-4.635 0-8.5 3.865-8.5 8.5s3.865 8.5 8.5 8.5v-1c-4.146 0-7.5-3.353-7.5-7.5s3.354-7.5 7.5-7.5v-1zm-46 6c-0.606 0-1.201 0.092-1.75 0.281 0.071 0.325 0.15 0.664 0.188 1 0.489-0.18 1.007-0.281 1.562-0.281 2.503 0 4.5 1.997 4.5 4.5s-1.997 4.5-4.5 4.5c-1.444 0-2.71-0.676-3.531-1.719-0.198 0.255-0.434 0.485-0.657 0.719 1.017 1.208 2.521 2 4.188 2 2.991 0 5.5-2.509 5.5-5.5s-2.509-5.5-5.5-5.5zm7.5 0v7.344c0 2.008 1.992 3.656 4 3.656 1.368 0 2.905-0.695 3.531-1.812 0.622 1.117 2.101 1.812 3.469 1.812 2.008 0 4-1.648 4-3.656v-7.344h-1v7.344c0 1.519-1.481 2.656-3 2.656s-3-1.002-3-2.656v-7.344h-1v7.344c0 1.519-1.48 2.656-3 2.656-1.519 0-3-1.137-3-2.656v-7.344h-1zm22.531 0c-2.991 0-5.531 2.54-5.531 5.531v5.469h1v-5.469c0-2.502 2.029-4.531 4.531-4.531 2.503 0 4.469 2.029 4.469 4.531v5.469h1v-5.469c0-2.991-2.477-5.531-5.469-5.531zm29.969 0c-2.99 0-5.5 2.509-5.5 5.5s2.51 5.5 5.5 5.5 5.5-2.509 5.5-5.5-2.51-5.5-5.5-5.5zm7.5 0v5.562c0 2.991 2.48 5.438 5.47 5.438s5.53-2.447 5.53-5.438v-5.562h-1v5.562c0 2.502-2.03 4.438-4.53 4.438s-4.47-1.936-4.47-4.438v-5.562h-1zm-7.5 1c2.5 0 4.5 1.997 4.5 4.5s-2 4.5-4.5 4.5-4.5-1.997-4.5-4.5 2-4.5 4.5-4.5zm25.97 0h4.53v6.344c-0.01 0.7-0.35 1.387-0.91 1.906-0.55 0.519-1.27 0.75-1.84 0.75h-1.78c-2.5 0-4.47-1.936-4.47-4.438s1.97-4.562 4.47-4.562z" transform="translate(-.0000031714)"/><path d="m16.398 3.6857c-2.2943 0-4.1386 1.8599-4.1386 4.1542 0 0.74283 0.19165 1.4447 0.53099 2.0459 1.3845-0.781 2.9851-1.2338 4.6852-1.2338 0.16408 0 0.32211 0.00666 0.48414 0.015617-0.01834-0.23258-0.03123-0.46554-0.03123-0.70278 0-1.2779 0.27755-2.4937 0.76525-3.592-0.657-0.4403-1.443-0.6871-2.296-0.6871z"/><path d="m7.9805 15.852c-4.4057 0-7.9805 3.5435-7.9805 7.9492s3.5748 7.9805 7.9805 7.9805c1.6769 0 3.2302-0.52246 4.5134-1.4056-0.53024-0.82393-0.84334-1.809-0.84334-2.858 0-0.54446 0.08034-1.0675 0.23426-1.5617-2.4023-1.7361-3.9668-4.5612-3.9668-7.7462 0-0.80924 0.10664-1.5917 0.29673-2.3426-0.078902-0.0023-0.15479-0.01562-0.23426-0.01562z"/><path d="m17.476 9.5578c-4.7826 0-8.652 3.8694-8.652 8.652 0 2.8154 1.3414 5.3078 3.4202 6.8873 0.87636-1.6903 2.6365-2.8424 4.6696-2.8424 0.24572 0 0.48158 0.02978 0.7184 0.06247-0.07434-0.54088-0.10932-1.0943-0.10932-1.6554 0-2.6831 0.87339-5.1644 2.3582-7.1684-0.889-1.112-1.525-2.448-1.796-3.9039-0.201-0.014-0.405-0.0313-0.609-0.0313z"/><path d="m36.045 6.5437c-0.1695 0-0.33288 0.02081-0.49976 0.031235 0.07218 0.45513 0.12494 0.9147 0.12494 1.3899 0 0.7396-0.09406 1.4533-0.2655 2.1396 2.01 1.1123 3.6791 2.7767 4.7789 4.7945 1.1407-0.59386 2.4132-0.97147 3.7638-1.062-0.34807-4.082-3.7298-7.2933-7.9024-7.2933z"/><path d="m26.799 5.1362e-7c-4.4056 0-7.9649 3.5593-7.9649 7.9649 0 1.816 0.60469 3.4874 1.6242 4.8258 2.2117-2.5599 5.4759-4.1855 9.1205-4.1855 1.7831 0 3.474 0.39707 4.9976 1.0932 0.124-0.5582 0.188-1.1384 0.188-1.7338 0-4.4056-3.559-7.9649-7.965-7.9649z"/><path d="m44.588 14.712c-1.4522 0-2.8126 0.37076-4.0137 0.99951 0.682 1.5107 1.062 3.1868 1.062 4.9507 0 3.3027-1.3279 6.3016-3.4827 8.4802 1.583 1.7575 3.8797 2.858 6.4344 2.858 4.7826 0 8.652-3.8694 8.652-8.652 0-4.7827-3.8694-8.6364-8.652-8.6364z"/><path d="m16.914 23.161c-2.415 0-4.3572 1.9422-4.3572 4.3572s1.9422 4.3729 4.3572 4.3729c1.8512 0 3.4224-1.1551 4.0605-2.7799-1.557-1.5857-2.6759-3.6087-3.1703-5.8565-0.28932-0.05983-0.58298-0.09371-0.89019-0.09371z"/><path d="m29.579 9.511c-6.1647 0-11.151 4.9857-11.151 11.151 0 6.1645 4.9858 11.151 11.151 11.151 6.165 0 11.151-4.9864 11.151-11.151 0-6.1651-4.9861-11.151-11.151-11.151z"/></g></svg> +<svg xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" xml:space="preserve" height="34" width="150" version="1.1" y="0px" x="0px" xmlns:cc="http://creativecommons.org/ns#" enable-background="new 0 0 595.275 311.111" viewBox="0 0 150.00267 34" xmlns:dc="http://purl.org/dc/elements/1.1/"><g transform="translate(1 .99987)" fill="#FFF"><path style="block-progression:tb;color:#000000;enable-background:accumulate;text-transform:none;text-indent:0" d="m104 13v15.344c0 2.008 1.71 3.656 3.72 3.656v-1c-1.52 0-2.72-1.137-2.72-2.656v-15.344h-1zm42 0v8h-4.53c-2.99 0-5.47 2.571-5.47 5.562s2.48 5.466 5.47 5.438h1.78c0.88 0 1.74-0.442 2.44-1.094 0.7-0.651 1.29-1.555 1.31-2.562v-15.344h-1zm-44.5 2c-4.635 0-8.5 3.865-8.5 8.5s3.865 8.5 8.5 8.5v-1c-4.146 0-7.5-3.353-7.5-7.5s3.354-7.5 7.5-7.5v-1zm-46 6c-0.606 0-1.201 0.092-1.75 0.281 0.071 0.325 0.15 0.664 0.188 1 0.489-0.18 1.007-0.281 1.562-0.281 2.503 0 4.5 1.997 4.5 4.5s-1.997 4.5-4.5 4.5c-1.444 0-2.71-0.676-3.531-1.719-0.198 0.255-0.434 0.485-0.657 0.719 1.017 1.208 2.521 2 4.188 2 2.991 0 5.5-2.509 5.5-5.5s-2.509-5.5-5.5-5.5zm7.5 0v7.344c0 2.008 1.992 3.656 4 3.656 1.368 0 2.905-0.695 3.531-1.812 0.622 1.117 2.101 1.812 3.469 1.812 2.008 0 4-1.648 4-3.656v-7.344h-1v7.344c0 1.519-1.481 2.656-3 2.656s-3-1.002-3-2.656v-7.344h-1v7.344c0 1.519-1.48 2.656-3 2.656-1.519 0-3-1.137-3-2.656v-7.344h-1zm22.531 0c-2.991 0-5.531 2.54-5.531 5.531v5.469h1v-5.469c0-2.502 2.029-4.531 4.531-4.531 2.503 0 4.469 2.029 4.469 4.531v5.469h1v-5.469c0-2.991-2.477-5.531-5.469-5.531zm29.969 0c-2.99 0-5.5 2.509-5.5 5.5s2.51 5.5 5.5 5.5 5.5-2.509 5.5-5.5-2.51-5.5-5.5-5.5zm7.5 0v5.562c0 2.991 2.48 5.438 5.47 5.438s5.53-2.447 5.53-5.438v-5.562h-1v5.562c0 2.502-2.03 4.438-4.53 4.438s-4.47-1.936-4.47-4.438v-5.562h-1zm-7.5 1c2.5 0 4.5 1.997 4.5 4.5s-2 4.5-4.5 4.5-4.5-1.997-4.5-4.5 2-4.5 4.5-4.5zm25.97 0h4.53v6.344c-0.01 0.7-0.35 1.387-0.91 1.906-0.55 0.519-1.27 0.75-1.84 0.75h-1.78c-2.5 0-4.47-1.936-4.47-4.438s1.97-4.562 4.47-4.562z" transform="translate(-3.1714e-6,0)"/><path d="m16.398 3.6857c-2.2943 0-4.1386 1.8599-4.1386 4.1542 0 0.74283 0.19165 1.4447 0.53099 2.0459 1.3845-0.781 2.9851-1.2338 4.6852-1.2338 0.16408 0 0.32211 0.00666 0.48414 0.015617-0.01834-0.23258-0.03123-0.46554-0.03123-0.70278 0-1.2779 0.27755-2.4937 0.76525-3.592-0.657-0.4403-1.443-0.6871-2.296-0.6871z"/><path d="m7.9805 15.852c-4.4057 0-7.9805 3.544-7.9805 7.949 0 4.4057 3.5748 7.9805 7.9805 7.9805 1.6769 0 3.2302-0.52246 4.5134-1.4056-0.53024-0.82393-0.84334-1.809-0.84334-2.858 0-0.54446 0.08034-1.0675 0.23426-1.5617-2.4023-1.7361-3.9668-4.5612-3.9668-7.7462 0-0.80924 0.10664-1.5917 0.29673-2.3426-0.0791-0.002-0.1549-0.015-0.2344-0.015z"/><path d="m17.476 9.5578c-4.7826 0-8.652 3.8694-8.652 8.652 0 2.8154 1.3414 5.3078 3.4202 6.8873 0.87636-1.6903 2.6365-2.8424 4.6696-2.8424 0.24572 0 0.48158 0.02978 0.7184 0.06247-0.07434-0.54088-0.10932-1.0943-0.10932-1.6554 0-2.6831 0.87339-5.1644 2.3582-7.1684-0.889-1.112-1.525-2.448-1.796-3.9039-0.201-0.014-0.405-0.0313-0.609-0.0313z"/><path d="m36.045 6.5437c-0.1695 0-0.33288 0.02081-0.49976 0.031235 0.07218 0.45513 0.12494 0.9147 0.12494 1.3899 0 0.7396-0.09406 1.4533-0.2655 2.1396 2.01 1.1123 3.6791 2.7767 4.7789 4.7945 1.1407-0.59386 2.4132-0.97147 3.7638-1.062-0.34807-4.082-3.7298-7.2933-7.9024-7.2933z"/><path d="m26.799 5.1362e-7c-4.4056 0-7.9649 3.5593-7.9649 7.9649 0 1.816 0.60469 3.4874 1.6242 4.8258 2.2117-2.5599 5.4759-4.1855 9.1205-4.1855 1.7831 0 3.474 0.39707 4.9976 1.0932 0.124-0.5582 0.188-1.1384 0.188-1.7338 0-4.4056-3.559-7.9649-7.965-7.9649z"/><path d="m44.588 14.712c-1.4522 0-2.8126 0.37076-4.0137 0.99951 0.682 1.5107 1.062 3.1868 1.062 4.9507 0 3.3027-1.3279 6.3016-3.4827 8.4802 1.583 1.7575 3.8797 2.858 6.4344 2.858 4.7826 0 8.652-3.8694 8.652-8.652 0-4.7827-3.8694-8.6364-8.652-8.6364z"/><path d="m16.914 23.161c-2.415 0-4.3572 1.9422-4.3572 4.3572s1.9422 4.3729 4.3572 4.3729c1.8512 0 3.4224-1.1551 4.0605-2.7799-1.557-1.5857-2.6759-3.6087-3.1703-5.8565-0.28932-0.05983-0.58298-0.09371-0.89019-0.09371z"/><path d="m29.579 9.511c-6.1647 0-11.151 4.9857-11.151 11.151 0 6.1645 4.9858 11.151 11.151 11.151 6.165 0 11.151-4.9864 11.151-11.151 0-6.1651-4.9861-11.151-11.151-11.151z"/></g></svg> diff --git a/core/img/logo.png b/core/img/logo.png Binary files differindex 2c551a1c22c..f71068d78fc 100644 --- a/core/img/logo.png +++ b/core/img/logo.png diff --git a/core/img/logo.svg b/core/img/logo.svg index 06008c41c57..71abed92fca 100644 --- a/core/img/logo.svg +++ b/core/img/logo.svg @@ -1,4 +1,2 @@ <?xml version="1.0" encoding="UTF-8" standalone="no"?> -<svg xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 595.275 311.111" xml:space="preserve" height="118.23" width="250" version="1.1" y="0px" x="0px" xmlns:cc="http://creativecommons.org/ns#" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 250.00001 118.22802" xmlns:dc="http://purl.org/dc/elements/1.1/"> -<path style="block-progression:tb;color:#000000;enable-background:accumulate;text-transform:none;text-indent:0" d="m150.66 0c-11.241 0-20.322 9.0815-20.322 20.322 0 4.6335 1.5429 8.898 4.1442 12.313 5.6431-6.5315 13.972-10.679 23.271-10.679 4.5496 0 8.8639 1.0131 12.751 2.7893 0.31474-1.4234 0.47817-2.9037 0.47817-4.4231 0.01-11.24-9.08-20.322-20.32-20.322zm-26.539 9.404c-5.8539 0-10.56 4.7456-10.56 10.599 0 1.8953 0.48899 3.6862 1.3548 5.22 3.5325-1.9927 7.6164-3.148 11.954-3.148 0.41864 0 0.82186 0.01699 1.2353 0.03985-0.0468-0.59343-0.0797-1.1878-0.0797-1.7931 0-3.2605 0.70816-6.3627 1.9525-9.165-1.6754-1.1235-3.6828-1.7533-5.8576-1.7533zm50.128 7.2921c-0.43247 0-0.84934 0.05309-1.2751 0.0797 0.18418 1.1613 0.31878 2.3339 0.31878 3.5464 0 1.8871-0.24 3.708-0.67741 5.4591 5.1284 2.8381 9.3873 7.0847 12.193 12.233 2.9105-1.5152 6.1573-2.4787 9.6033-2.7096-0.8881-10.415-9.5166-18.609-20.163-18.609zm-16.497 7.5711c-15.729 0-28.451 12.721-28.451 28.451 0 15.729 12.721 28.451 28.451 28.451s28.451-12.723 28.451-28.451c0-15.73-12.722-28.451-28.451-28.451zm-30.882 0.11954c-12.203 0-22.076 9.8727-22.076 22.076 0 7.1836 3.4227 13.543 8.7266 17.573 2.236-4.3127 6.727-7.2523 11.914-7.2523 0.62695 0 1.2287 0.07599 1.833 0.15939-0.18969-1.3801-0.27893-2.792-0.27893-4.2239 0-6.846 2.2284-13.177 6.017-18.29-2.2678-2.8377-3.8907-6.2474-4.5825-9.9619-0.51269-0.03551-1.0323-0.0797-1.5541-0.0797zm69.18 13.149c-3.7054 0-7.1763 0.94599-10.241 2.5503 1.7401 3.8545 2.7096 8.1312 2.7096 12.632 0 8.4268-3.3881 16.079-8.886 21.637 4.039 4.4841 9.8991 7.2921 16.417 7.2921 12.203 0 22.076-9.8727 22.076-22.076s-9.8727-22.036-22.076-22.036zm-93.403 2.9089c-11.241 0-20.362 9.0413-20.362 20.282s9.121 20.362 20.362 20.362c4.2785 0 8.2419-1.333 11.516-3.5863-1.3529-2.1023-2.1518-4.6156-2.1518-7.2921 0-1.3892 0.20497-2.7238 0.59771-3.9848-6.1294-4.4296-10.121-11.638-10.121-19.764 0-2.0648 0.27209-4.0613 0.75711-5.9772-0.20132-0.0058-0.39495-0.03985-0.59772-0.03985zm119.5 17.453c-0.59968 0-1.1799 0.06831-1.7533 0.15939 0.0316 0.50688 0.0398 0.99939 0.0398 1.5142 0 6.4816-2.5574 12.364-6.6944 16.736 2.0353 2.3668 5.0248 3.8652 8.4079 3.8652 6.1623 0 11.157-4.9552 11.157-11.117 0-6.1623-4.9951-11.157-11.157-11.157zm-96.71 1.1954c-6.162 0-11.118 4.9555-11.118 11.117 0 6.162 4.9555 11.157 11.118 11.157 4.7232 0 8.7323-2.9472 10.36-7.0929-3.9726-4.046-6.8276-9.2077-8.0891-14.943-0.73821-0.15266-1.4875-0.23909-2.2713-0.23909zm122.21 9.3642v22.036h-11.675c-7.6322 0-13.827 6.2347-13.827 13.867 0 7.6311 6.195 13.827 13.827 13.827h4.5426c2.239 0 4.4748-1.0874 6.2561-2.7495s3.1409-3.9644 3.1878-6.535c0.0801-4.4122 0-17.254 0-17.254v-23.191h-2.3112zm-106.75 9.9619v30.483c0 5.1232 4.2011 9.2845 9.3244 9.2845v-2.3112c-3.8766 0-7.0132-3.0967-7.0132-6.9733v-29.049c-0.80461-0.4325-1.5514-0.93449-2.3112-1.4345zm-23.112 2.8292c-4.0935 3.9059-6.6546 9.4053-6.6546 15.501 0 11.827 9.6118 21.438 21.438 21.438v-2.3112c-10.579 0-19.127-8.5469-19.127-19.127 0-5.6905 2.4839-10.805 6.4155-14.305-0.73485-0.33851-1.4155-0.73502-2.0721-1.1954zm-27.216 9.165c-7.6322 0-13.827 6.1949-13.827 13.827v12.791h2.3112v-12.791c0-6.3852 5.1309-11.556 11.516-11.556 6.3864 0 11.556 5.1706 11.556 11.556v12.791h2.3112v-12.791c0-7.6322-6.2338-13.827-13.867-13.827zm77.583 0.0797c-7.6326 0-13.827 6.2344-13.827 13.867s6.1945 13.867 13.827 13.867c7.6326 0 13.867-6.2344 13.867-13.867s-6.2344-13.867-13.867-13.867zm-154.29 0.0398c-7.632 0-13.867 6.1952-13.867 13.827 0 7.632 6.235 13.827 13.867 13.827s13.827-6.1952 13.827-13.827c0-7.632-6.1952-13.827-13.827-13.827zm20.761 1.036v17.334c0 5.1234 4.1622 9.2845 9.2845 9.2845 3.4912 0 6.5716-1.9303 8.1688-4.7817 1.5857 2.8514 4.6384 4.7817 8.1289 4.7817 5.1233 0 9.3243-4.1611 9.3243-9.2845v-17.334h-2.3112v17.334c0 3.8764-3.1366 6.9733-7.0132 6.9733s-6.9733-3.0969-6.9733-6.9733v-17.334h-2.3112v17.334c0 3.8766-3.1352 6.9733-7.0132 6.9733-3.8753 0-6.9733-3.0969-6.9733-6.9733v-17.334h-2.3112zm153.45 0v12.791c0 7.6311 6.195 13.827 13.827 13.827 7.6322 0 13.867-6.1959 13.867-13.827v-12.791h-2.3112v12.791c0 6.3837-5.1707 11.516-11.556 11.516-6.3851 0-11.516-5.1322-11.516-11.516v-12.791h-2.3112zm-19.924 1.2353c6.3856 0 11.556 5.1702 11.556 11.556 0 6.3856-5.1702 11.556-11.556 11.556-6.3856 0-11.516-5.1702-11.516-11.556 0-6.3856 5.1304-11.556 11.516-11.556zm67.821 0h11.675c0.009 1.5271 0.0728 12.046 0 16.059-0.0326 1.7858-1.0121 3.5776-2.4307 4.9013-1.4186 1.3236-3.2544 2.1119-4.702 2.1119h-4.5426c-6.3851 0-11.516-5.1322-11.516-11.516 0-6.3852 5.1309-11.556 11.516-11.556zm-222.11 0.0399c6.385 0 11.516 5.131 11.516 11.516s-5.131 11.516-11.516 11.516-11.556-5.131-11.556-11.516 5.1708-11.516 11.556-11.516z" fill="#fff"/> -</svg> +<svg xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" xml:space="preserve" height="120" width="252" version="1.1" y="0px" x="0px" xmlns:cc="http://creativecommons.org/ns#" enable-background="new 0 0 595.275 311.111" viewBox="0 0 252.00001 119.99799" xmlns:dc="http://purl.org/dc/elements/1.1/"><path style="block-progression:tb;color:#000000;enable-background:accumulate;text-transform:none;text-indent:0" d="m151.66 0.77195c-11.241 0-20.322 9.0815-20.322 20.322 0 4.6335 1.5429 8.898 4.1442 12.313 5.6431-6.5315 13.972-10.679 23.271-10.679 4.5496 0 8.8639 1.0131 12.751 2.7893 0.31474-1.4234 0.47817-2.9037 0.47817-4.4231 0.01-11.24-9.08-20.322-20.32-20.322zm-26.53 9.404c-5.8539 0-10.56 4.7456-10.56 10.599 0 1.8953 0.48899 3.6862 1.3548 5.22 3.5325-1.9927 7.6164-3.148 11.954-3.148 0.41864 0 0.82186 0.01699 1.2353 0.03985-0.0468-0.59343-0.0797-1.1878-0.0797-1.7931 0-3.2605 0.70816-6.3627 1.9525-9.165-1.6754-1.1235-3.6828-1.7533-5.8576-1.7533zm50.128 7.2921c-0.43247 0-0.84934 0.05309-1.2751 0.0797 0.18418 1.1613 0.31878 2.3339 0.31878 3.5464 0 1.8871-0.24 3.708-0.67741 5.4591 5.1284 2.8381 9.3873 7.0847 12.193 12.233 2.9105-1.5152 6.1573-2.4787 9.6033-2.7096-0.8881-10.415-9.5166-18.609-20.163-18.609zm-16.497 7.5711c-15.729 0-28.451 12.721-28.451 28.451 0 15.729 12.721 28.451 28.451 28.451s28.451-12.723 28.451-28.451c0-15.73-12.722-28.451-28.451-28.451zm-30.882 0.11954c-12.203 0-22.076 9.8727-22.076 22.076 0 7.1836 3.4227 13.543 8.7266 17.573 2.236-4.3127 6.727-7.2523 11.914-7.2523 0.62695 0 1.2287 0.07599 1.833 0.15939-0.18969-1.3801-0.27893-2.792-0.27893-4.2239 0-6.846 2.2284-13.177 6.017-18.29-2.2678-2.8377-3.8907-6.2474-4.5825-9.9619-0.51269-0.03551-1.0323-0.0797-1.5541-0.0797zm69.18 13.149c-3.7054 0-7.1763 0.94599-10.241 2.5503 1.7401 3.8545 2.7096 8.1312 2.7096 12.632 0 8.4268-3.3881 16.079-8.886 21.637 4.039 4.4841 9.8991 7.2921 16.417 7.2921 12.203 0 22.076-9.8727 22.076-22.076s-9.8727-22.036-22.076-22.036zm-93.403 2.9089c-11.241 0-20.362 9.0413-20.362 20.282s9.121 20.362 20.362 20.362c4.2785 0 8.2419-1.333 11.516-3.5863-1.3529-2.1023-2.1518-4.6156-2.1518-7.2921 0-1.3892 0.20497-2.7238 0.59771-3.9848-6.1294-4.4296-10.121-11.638-10.121-19.764 0-2.0648 0.27209-4.0613 0.75711-5.9772-0.20132-0.0058-0.39495-0.03985-0.59772-0.03985zm119.5 17.453c-0.59968 0-1.1799 0.06831-1.7533 0.15939 0.0316 0.50688 0.0398 0.99939 0.0398 1.5142 0 6.4816-2.5574 12.364-6.6944 16.736 2.0353 2.3668 5.0248 3.8652 8.4079 3.8652 6.1623 0 11.157-4.9552 11.157-11.117 0-6.1623-4.9951-11.157-11.157-11.157zm-96.71 1.1954c-6.162 0-11.118 4.9555-11.118 11.117 0 6.162 4.9555 11.157 11.118 11.157 4.7232 0 8.7323-2.9472 10.36-7.0929-3.9726-4.046-6.8276-9.2077-8.0891-14.943-0.73821-0.15266-1.4875-0.23909-2.2713-0.23909zm122.21 9.3642v22.036h-11.675c-7.6322 0-13.827 6.2347-13.827 13.867 0 7.6311 6.195 13.827 13.827 13.827h4.5426c2.239 0 4.4748-1.0874 6.2561-2.7495s3.1409-3.9644 3.1878-6.535c0.0801-4.4122 0-17.254 0-17.254v-23.191h-2.3112zm-106.75 9.9619v30.483c0 5.1232 4.2011 9.2845 9.3244 9.2845v-2.3112c-3.8766 0-7.0132-3.0967-7.0132-6.9733v-29.055c-0.80461-0.4325-1.5514-0.93449-2.3112-1.4345zm-23.112 2.8292c-4.0935 3.9059-6.6546 9.4053-6.6546 15.501 0 11.827 9.6118 21.438 21.438 21.438v-2.3112c-10.579 0-19.127-8.5469-19.127-19.127 0-5.6905 2.4839-10.805 6.4155-14.305-0.73485-0.33851-1.4155-0.73502-2.0721-1.1954zm-27.216 9.165c-7.6322 0-13.827 6.1949-13.827 13.827v12.791h2.3112v-12.791c0-6.3852 5.1309-11.556 11.516-11.556 6.3864 0 11.556 5.1706 11.556 11.556v12.791h2.3112v-12.791c0-7.6322-6.2338-13.827-13.867-13.827zm77.583 0.0797c-7.6326 0-13.827 6.2344-13.827 13.867s6.1945 13.867 13.827 13.867c7.6326 0 13.867-6.2344 13.867-13.867s-6.2344-13.867-13.867-13.867zm-154.29 0.0398c-7.645 0-13.88 6.195-13.88 13.825 0 7.632 6.235 13.827 13.867 13.827s13.827-6.1952 13.827-13.827c0-7.632-6.1952-13.827-13.827-13.827zm20.761 1.036v17.334c0 5.1234 4.1622 9.2845 9.2845 9.2845 3.4912 0 6.5716-1.9303 8.1688-4.7817 1.5857 2.8514 4.6384 4.7817 8.1289 4.7817 5.1233 0 9.3243-4.1611 9.3243-9.2845v-17.339h-2.3247v17.334c0 3.8764-3.1366 6.9733-7.0132 6.9733s-6.9733-3.0969-6.9733-6.9733v-17.339h-2.3114v17.334c0 3.8766-3.1352 6.9733-7.0132 6.9733-3.8753 0-6.9733-3.0969-6.9733-6.9733v-17.339h-2.3112zm153.45 0v12.791c0 7.6311 6.195 13.827 13.827 13.827 7.6322 0 13.867-6.1959 13.867-13.827v-12.789h-2.3112v12.791c0 6.3837-5.1707 11.516-11.556 11.516-6.3851 0-11.516-5.1322-11.516-11.516v-12.789h-2.3112zm-19.924 1.2353c6.3856 0 11.556 5.1702 11.556 11.556 0 6.3856-5.1702 11.556-11.556 11.556-6.3856 0-11.516-5.1702-11.516-11.556 0-6.3856 5.1304-11.556 11.516-11.556zm67.821 0h11.675c0.009 1.5271 0.0728 12.046 0 16.059-0.0326 1.7858-1.0121 3.5776-2.4307 4.9013-1.4186 1.3236-3.2544 2.1119-4.702 2.1119h-4.5426c-6.3851 0-11.516-5.1322-11.516-11.516 0-6.3852 5.1309-11.556 11.516-11.556zm-222.11 0.0399c6.385 0 11.516 5.131 11.516 11.516s-5.131 11.516-11.516 11.516-11.556-5.131-11.556-11.516 5.1708-11.516 11.556-11.516z" fill="#FFF"/></svg> diff --git a/core/templates/layout.user.php b/core/templates/layout.user.php index e39bb94ed98..efa169c333b 100644 --- a/core/templates/layout.user.php +++ b/core/templates/layout.user.php @@ -50,7 +50,7 @@ </a> <a href="#" class="menutoggle"> <div class="header-appname"> - <?php p(!empty($_['application'])?$_['application']:'Apps'); ?> + <?php p(!empty($_['application'])?$_['application']: $l->t('Apps')); ?> </div> <div class="icon-caret"></div> </a> diff --git a/lib/private/db/mdb2schemamanager.php b/lib/private/db/mdb2schemamanager.php index 734ba18d1ac..ee3d53b576a 100644 --- a/lib/private/db/mdb2schemamanager.php +++ b/lib/private/db/mdb2schemamanager.php @@ -109,7 +109,7 @@ class MDB2SchemaManager { */ public function simulateUpdateDbFromStructure($file) { $toSchema = $this->readSchemaFromFile($file); - $migrator = $this->getMigrator()->checkMigrate($toSchema); + $this->getMigrator()->checkMigrate($toSchema); return true; } diff --git a/lib/private/files/cache/storage.php b/lib/private/files/cache/storage.php index 6b6b0bce9d7..3a267874431 100644 --- a/lib/private/files/cache/storage.php +++ b/lib/private/files/cache/storage.php @@ -43,12 +43,15 @@ class Storage { } } + /** + * @return string + */ public function getNumericId() { return $this->numericId; } /** - * @return string + * @return string|null */ public static function getStorageId($numericId) { @@ -62,37 +65,46 @@ class Storage { } /** - * @param string $storageId + * @return string|null */ - public static function exists($storageId) { + public static function getNumericStorageId($storageId) { if (strlen($storageId) > 64) { $storageId = md5($storageId); } + $sql = 'SELECT `numeric_id` FROM `*PREFIX*storages` WHERE `id` = ?'; $result = \OC_DB::executeAudited($sql, array($storageId)); if ($row = $result->fetchRow()) { - return true; + return $row['numeric_id']; } else { - return false; + return null; } } /** + * @param string $storageId + * @return bool + */ + public static function exists($storageId) { + return !is_null(self::getNumericStorageId($storageId)); + } + + /** * remove the entry for the storage * * @param string $storageId */ public static function remove($storageId) { - $storageCache = new Storage($storageId); - $numericId = $storageCache->getNumericId(); - if (strlen($storageId) > 64) { $storageId = md5($storageId); } $sql = 'DELETE FROM `*PREFIX*storages` WHERE `id` = ?'; \OC_DB::executeAudited($sql, array($storageId)); - $sql = 'DELETE FROM `*PREFIX*filecache` WHERE `storage` = ?'; - \OC_DB::executeAudited($sql, array($numericId)); + $numericId = self::exists($storageId); + if (!is_null($numericId)) { + $sql = 'DELETE FROM `*PREFIX*filecache` WHERE `storage` = ?'; + \OC_DB::executeAudited($sql, array($numericId)); + } } } diff --git a/lib/private/updater.php b/lib/private/updater.php index 58a4086c80f..9cc1b3322eb 100644 --- a/lib/private/updater.php +++ b/lib/private/updater.php @@ -150,6 +150,7 @@ class Updater extends BasicEmitter { // This is added to prevent host header poisoning \OC_Config::setValue('trusted_domains', \OC_Config::getValue('trusted_domains', array(\OC_Request::serverHost()))); } + /* * STOP CONFIG CHANGES FOR OLDER VERSIONS */ diff --git a/tests/lib/db/mdb2schemamanager.php b/tests/lib/db/mdb2schemamanager.php new file mode 100644 index 00000000000..51e3c7002f4 --- /dev/null +++ b/tests/lib/db/mdb2schemamanager.php @@ -0,0 +1,37 @@ +<?php + +/** + * Copyright (c) 2014 Thomas Müller <deepdiver@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace Test\DB; + +class MDB2SchemaManager extends \PHPUnit_Framework_TestCase { + + public function tearDown() { + \OC_DB::dropTable('table'); + } + + public function testAutoIncrement() { + + if (\OC::$server->getConfig()->getSystemValue('dbtype', 'sqlite') === 'oci') { + $this->markTestSkipped('Adding auto increment columns in Oracle is not supported.'); + } + + $connection = \OC_DB::getConnection(); + $manager = new \OC\DB\MDB2SchemaManager($connection); + + $manager->createDbFromStructure(__DIR__ . '/ts-autoincrement-before.xml'); + $connection->executeUpdate('insert into `*PREFIX*table` values (?)', array('abc')); + $connection->executeUpdate('insert into `*PREFIX*table` values (?)', array('abc')); + $connection->executeUpdate('insert into `*PREFIX*table` values (?)', array('123')); + $connection->executeUpdate('insert into `*PREFIX*table` values (?)', array('123')); + $manager->updateDbFromStructure(__DIR__ . '/ts-autoincrement-after.xml'); + + $this->assertTrue(true); + } + +} diff --git a/tests/lib/db/ts-autoincrement-after.xml b/tests/lib/db/ts-autoincrement-after.xml new file mode 100644 index 00000000000..d4445f1e247 --- /dev/null +++ b/tests/lib/db/ts-autoincrement-after.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="utf-8" ?> +<database> + + <name>*dbname*</name> + <create>true</create> + <overwrite>false</overwrite> + + <charset>utf8</charset> + + <table> + + <name>*dbprefix*table</name> + + <declaration> + <field> + <name>auto_id</name> + <type>integer</type> + <default>0</default> + <notnull>true</notnull> + <autoincrement>1</autoincrement> + <length>4</length> + </field> + <field> + <name>textfield</name> + <type>text</type> + <default>foo</default> + <notnull>true</notnull> + <length>32</length> + </field> + </declaration> + </table> +</database> diff --git a/tests/lib/db/ts-autoincrement-before.xml b/tests/lib/db/ts-autoincrement-before.xml new file mode 100644 index 00000000000..412739e9a71 --- /dev/null +++ b/tests/lib/db/ts-autoincrement-before.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8" ?> +<database> + + <name>*dbname*</name> + <create>true</create> + <overwrite>false</overwrite> + + <charset>utf8</charset> + + <table> + + <name>*dbprefix*table</name> + + <declaration> + <field> + <name>textfield</name> + <type>text</type> + <default>foo</default> + <notnull>true</notnull> + <length>32</length> + </field> + </declaration> + </table> +</database> |