Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(138)

Unified Diff: chrome/browser/resources/file_manager/js/file_manager.js

Issue 10818031: Alternative GDrive promo for the File Manager (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/resources/file_manager/js/file_manager.js
diff --git a/chrome/browser/resources/file_manager/js/file_manager.js b/chrome/browser/resources/file_manager/js/file_manager.js
index f6116bd719f4d1fe97ffa4077356919a1e6433f2..d62091f1f55a5ab6838dcfd248b044eaeaab590b 100644
--- a/chrome/browser/resources/file_manager/js/file_manager.js
+++ b/chrome/browser/resources/file_manager/js/file_manager.js
@@ -81,6 +81,11 @@ FileManager.prototype = {
'https://support.google.com/chromeos/?p=filemanager_drive';
/**
+ * Location of the Chromebook information page.
+ */
+ var CHROMEBOOK_INFO_URL = 'http://google.com/chromebook';
+
+ /**
* Location of the page to buy more storage for Google Drive.
*/
var GOOGLE_DRIVE_BUY_STORAGE =
@@ -4031,6 +4036,9 @@ FileManager.prototype = {
};
FileManager.prototype.createGDataWelcomeHandler_ = function() {
+ var board = str('CHROMEOS_RELEASE_BOARD');
+ var new_welcome = board.match(/^(stumpy|lumpy)/i);
+
var WELCOME_HEADER_COUNTER_KEY = 'gdataWelcomeHeaderCounter';
var WELCOME_HEADER_COUNTER_LIMIT = 5;
@@ -4071,26 +4079,48 @@ FileManager.prototype = {
createDiv('gdrive-welcome-icon', wrapper);
var close = createDiv('cr-dialog-close', wrapper);
- close.addEventListener('click', closeBanner);
+ close.addEventListener('click', dismissBanner);
var message = createDiv('gdrive-welcome-message', wrapper);
var title = createDiv('gdrive-welcome-title', message);
- title.textContent = str('GDATA_WELCOME_TITLE');
var text = createDiv('gdrive-welcome-text', message);
text.innerHTML = str(messageId);
var links = createDiv('gdrive-welcome-links', message);
- var more = createDiv('gdrive-welcome-more plain-link', links);
- more.textContent = str('GDATA_LEARN_MORE');
- more.addEventListener('click',
- self.onExternalLinkClick_.bind(self, GOOGLE_DRIVE_FAQ_URL));
+ var more;
+ if (new_welcome) {
+ title.textContent = str('GDATA_WELCOME_TITLE_ALTERNATIVE');
+ more = links.ownerDocument.createElement('a');
Dmitry Zvorygin 2012/07/25 15:15:46 Why not to use this.document(or self.document, alt
Vladislav Kaznacheev 2012/07/25 16:45:13 Changed to self.document_ On 2012/07/25 15:15:46,
+ more.className = 'gdata-welcome-button gdata-welcome-start';
+ more.textContent = str('GDATA_WELCOME_GET_STARTED');
+ more.addEventListener('click',
+ self.onExternalLinkClick_.bind(self, CHROMEBOOK_INFO_URL));
+ more.addEventListener('click', hideBanner);
+ } else {
+ title.textContent = str('GDATA_WELCOME_TITLE');
+ more = links.ownerDocument.createElement('div');
+ more.className = 'plain-link';
+ more.textContent = str('GDATA_LEARN_MORE');
+ more.addEventListener('click',
+ self.onExternalLinkClick_.bind(self, GOOGLE_DRIVE_FAQ_URL));
+ }
+ links.appendChild(more);
- var dismiss = createDiv('gdrive-welcome-dismiss plain-link', links);
+ var dismiss;
+ if (new_welcome) {
+ dismiss = links.ownerDocument.createElement('a');
+ dismiss.className = 'gdata-welcome-button';
+ } else {
+ dismiss = links.ownerDocument.createElement('div');
+ dismiss.className = 'plain-link';
+ }
+ dismiss.classList.add('gdrive-welcome-dismiss');
dismiss.textContent = str('GDATA_WELCOME_DISMISS');
- dismiss.addEventListener('click', closeBanner);
+ dismiss.addEventListener('click', dismissBanner);
+ links.appendChild(dismiss);
}
var previousDirWasOnGData = false;
@@ -4122,18 +4152,35 @@ FileManager.prototype = {
localStorage[WELCOME_HEADER_COUNTER_KEY] = ++counter;
showBanner('header', 'GDATA_WELCOME_TEXT_SHORT');
} else {
- closeBanner();
+ dismissBanner();
}
previousDirWasOnGData = true;
}
- function closeBanner() {
+ function hideBanner() {
self.cleanupGDataWelcome_();
- // Stop showing the welcome banner.
+ }
+
+ // Hide the welcome banner and prevent it from showing again.
+ function dismissBanner() {
+ hideBanner();
localStorage[WELCOME_HEADER_COUNTER_KEY] = WELCOME_HEADER_COUNTER_LIMIT;
}
- return maybeShowBanner;
+ function checkSpaceAndShowBanner() {
+ if (new_welcome && self.isOnGData())
+ chrome.fileBrowserPrivate.getSizeStats(self.getCurrentDirectoryURL(),
+ function(result) {
+ if (result.totalSizeKB < 100 * 1024 * 1024)
Dmitry Zvorygin 2012/07/25 15:15:46 Consider using util.SCALE.
Vladislav Kaznacheev 2012/07/25 16:45:13 I tried and it looks even less readable. Added a c
+ maybeShowBanner();
+ else
+ dismissBanner();
+ });
+ else
+ maybeShowBanner();
+ }
+
+ return checkSpaceAndShowBanner;
};
/**

Powered by Google App Engine
This is Rietveld 408576698