author | Clipperz <info@clipperz.com> | 2013-01-09 11:24:13 (UTC) |
---|---|---|
committer | Clipperz <info@clipperz.com> | 2013-01-09 11:24:13 (UTC) |
commit | 6cfcbb8deeb99b0b88f5ce3b34a5c9aa1877dc57 (patch) (unidiff) | |
tree | ae7ed58da6d0f4ce64b7ae4a4ba3f7b1519471d3 /frontend/beta/js/Clipperz/PM | |
parent | f6903b9a5670370ef742a02092ab72e4227ddcd9 (diff) | |
parent | 0db1d5c8b18eadc4bd9cfc6603e86227fa94b5a9 (diff) | |
download | clipperz-6cfcbb8deeb99b0b88f5ce3b34a5c9aa1877dc57.zip clipperz-6cfcbb8deeb99b0b88f5ce3b34a5c9aa1877dc57.tar.gz clipperz-6cfcbb8deeb99b0b88f5ce3b34a5c9aa1877dc57.tar.bz2 |
Merge branch 'master' of github.com:clipperz/password-manager
Conflicts:
frontend/beta/css/yui-extensions/basic-dialog.css
Diffstat (limited to 'frontend/beta/js/Clipperz/PM') (more/less context) (ignore whitespace changes)
-rw-r--r-- | frontend/beta/js/Clipperz/PM/DataModel/Record.js | 10 | ||||
-rw-r--r-- | frontend/beta/js/Clipperz/PM/Strings/Strings_en-US.js | 2 |
2 files changed, 9 insertions, 3 deletions
diff --git a/frontend/beta/js/Clipperz/PM/DataModel/Record.js b/frontend/beta/js/Clipperz/PM/DataModel/Record.js index ecb6c37..d6ebb39 100644 --- a/frontend/beta/js/Clipperz/PM/DataModel/Record.js +++ b/frontend/beta/js/Clipperz/PM/DataModel/Record.js | |||
@@ -247,98 +247,104 @@ Clipperz.PM.DataModel.Record.prototype = MochiKit.Base.update(null, { | |||
247 | //MochiKit.Logging.logDebug(">>> [" + (new Date()).valueOf() + "] Record.decryptData - this: " + this + " (" + anEncryptedData + ")"); | 247 | //MochiKit.Logging.logDebug(">>> [" + (new Date()).valueOf() + "] Record.decryptData - this: " + this + " (" + anEncryptedData + ")"); |
248 | if (this.shouldDecryptData()) { | 248 | if (this.shouldDecryptData()) { |
249 | var deferredResult; | 249 | var deferredResult; |
250 | 250 | ||
251 | deferredResult = new MochiKit.Async.Deferred(); | 251 | deferredResult = new MochiKit.Async.Deferred(); |
252 | deferredResult.addCallback(Clipperz.NotificationCenter.deferredNotification, this, 'notify', 'decryptingRecordData'); | 252 | deferredResult.addCallback(Clipperz.NotificationCenter.deferredNotification, this, 'notify', 'decryptingRecordData'); |
253 | deferredResult.addCallback(Clipperz.PM.Crypto.deferredDecrypt, this.key(), anEncryptedData['data'], anEncryptedData['version']); | 253 | deferredResult.addCallback(Clipperz.PM.Crypto.deferredDecrypt, this.key(), anEncryptedData['data'], anEncryptedData['version']); |
254 | deferredResult.addCallback(function(anEncryptedData, someDecryptedValues) { | 254 | deferredResult.addCallback(function(anEncryptedData, someDecryptedValues) { |
255 | varresult; | 255 | varresult; |
256 | 256 | ||
257 | result = anEncryptedData; | 257 | result = anEncryptedData; |
258 | result['data'] = someDecryptedValues; | 258 | result['data'] = someDecryptedValues; |
259 | 259 | ||
260 | return result; | 260 | return result; |
261 | }, anEncryptedData); | 261 | }, anEncryptedData); |
262 | deferredResult.addCallback(MochiKit.Base.method(this, 'setDecryptedData')); | 262 | deferredResult.addCallback(MochiKit.Base.method(this, 'setDecryptedData')); |
263 | deferredResult.callback(); | 263 | deferredResult.callback(); |
264 | 264 | ||
265 | result = deferredResult; | 265 | result = deferredResult; |
266 | } else { | 266 | } else { |
267 | result = MochiKit.Async.succeed(this.decryptedData()); | 267 | result = MochiKit.Async.succeed(this.decryptedData()); |
268 | } | 268 | } |
269 | //MochiKit.Logging.logDebug("<<< [" + (new Date()).valueOf() + "] Record.decryptData"); | 269 | //MochiKit.Logging.logDebug("<<< [" + (new Date()).valueOf() + "] Record.decryptData"); |
270 | 270 | ||
271 | return result; | 271 | return result; |
272 | }, | 272 | }, |
273 | 273 | ||
274 | //------------------------------------------------------------------------- | 274 | //------------------------------------------------------------------------- |
275 | 275 | ||
276 | 'processData': function(someValues) { | 276 | 'processData': function(someValues) { |
277 | //MochiKit.Logging.logDebug(">>> [" + (new Date()).valueOf() + "] Record.processData"); | 277 | //MochiKit.Logging.logDebug(">>> [" + (new Date()).valueOf() + "] Record.processData"); |
278 | //MochiKit.Logging.logDebug("--- Record.processData: " + Clipperz.Base.serializeJSON(someValues)); | 278 | //MochiKit.Logging.logDebug("--- Record.processData: " + Clipperz.Base.serializeJSON(someValues)); |
279 | if (this.shouldProcessData()) { | 279 | if (this.shouldProcessData()) { |
280 | var currentVersionParameters; | 280 | var currentVersionParameters; |
281 | 281 | ||
282 | console.log("Record.processData", someValues); | 282 | console.log("Record.processData", someValues); |
283 | this.processDataToExtractLegacyValues(someValues['data']); | 283 | this.processDataToExtractLegacyValues(someValues['data']); |
284 | 284 | ||
285 | if (typeof(someValues['data']['notes']) != 'undefined') { | 285 | if (typeof(someValues['data']['notes']) != 'undefined') { |
286 | this.setNotes(someValues['data']['notes']); | 286 | this.setNotes(someValues['data']['notes']); |
287 | } | 287 | } |
288 | 288 | ||
289 | if (someValues['data']['currentVersionKey'] != null) { | 289 | if (someValues['data']['currentVersionKey'] != null) { |
290 | this.setCurrentVersionKey(someValues['data']['currentVersionKey']); | 290 | this.setCurrentVersionKey(someValues['data']['currentVersionKey']); |
291 | } else { | 291 | } else { |
292 | this.setCurrentVersionKey(this.key()); | 292 | this.setCurrentVersionKey(this.key()); |
293 | } | 293 | } |
294 | 294 | ||
295 | // currentVersionParameters = someValues['currentVersion']; | 295 | // community edition doesn't currently pass version |
296 | currentVersionParameters = someValues['versions'][someValues['currentVersion']]; | 296 | // information |
297 | if (someValues['versions'] == null) { | ||
298 | currentVersionParameters = someValues['currentVersion']; | ||
299 | } else { | ||
300 | currentVersionParameters = someValues['versions'][someValues['currentVersion']]; | ||
301 | } | ||
302 | |||
297 | console.log("Record.processData - this.currentVersionKey()", this.currentVersionKey()); | 303 | console.log("Record.processData - this.currentVersionKey()", this.currentVersionKey()); |
298 | console.log("Record.processData - currentVersionParameters", currentVersionParameters); | 304 | console.log("Record.processData - currentVersionParameters", currentVersionParameters); |
299 | currentVersionParameters['key'] = this.currentVersionKey(); | 305 | currentVersionParameters['key'] = this.currentVersionKey(); |
300 | this.setCurrentVersion(new Clipperz.PM.DataModel.RecordVersion(this, currentVersionParameters)); | 306 | this.setCurrentVersion(new Clipperz.PM.DataModel.RecordVersion(this, currentVersionParameters)); |
301 | 307 | ||
302 | if (someValues['data']['directLogins'] != null) { | 308 | if (someValues['data']['directLogins'] != null) { |
303 | vardirectLoginReference; | 309 | vardirectLoginReference; |
304 | 310 | ||
305 | for (directLoginReference in someValues['data']['directLogins']) { | 311 | for (directLoginReference in someValues['data']['directLogins']) { |
306 | var directLogin; | 312 | var directLogin; |
307 | var directLoginParameters; | 313 | var directLoginParameters; |
308 | 314 | ||
309 | directLoginParameters = someValues['data']['directLogins'][directLoginReference]; | 315 | directLoginParameters = someValues['data']['directLogins'][directLoginReference]; |
310 | directLoginParameters.record = this; | 316 | directLoginParameters.record = this; |
311 | directLoginParameters.reference = directLoginReference; | 317 | directLoginParameters.reference = directLoginReference; |
312 | 318 | ||
313 | directLogin = new Clipperz.PM.DataModel.DirectLogin(directLoginParameters); | 319 | directLogin = new Clipperz.PM.DataModel.DirectLogin(directLoginParameters); |
314 | this.addDirectLogin(directLogin, true); | 320 | this.addDirectLogin(directLogin, true); |
315 | } | 321 | } |
316 | } | 322 | } |
317 | this.setShouldProcessData(false); | 323 | this.setShouldProcessData(false); |
318 | } | 324 | } |
319 | 325 | ||
320 | Clipperz.NotificationCenter.notify(this, 'recordDataReady'); | 326 | Clipperz.NotificationCenter.notify(this, 'recordDataReady'); |
321 | //MochiKit.Logging.logDebug("<<< [" + (new Date()).valueOf() + "] Record.processData"); | 327 | //MochiKit.Logging.logDebug("<<< [" + (new Date()).valueOf() + "] Record.processData"); |
322 | //MochiKit.Logging.logDebug("<<< Record.processData"); | 328 | //MochiKit.Logging.logDebug("<<< Record.processData"); |
323 | 329 | ||
324 | return this; | 330 | return this; |
325 | }, | 331 | }, |
326 | 332 | ||
327 | //------------------------------------------------------------------------- | 333 | //------------------------------------------------------------------------- |
328 | 334 | ||
329 | 'processDataToExtractLegacyValues': function(someValues) { | 335 | 'processDataToExtractLegacyValues': function(someValues) { |
330 | //MochiKit.Logging.logDebug(">>> Record.processDataToExtractLegacyValues"); | 336 | //MochiKit.Logging.logDebug(">>> Record.processDataToExtractLegacyValues"); |
331 | if (someValues['data'] != null) { | 337 | if (someValues['data'] != null) { |
332 | this.setNotes(someValues['data']); | 338 | this.setNotes(someValues['data']); |
333 | } | 339 | } |
334 | 340 | ||
335 | if ( | 341 | if ( |
336 | (typeof(someValues['loginFormData']) != "undefined") | 342 | (typeof(someValues['loginFormData']) != "undefined") |
337 | &&(typeof(someValues['loginBindings'] != "undefined")) | 343 | &&(typeof(someValues['loginBindings'] != "undefined")) |
338 | &&(someValues['loginFormData'] != "") | 344 | &&(someValues['loginFormData'] != "") |
339 | &&(someValues['loginBindings'] != "") | 345 | &&(someValues['loginBindings'] != "") |
340 | ) { | 346 | ) { |
341 | vardirectLogin; | 347 | vardirectLogin; |
342 | 348 | ||
343 | directLogin = new Clipperz.PM.DataModel.DirectLogin({ | 349 | directLogin = new Clipperz.PM.DataModel.DirectLogin({ |
344 | record:this, | 350 | record:this, |
diff --git a/frontend/beta/js/Clipperz/PM/Strings/Strings_en-US.js b/frontend/beta/js/Clipperz/PM/Strings/Strings_en-US.js index 9fa95e9..299ebc7 100644 --- a/frontend/beta/js/Clipperz/PM/Strings/Strings_en-US.js +++ b/frontend/beta/js/Clipperz/PM/Strings/Strings_en-US.js | |||
@@ -463,97 +463,97 @@ Clipperz.PM.Strings.Languages['en-us'] = { | |||
463 | <h5>Internet Explorer</h5>\ | 463 | <h5>Internet Explorer</h5>\ |
464 | <ol>\ | 464 | <ol>\ |
465 | <li><p>Make sure that the “Links” toolbar is displayed by selecting “View > Toolbars > Links” from the browser menu.</p></li>\ | 465 | <li><p>Make sure that the “Links” toolbar is displayed by selecting “View > Toolbars > Links” from the browser menu.</p></li>\ |
466 | <li><p>Right-click on the “Add to Clipperz” link below.</p></li>\ | 466 | <li><p>Right-click on the “Add to Clipperz” link below.</p></li>\ |
467 | <li><p>Select “Add to favorites” from the contextual menu.</p></li>\ | 467 | <li><p>Select “Add to favorites” from the contextual menu.</p></li>\ |
468 | <li><p>Click “Yes” for any security message that pops up.</p></li>\ | 468 | <li><p>Click “Yes” for any security message that pops up.</p></li>\ |
469 | <li><p>Open the “Links” folder and click “OK”</p></li>\ | 469 | <li><p>Open the “Links” folder and click “OK”</p></li>\ |
470 | </ol>", | 470 | </ol>", |
471 | 471 | ||
472 | 'bookmarkletTabBookmarkletTitle':"Add to Clipperz", | 472 | 'bookmarkletTabBookmarkletTitle':"Add to Clipperz", |
473 | 473 | ||
474 | //Tools panel - bookmarklet - instructions | 474 | //Tools panel - bookmarklet - instructions |
475 | 'bookmarkletTabInstructions': "\ | 475 | 'bookmarkletTabInstructions': "\ |
476 | <!-- FIX CSS DONE! -->\ | 476 | <!-- FIX CSS DONE! -->\ |
477 | <h3>How to create a new card inclusive of a “direct login” link to an online service</h3>\ | 477 | <h3>How to create a new card inclusive of a “direct login” link to an online service</h3>\ |
478 | <ol>\ | 478 | <ol>\ |
479 | <li><p>Open the web page where the login form is hosted. (this is the page where you usually enter your sign-in credentials)</p></li>\ | 479 | <li><p>Open the web page where the login form is hosted. (this is the page where you usually enter your sign-in credentials)</p></li>\ |
480 | <li><p>Launch the bookmarklet by clicking on it: a pop-up window will appear over the web page.</p></li>\ | 480 | <li><p>Launch the bookmarklet by clicking on it: a pop-up window will appear over the web page.</p></li>\ |
481 | <li><p>Copy to the clipboard the content of the large text area within the pop-up. (ctrl-C)</p></li>\ | 481 | <li><p>Copy to the clipboard the content of the large text area within the pop-up. (ctrl-C)</p></li>\ |
482 | <li><p>Enter your Clipperz account and click on the <b>Add new card</b> button.</p></li>\ | 482 | <li><p>Enter your Clipperz account and click on the <b>Add new card</b> button.</p></li>\ |
483 | <li><p>Select the “Direct login” template and paste the content of the clipboard to the large text area in the form. (ctrl-V)</p></li>\ | 483 | <li><p>Select the “Direct login” template and paste the content of the clipboard to the large text area in the form. (ctrl-V)</p></li>\ |
484 | <li><p>Press the <b>Create</b> button, complete and review the details, then click <b>Save</b>.</p></li>\ | 484 | <li><p>Press the <b>Create</b> button, complete and review the details, then click <b>Save</b>.</p></li>\ |
485 | </ol>\ | 485 | </ol>\ |
486 | \ | 486 | \ |
487 | <h3>How to add a “direct login” link to an existing card</h3>\ | 487 | <h3>How to add a “direct login” link to an existing card</h3>\ |
488 | <ol>\ | 488 | <ol>\ |
489 | <li><p>Same as above.</p></li>\ | 489 | <li><p>Same as above.</p></li>\ |
490 | <li><p>Same as above.</p></li>\ | 490 | <li><p>Same as above.</p></li>\ |
491 | <li><p>Same as above.</p></li>\ | 491 | <li><p>Same as above.</p></li>\ |
492 | <li><p>Enter your Clipperz account and select the card containing the credentials for the web service you just visited and click the <b>Edit</b> button.</p></li>\ | 492 | <li><p>Enter your Clipperz account and select the card containing the credentials for the web service you just visited and click the <b>Edit</b> button.</p></li>\ |
493 | <li><p>Paste the content of the clipboard to the large text area in the “Direct logins” section. (ctrl-V)</p></li>\ | 493 | <li><p>Paste the content of the clipboard to the large text area in the “Direct logins” section. (ctrl-V)</p></li>\ |
494 | <li><p>Press the <b>Add direct login</b> button, review the details and then click <b>Save</b>.</p></li>\ | 494 | <li><p>Press the <b>Add direct login</b> button, review the details and then click <b>Save</b>.</p></li>\ |
495 | </ol>\ | 495 | </ol>\ |
496 | \ | 496 | \ |
497 | <p></p>\ | 497 | <p></p>\ |
498 | <p>Further information about the bookmarklet are <a href=\"http://www.clipperz.com/support/user_guide/bookmarklet\" target=\"_blank\">available here</a>.</p>", | 498 | <p>Further information about the bookmarklet are <a href=\"http://www.clipperz.com/support/user_guide/bookmarklet\" target=\"_blank\">available here</a>.</p>", |
499 | 499 | ||
500 | //Tools panel - Compact - instructions | 500 | //Tools panel - Compact - instructions |
501 | 'compactTabDescription': "\ | 501 | 'compactTabDescription': "\ |
502 | <!-- FIX CSS DONE! -->\ | 502 | <!-- FIX CSS DONE! -->\ |
503 | <p>Clipperz Compact is a special version of Clipperz designed to be opened in the Firefox sidebar.</p>\ | 503 | <p>Clipperz Compact is a special version of Clipperz designed to be opened in the Firefox sidebar.</p>\ |
504 | <p>Its purpose is to keep your collection of “direct logins” always at hand. Read more <a href=\"http://www.clipperz.com/support/user_guide/clipperz_compact\", target=\"blank\">here</a></p>\ | 504 | <p>Its purpose is to keep your collection of “direct logins” always at hand. Read more <a href=\"http://www.clipperz.com/support/user_guide/clipperz_compact\", target=\"blank\">here</a></p>\ |
505 | \ | 505 | \ |
506 | <h3>How to launch Clipperz Compact in the sidebar</h3>\ | 506 | <h3>How to launch Clipperz Compact in the sidebar</h3>\ |
507 | <ol>\ | 507 | <ol>\ |
508 | <li><p>Get Firefox! Sidebars are only available in Firefox and you need to switch to Firefox in order to enjoy the convenience of Clipperz Compact.</p></li>\ | 508 | <li><p>Get Firefox! Sidebars are only available in Firefox and you need to switch to Firefox in order to enjoy the convenience of Clipperz Compact.</p></li>\ |
509 | <li>\ | 509 | <li>\ |
510 | <p>Add the following URL to Firefox bookmarks, or even better, drag it to the bookmark bar.</p>\ | 510 | <p>Add the following URL to Firefox bookmarks, or even better, drag it to the bookmark bar.</p>\ |
511 | <div id=\"compactLinkBox\"><a href=\"https://www.clipperz.com/beta/index.html?compact\" target=\"_search\">Clipperz Compact</a></div>\ | 511 | <div id=\"compactLinkBox\"><a href=\"index.html?compact\" target=\"_search\">Clipperz Compact</a></div>\ |
512 | </li>\ | 512 | </li>\ |
513 | <li><p>Change the properties of the bookmark so that “load this bookmark in the sidebar” is checked.</p></li>\ | 513 | <li><p>Change the properties of the bookmark so that “load this bookmark in the sidebar” is checked.</p></li>\ |
514 | </ol>\ | 514 | </ol>\ |
515 | \ | 515 | \ |
516 | <h5>Added bonus: Clipperz Compact works also in Opera’s panel.</h5>", | 516 | <h5>Added bonus: Clipperz Compact works also in Opera’s panel.</h5>", |
517 | 517 | ||
518 | //Tools panel - HTTP authentication - instructions | 518 | //Tools panel - HTTP authentication - instructions |
519 | 'httpAuthTabDescription': "\ | 519 | 'httpAuthTabDescription': "\ |
520 | <!-- FIX CSS DONE! -->\ | 520 | <!-- FIX CSS DONE! -->\ |
521 | <p>HTTP authentication is a method designed to allow a web browser to provide credentials – in the form of a username and password – including them in a website address (HTTP or HTTPS URL).</p>\ | 521 | <p>HTTP authentication is a method designed to allow a web browser to provide credentials – in the form of a username and password – including them in a website address (HTTP or HTTPS URL).</p>\ |
522 | <p>Nowadays it is rarely used, but it can still be found on small, private websites. You can tell that a website is protected by HTTP authentication when the browser displays a pop-up window to enter username and password.</p>\ | 522 | <p>Nowadays it is rarely used, but it can still be found on small, private websites. You can tell that a website is protected by HTTP authentication when the browser displays a pop-up window to enter username and password.</p>\ |
523 | <p>Unfortunately the Clipperz bookmarklet does not work on websites that use HTTP authentication. However you can still create a “direct login”.</p>\ | 523 | <p>Unfortunately the Clipperz bookmarklet does not work on websites that use HTTP authentication. However you can still create a “direct login”.</p>\ |
524 | \ | 524 | \ |
525 | <h3>How to create a “direct login” for a website that uses HTTP authentication</h3>\ | 525 | <h3>How to create a “direct login” for a website that uses HTTP authentication</h3>\ |
526 | <ol>\ | 526 | <ol>\ |
527 | <li><p>Store website URL, username and password in a new card.</p></li>\ | 527 | <li><p>Store website URL, username and password in a new card.</p></li>\ |
528 | <li><p>Copy the configuration below and paste it to the large text area in the “Direct logins” section of the new card.</p></li>\ | 528 | <li><p>Copy the configuration below and paste it to the large text area in the “Direct logins” section of the new card.</p></li>\ |
529 | <li><p>Press the <b>Add direct login</b> button, bind URL, username and password fields and then click <b>Save</b>.</p></li>\ | 529 | <li><p>Press the <b>Add direct login</b> button, bind URL, username and password fields and then click <b>Save</b>.</p></li>\ |
530 | </ol>\ | 530 | </ol>\ |
531 | \ | 531 | \ |
532 | <h5><a href=\"http://support.microsoft.com/kb/834489\" target=\"_blank\">Warning: Internet Explorer does not support HTTP authentication.</a></h5>", | 532 | <h5><a href=\"http://support.microsoft.com/kb/834489\" target=\"_blank\">Warning: Internet Explorer does not support HTTP authentication.</a></h5>", |
533 | 533 | ||
534 | // Direct logins block | 534 | // Direct logins block |
535 | 'mainPanelDirectLoginBlockLabel': "Direct logins", | 535 | 'mainPanelDirectLoginBlockLabel': "Direct logins", |
536 | 'directLinkReferenceShowButtonLabel': "show", | 536 | 'directLinkReferenceShowButtonLabel': "show", |
537 | 537 | ||
538 | // Direct logins - blank slate | 538 | // Direct logins - blank slate |
539 | 'mainPanelDirectLoginBlockDescription': "\ | 539 | 'mainPanelDirectLoginBlockDescription': "\ |
540 | <!-- FIX CSS DONE! -->\ | 540 | <!-- FIX CSS DONE! -->\ |
541 | <p>Add “direct logins” to sign in to your web accounts without typing usernames and passwords!</p>\ | 541 | <p>Add “direct logins” to sign in to your web accounts without typing usernames and passwords!</p>\ |
542 | <p>“Direct logins” greatly enhance your password security since you can:</p>\ | 542 | <p>“Direct logins” greatly enhance your password security since you can:</p>\ |
543 | <ul>\ | 543 | <ul>\ |
544 | <li><p>conveniently adopt and enter complex passwords;</p></li>\ | 544 | <li><p>conveniently adopt and enter complex passwords;</p></li>\ |
545 | <li><p>never re-use the same and easy-to-guess password.</p></li>\ | 545 | <li><p>never re-use the same and easy-to-guess password.</p></li>\ |
546 | </ul>\ | 546 | </ul>\ |
547 | <p>Simple and quick configuration with the <b>Clipperz bookmarklet</b>.</p>\ | 547 | <p>Simple and quick configuration with the <b>Clipperz bookmarklet</b>.</p>\ |
548 | <a href=\"http://www.clipperz.com/support/user_guide/direct_logins\" target=\"_blank\">Learn more about “direct logins”</a>", | 548 | <a href=\"http://www.clipperz.com/support/user_guide/direct_logins\" target=\"_blank\">Learn more about “direct logins”</a>", |
549 | 549 | ||
550 | // Cards block | 550 | // Cards block |
551 | 'mainPanelRecordsBlockLabel': "Cards", | 551 | 'mainPanelRecordsBlockLabel': "Cards", |
552 | 'mainPanelAddRecordButtonLabel': "Add new card", | 552 | 'mainPanelAddRecordButtonLabel': "Add new card", |
553 | 'mainPanelRemoveRecordButtonLabel': "Delete card", | 553 | 'mainPanelRemoveRecordButtonLabel': "Delete card", |
554 | 554 | ||
555 | // Cards block - filter tabs | 555 | // Cards block - filter tabs |
556 | 'mainPanelRecordFilterBlockAllLabel': "all", | 556 | 'mainPanelRecordFilterBlockAllLabel': "all", |
557 | 'mainPanelRecordFilterBlockTagsLabel': "tags", | 557 | 'mainPanelRecordFilterBlockTagsLabel': "tags", |
558 | 'mainPanelRecordFilterBlockSearchLabel':"search", | 558 | 'mainPanelRecordFilterBlockSearchLabel':"search", |
559 | 559 | ||