diff --git a/js/messages.php b/js/messages.php
index 5441bab8c5..ae708612c6 100644
--- a/js/messages.php
+++ b/js/messages.php
@@ -401,7 +401,7 @@ $js_messages['strPageName'] = __('Page name');
$js_messages['strSavePage'] = __('Save page');
$js_messages['strOpenPage'] = __('Open page');
$js_messages['strDeletePage'] = __('Delete page');
-$js_messages['strUntitled'] = __('*Untitled');
+$js_messages['strUntitled'] = __('Untitled');
$js_messages['strSelectPage'] = __('Please select a page to continue');
$js_messages['strEnterValidPageName'] = __('Please enter a valid page name');
$js_messages['strLeavingPage'] = __('Do you want to save the changes to the current page?');
diff --git a/js/pmd/designer_db.js b/js/pmd/designer_db.js
index 0c26e2a1de..9cbebe58f3 100644
--- a/js/pmd/designer_db.js
+++ b/js/pmd/designer_db.js
@@ -5,10 +5,9 @@ var DesignerOfflineDB = (function () {
var designerDB = {};
var datastore = null;
- designerDB.open = function (callback)
- {
+ designerDB.open = function (callback) {
var version = 1;
- var request = window.indexedDB.open("pmd_designer", version);
+ var request = window.indexedDB.open("pma_designer", version);
request.onupgradeneeded = function (e) {
var db = e.target.result;
@@ -29,7 +28,7 @@ var DesignerOfflineDB = (function () {
request.onsuccess = function (e) {
datastore = e.target.result;
- if (callback != null) {
+ if (typeof callback !== 'undefined' && callback != null) {
callback(true);
}
};
@@ -37,29 +36,25 @@ var DesignerOfflineDB = (function () {
request.onerror = designerDB.onerror;
};
- designerDB.loadObject = function (table, id, callback)
- {
+ designerDB.loadObject = function (table, id, callback) {
var db = datastore;
var transaction = db.transaction([table], 'readwrite');
var objStore = transaction.objectStore(table);
var cursorRequest = objStore.get(parseInt(id));
cursorRequest.onsuccess = function (e) {
- var result = e.target.result;
- callback(result);
+ callback(e.target.result);
};
cursorRequest.onerror = designerDB.onerror;
};
- designerDB.loadAllObjects = function (table, callback)
- {
+ designerDB.loadAllObjects = function (table, callback) {
var db = datastore;
var transaction = db.transaction([table], 'readwrite');
var objStore = transaction.objectStore(table);
var keyRange = IDBKeyRange.lowerBound(0);
var cursorRequest = objStore.openCursor(keyRange);
-
var results = [];
transaction.oncomplete = function (e) {
@@ -68,7 +63,6 @@ var DesignerOfflineDB = (function () {
cursorRequest.onsuccess = function (e) {
var result = e.target.result;
-
if (!!result == false) {
return;
}
@@ -79,14 +73,12 @@ var DesignerOfflineDB = (function () {
cursorRequest.onerror = designerDB.onerror;
};
- designerDB.loadFirstObject = function(table, callback)
- {
+ designerDB.loadFirstObject = function(table, callback) {
var db = datastore;
var transaction = db.transaction([table], 'readwrite');
var objStore = transaction.objectStore(table);
var keyRange = IDBKeyRange.lowerBound(0);
var cursorRequest = objStore.openCursor(keyRange);
-
var firstResult = null;
transaction.oncomplete = function(e) {
@@ -95,7 +87,6 @@ var DesignerOfflineDB = (function () {
cursorRequest.onsuccess = function(e) {
var result = e.target.result;
-
if (!!result == false) {
return;
}
@@ -105,38 +96,40 @@ var DesignerOfflineDB = (function () {
cursorRequest.onerror = designerDB.onerror;
};
- designerDB.addObject = function(table, obj, callback)
- {
+ designerDB.addObject = function(table, obj, callback) {
var db = datastore;
var transaction = db.transaction([table], 'readwrite');
var objStore = transaction.objectStore(table);
-
var request = objStore.put(obj);
request.onsuccess = function(e) {
- callback(e.currentTarget.result);
+ if (typeof callback !== 'undefined' && callback != null) {
+ callback(e.currentTarget.result);
+ }
};
request.onerror = designerDB.onerror;
};
- designerDB.deleteObject = function(table, id, callback)
- {
+ designerDB.deleteObject = function(table, id, callback) {
var db = datastore;
var transaction = db.transaction([table], 'readwrite');
var objStore = transaction.objectStore(table);
-
var request = objStore.delete(parseInt(id));
request.onsuccess = function(e) {
- callback(true);
+ if (typeof callback !== 'undefined' && callback != null) {
+ callback(true);
+ }
}
- request.onerror = function(e) {
- console.log(e);
- };
+ request.onerror = designerDB.onerror;
};
+ designerDB.onerror = function(e) {
+ console.log(e);
+ }
+
// Export the designerDB object.
return designerDB;
}());
diff --git a/js/pmd/designer_page.js b/js/pmd/designer_page.js
index ef0b0a2828..0622346ba5 100644
--- a/js/pmd/designer_page.js
+++ b/js/pmd/designer_page.js
@@ -56,11 +56,7 @@ function Create_new_page(db, page_name, callback)
function Save_table_positions(positions, callback)
{
- DesignerOfflineDB.addObject('table_coords', positions, function (id) {
- if (typeof callback !== 'undefined') {
- callback(id);
- }
- });
+ DesignerOfflineDB.addObject('table_coords', positions, callback);
}
function Create_page_list(callback)
@@ -84,22 +80,14 @@ function Delete_page(page_id, callback)
for (i in page.tbl_cords) {
DesignerOfflineDB.deleteObject('table_coords', page.tbl_cords[i]);
}
- DesignerOfflineDB.deleteObject('pdf_pages', page_id, function (state) {
- if (typeof callback !== 'undefined') {
- callback(state);
- }
- });
+ DesignerOfflineDB.deleteObject('pdf_pages', page_id, callback);
}
});
}
function Load_first_page(callback)
{
- DesignerOfflineDB.loadFirstObject('pdf_pages', function (page) {
- if (typeof callback !== 'undefined') {
- callback(page);
- }
- });
+ DesignerOfflineDB.loadFirstObject('pdf_pages', callback);
}
function Show_new_page_tables(check)
diff --git a/js/pmd/move.js b/js/pmd/move.js
index 067b795615..d5db4e1aae 100644
--- a/js/pmd/move.js
+++ b/js/pmd/move.js
@@ -65,6 +65,17 @@ function make_zero() { // Function called if the user stays after seeing the c
_staying = 0;
}
+function MarkSaved()
+{
+ _change = 0;
+ $('#saved_state').text('');
+}
+
+function MarkUnsaved()
+{
+ _change = 1;
+ $('#saved_state').text('*');
+}
var dx, dy, dy2;
var cur_click = null;
@@ -157,7 +168,7 @@ function MouseMove(e)
//window.status = "X = "+ Glob_X + " Y = "+ Glob_Y;
if (cur_click !== null) {
- _change = 1;
+ MarkUnsaved();
var mGx = Glob_X - dx;
var mGy = Glob_Y - dy;
mGx = mGx > 0 ? mGx : 0;
@@ -578,7 +589,7 @@ function Save2(callback)
} else {
PMA_ajaxRemoveMessage($msgbox);
PMA_ajaxShowMessage(PMA_messages.strModificationSaved);
- _change = 0;
+ MarkSaved();
if (typeof callback !== 'undefined') {
callback();
}
@@ -586,7 +597,8 @@ function Save2(callback)
});
} else {
var name = $("#page_name").html().trim();
- Save_to_selected_page(db, selected_page, name, Get_url_pos(), function (page){
+ Save_to_selected_page(db, selected_page, name, Get_url_pos(), function (page) {
+ MarkSaved();
if (typeof callback !== 'undefined') {
callback();
}
@@ -617,7 +629,7 @@ function Save3(callback)
PMA_ajaxShowMessage(data.error, false);
} else {
PMA_ajaxRemoveMessage($msgbox);
- _change = 0;
+ MarkSaved();
if (data.id) {
selected_page = data.id;
}
@@ -629,7 +641,7 @@ function Save3(callback)
});
} else {
Save_to_new_page(db, name, Get_url_pos(), function (page) {
- _change = 0;
+ MarkSaved();
if (page.pg_nr) {
selected_page = page.pg_nr;
}
@@ -826,7 +838,7 @@ function Save_as()
PMA_ajaxShowMessage(data.error, false);
} else {
PMA_ajaxRemoveMessage($msgbox);
- _change = 0;
+ MarkSaved();
if (data.id) {
selected_page = data.id;
}
@@ -838,7 +850,7 @@ function Save_as()
var selected_page_id = $selected_page.find('option:selected').val();
Save_to_selected_page(db, selected_page_id, name, Get_url_pos(), function (page) {
PMA_ajaxRemoveMessage($msgbox);
- _change = 0;
+ MarkSaved();
if (page.pg_nr) {
selected_page = page.pg_nr;
}
@@ -847,7 +859,7 @@ function Save_as()
} else if (choice === 'new') {
Save_to_new_page(db, name, Get_url_pos(), function (page) {
PMA_ajaxRemoveMessage($msgbox);
- _change = 0;
+ MarkSaved();
if (page.pg_nr) {
selected_page = page.pg_nr;
}
@@ -1003,7 +1015,7 @@ function Load_page(page) {
Show_new_page_tables(true);
}
}
- _change = 0;
+ MarkSaved();
}
function Grid()
diff --git a/libraries/db_designer.lib.php b/libraries/db_designer.lib.php
index abb68e05fb..7fd937fe50 100644
--- a/libraries/db_designer.lib.php
+++ b/libraries/db_designer.lib.php
@@ -370,7 +370,10 @@ function PMA_getDesignerPageTopMenu($selected_page)
$html .= '
getImgPath('pmd/bord.png') . '" />';
- $html .= '' . htmlspecialchars($selected_page) . '';
+ $html .= '';
+ $html .= htmlspecialchars($selected_page);
+ $html .= '';
+ $html .= '';
$html .= '
getImgPath('pmd/bord.png') . '" />';
diff --git a/libraries/pmd_common.php b/libraries/pmd_common.php
index 7789795f77..858eccfca3 100644
--- a/libraries/pmd_common.php
+++ b/libraries/pmd_common.php
@@ -296,7 +296,7 @@ function PMA_getPageName($pg)
$GLOBALS['controllink'],
PMA_DatabaseInterface::QUERY_STORE
);
- return count($page_name) ? $page_name[0] : __("*Untitled");
+ return count($page_name) ? $page_name[0] : __("Untitled");
}
/**