diff --git a/js/navigation.js b/js/navigation.js index 7b75628310..6de6bc0762 100644 --- a/js/navigation.js +++ b/js/navigation.js @@ -244,8 +244,7 @@ $(function () { * * @returns void */ -function expandTreeNode($expandElem, callback) -{ +function expandTreeNode($expandElem, callback) { var $children = $expandElem.closest('li').children('div.list_container'); var $icon = $expandElem.find('img'); if ($expandElem.hasClass('loaded')) { @@ -294,14 +293,23 @@ function expandTreeNode($expandElem, callback) * Auto-scrolls the newly chosen database * * @param object $element The element to set to view - * @param object $container The container srollable element + * @param boolean $forceToTop Whether to force scroll to top * */ -function scrollToView($element, $container) { - var pushToOffset = $element.offset().top - $container.offset().top + $container.scrollTop(); - $('#pma_navigation_tree_content').stop().animate({ - scrollTop: pushToOffset - }); +function scrollToView($element, $forceToTop) { + var $container = $('#pma_navigation_tree_content'); + var elemTop = $element.offset().top - $container.offset().top; + var textHeight = 20; + var scrollPadding = 20; // extra padding from top of bottom when scrolling to view + if (elemTop < 0 || $forceToTop) { + $container.stop().animate({ + scrollTop: elemTop + $container.scrollTop() - scrollPadding + }); + } else if (elemTop + textHeight > $container.height()) { + $container.stop().animate({ + scrollTop: elemTop + textHeight - $container.height() + $container.scrollTop() + scrollPadding + }); + } } /** @@ -365,8 +373,7 @@ function loadChildNodes($expandElem, callback) { * * @returns void */ -function PMA_showCurrentNavigation() -{ +function PMA_showCurrentNavigation() { var db = PMA_commonParams.get('db'); var table = PMA_commonParams.get('table'); $('#pma_navigation_tree') @@ -400,10 +407,10 @@ function PMA_showCurrentNavigation() if ($tableContainer.length > 0) { var $expander = $tableContainer.children('div:first').children('a.expander'); expandTreeNode($expander, function () { - scrollToView($dbItem, $('#pma_navigation_tree_content')); + scrollToView($dbItem, true); }); } else { - scrollToView($dbItem, $('#pma_navigation_tree_content')); + scrollToView($dbItem, true); } } } @@ -473,11 +480,13 @@ function PMA_showCurrentNavigation() } else { // no containers, highlight the item var $tableOrView = findLoadedItem($container, table, null, true); + if ($tableOrView){ + scrollToView($tableOrView, false); + } } } - function highlightTableOrView($tableContainer, $viewContainer, table) - { + function highlightTableOrView($tableContainer, $viewContainer, table) { if (isItemInContainer($tableContainer, table, 'table')) { var $expander = $tableContainer .children('div:first') @@ -489,13 +498,15 @@ function PMA_showCurrentNavigation() $tableContainer.children('div.list_container'), table, 'table', true ); + if ($table) { + scrollToView($table, false); + } } else if ($viewContainer.length > 0) { highlightView($viewContainer, table); } } - function isItemInContainer($container, name, clazz) - { + function isItemInContainer($container, name, clazz) { $items = $container.find('li.' + clazz); var found = false; $items.each(function () { @@ -519,12 +530,18 @@ function PMA_showCurrentNavigation() $viewContainer.children('div.list_container'), view, 'view', true ); + if ($view) { + scrollToView($view, false); + } }); } else { var $view = findLoadedItem( $viewContainer.children('div.list_container'), view, 'view', true ); + if ($view) { + scrollToView($view, false); + } } } } @@ -611,8 +628,7 @@ function PMA_reloadNavigation(callback) { * * @return void */ -function PMA_navigationTreePagination($this) -{ +function PMA_navigationTreePagination($this) { var $msgbox = PMA_ajaxShowMessage(); var isDbSelector = $this.closest('div.pageselector').is('.dbselector'); var url, params; @@ -1080,8 +1096,7 @@ var PMA_fastFilter = { * * @return void */ -PMA_fastFilter.filter.prototype.update = function (searchClause) -{ +PMA_fastFilter.filter.prototype.update = function (searchClause) { if (this.searchClause != searchClause) { this.searchClause = searchClause; this.$this.find('.moreResults').remove(); @@ -1094,8 +1109,7 @@ PMA_fastFilter.filter.prototype.update = function (searchClause) * * @return void */ -PMA_fastFilter.filter.prototype.request = function () -{ +PMA_fastFilter.filter.prototype.request = function () { var self = this; clearTimeout(self.timeout); if (self.$this.find('li.fast_filter').find('img.throbber').length === 0) { @@ -1151,8 +1165,7 @@ PMA_fastFilter.filter.prototype.request = function () * * @return void */ -PMA_fastFilter.filter.prototype.swap = function (list) -{ +PMA_fastFilter.filter.prototype.swap = function (list) { this.swapped = true; this.$this .html($(list).html()) @@ -1170,8 +1183,7 @@ PMA_fastFilter.filter.prototype.swap = function (list) * * @return void */ -PMA_fastFilter.filter.prototype.restore = function (focus) -{ +PMA_fastFilter.filter.prototype.restore = function (focus) { if (this.swapped) { this.swapped = false; this.$this.html(this.$clone.html()).children().show(); diff --git a/pmd_relation_new.php b/pmd_relation_new.php index 9c780e21bb..c2cb1d53e8 100644 --- a/pmd_relation_new.php +++ b/pmd_relation_new.php @@ -76,7 +76,8 @@ if (PMA_Util::isForeignKeySupported($type_T1) $upd_query .= ' ON UPDATE ' . $on_update; } $upd_query .= ';'; - $GLOBALS['dbi']->tryQuery($upd_query) or PMD_Return_new(0, __('Error: Relation not added.')); + $GLOBALS['dbi']->tryQuery($upd_query) + || PMD_Return_new(0, __('Error: Relation not added.')); PMD_Return_new(1, __('FOREIGN KEY relation added')); } } else { // internal (pmadb) relation @@ -86,15 +87,18 @@ if (PMA_Util::isForeignKeySupported($type_T1) // no need to recheck if the keys are primary or unique at this point, // this was checked on the interface part - $q = 'INSERT INTO ' . PMA_Util::backquote($GLOBALS['cfgRelation']['db']) . '.' . PMA_Util::backquote($cfgRelation['relation']) - . '(master_db, master_table, master_field, foreign_db, foreign_table, foreign_field)' - . ' values(' - . '\'' . PMA_Util::sqlAddSlashes($db) . '\', ' - . '\'' . PMA_Util::sqlAddSlashes($T2) . '\', ' - . '\'' . PMA_Util::sqlAddSlashes($F2) . '\', ' - . '\'' . PMA_Util::sqlAddSlashes($db) . '\', ' - . '\'' . PMA_Util::sqlAddSlashes($T1) . '\',' - . '\'' . PMA_Util::sqlAddSlashes($F1) . '\')'; + $q = 'INSERT INTO ' + . PMA_Util::backquote($GLOBALS['cfgRelation']['db']) + . '.' . PMA_Util::backquote($cfgRelation['relation']) + . '(master_db, master_table, master_field,' + . 'foreign_db, foreign_table, foreign_field)' + . ' values(' + . '\'' . PMA_Util::sqlAddSlashes($db) . '\', ' + . '\'' . PMA_Util::sqlAddSlashes($T2) . '\', ' + . '\'' . PMA_Util::sqlAddSlashes($F2) . '\', ' + . '\'' . PMA_Util::sqlAddSlashes($db) . '\', ' + . '\'' . PMA_Util::sqlAddSlashes($T1) . '\',' + . '\'' . PMA_Util::sqlAddSlashes($F1) . '\')'; if (PMA_queryAsControlUser($q, false, PMA_DatabaseInterface::QUERY_STORE)) { PMD_Return_new(1, __('Internal relation added')); @@ -109,6 +113,8 @@ if (PMA_Util::isForeignKeySupported($type_T1) * * @param string $b Value of attribute "b" * @param string $ret Value of attribute "return" + * + * @return void */ function PMD_Return_new($b,$ret) { diff --git a/po/ko.po b/po/ko.po index 8059ba4bf2..ae4760128e 100644 --- a/po/ko.po +++ b/po/ko.po @@ -4,14 +4,13 @@ msgstr "" "Project-Id-Version: phpMyAdmin 4.2.0-dev\n" "Report-Msgid-Bugs-To: phpmyadmin-devel@lists.sourceforge.net\n" "POT-Creation-Date: 2013-12-03 12:52-0500\n" -"PO-Revision-Date: 2013-11-29 11:18+0200\n" -"Last-Translator: 흥재 신 \n" -"Language-Team: Korean \n" +"PO-Revision-Date: 2013-12-05 12:51+0200\n" +"Last-Translator: Alfred Woo \n" +"Language-Team: Korean \n" +"Language: ko\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: ko\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Weblate 1.9-dev\n" @@ -433,7 +432,7 @@ msgstr "보고서를 제출해 주셔서 고맙습니다." #: error_report.php:74 msgid "Unfortunately the submission failed." -msgstr "" +msgstr "안타깝지만 제출하지 못했습니다." #: export.php:160 msgid "Bad type!" @@ -1983,10 +1982,9 @@ msgid "Create view" msgstr "뷰 생성" #: js/messages.php:408 -#, fuzzy #| msgid "Server port" msgid "Send Error Report" -msgstr "전송오류 보고서" +msgstr "오류 보고서 전송" #: js/messages.php:409 msgid "Submit Error Report" diff --git a/po/nl.po b/po/nl.po index 7a8efa7ee8..6a3c7133a4 100644 --- a/po/nl.po +++ b/po/nl.po @@ -4,13 +4,13 @@ msgstr "" "Project-Id-Version: phpMyAdmin 4.2.0-dev\n" "Report-Msgid-Bugs-To: phpmyadmin-devel@lists.sourceforge.net\n" "POT-Creation-Date: 2013-12-03 12:52-0500\n" -"PO-Revision-Date: 2013-12-02 13:40+0200\n" +"PO-Revision-Date: 2013-12-05 10:24+0200\n" "Last-Translator: Dieter Adriaenssens \n" "Language-Team: Dutch \n" +"Language: nl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: nl\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 1.9-dev\n" @@ -8819,6 +8819,8 @@ msgid "" "Converts Boolean values to text (default 'T' and 'F'). First option is for " "TRUE, second for FALSE. Nonzero=true." msgstr "" +"Zet booleaanse waarden om naar tekst (standaard 'T' en 'F'). De eerste optie " +"is voor WAAR en de tweede voor ONWAAR. Een lege waarde komt neer op waar." #: libraries/plugins/transformations/abstract/DateFormatTransformationsPlugin.class.php:31 msgid ""