From 99dd65ed07216b00a62df42f522af0d05e9ae504 Mon Sep 17 00:00:00 2001 From: Matias Alejo Garcia Date: Tue, 11 Nov 2014 16:53:30 -0300 Subject: [PATCH 1/4] add gravatars --- Gruntfile.js | 6 ++++-- bower.json | 3 ++- js/app.js | 10 ++++++++++ package.json | 3 ++- views/includes/copayer.html | 2 +- views/includes/head.html | 2 +- 6 files changed, 20 insertions(+), 6 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index 55eeb99f7..907f8c706 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -123,7 +123,7 @@ module.exports = function(grunt) { 'lib/file-saver/FileSaver.js', 'lib/socket.io-client/socket.io.js', 'lib/sjcl.js', - 'lib/ios-imagefile-megapixel/megapix-image.js', + 'lib/ios-imagefile-megapixel/megapix-image.js', 'lib/qrcode-decoder-js/lib/qrcode-decoder.min.js', 'lib/zeroclipboard/ZeroClipboard.min.js' ], @@ -139,7 +139,9 @@ module.exports = function(grunt) { 'lib/angular-foundation/mm-foundation.min.js', 'lib/angular-foundation/mm-foundation-tpls.min.js', 'lib/angular-gettext/dist/angular-gettext.min.js', - 'lib/angular-load/angular-load.min.js' + 'lib/angular-load/angular-load.min.js', + 'lib/angular-gravatar/build/md5.min.js', + 'lib/angular-gravatar/build/angular-gravatar.min.js' // If you add libs here, remember to add it too to karma.conf ], dest: 'lib/angularjs-all.js' diff --git a/bower.json b/bower.json index ab97d836e..c77f71035 100644 --- a/bower.json +++ b/bower.json @@ -24,7 +24,8 @@ "ng-idle": "*", "inherits": "~0.0.1", "angular-load": "0.2.0", - "lodash": "~2.4.1" + "lodash": "~2.4.1", + "angular-gravatar": "*" }, "resolutions": { "angular": "=1.2.19" diff --git a/js/app.js b/js/app.js index 1caa20b24..9f2c8e53a 100644 --- a/js/app.js +++ b/js/app.js @@ -23,6 +23,7 @@ var modules = [ 'monospaced.qrcode', 'ngIdle', 'gettext', + 'ui.gravatar', 'copayApp.filters', 'copayApp.services', 'copayApp.controllers', @@ -44,6 +45,15 @@ copayApp.config(function($sceDelegateProvider) { ]); }); +angular.module('ui.gravatar').config([ + 'gravatarServiceProvider', function(gravatarServiceProvider) { + gravatarServiceProvider.defaults = { + size : 35 + }; + // Use https endpoint + gravatarServiceProvider.secure = true; + } +]); angular.module('copayApp.filters', []); angular.module('copayApp.services', []); diff --git a/package.json b/package.json index a09fd72d6..ce1061833 100644 --- a/package.json +++ b/package.json @@ -88,6 +88,7 @@ "sinon": "^1.10.3", "socket.io-client": "^1.0.6", "travis-cov": "^0.2.5", - "uglifyify": "^1.2.3" + "uglifyify": "^1.2.3", + "angular-gravatar": "*" } } diff --git a/views/includes/copayer.html b/views/includes/copayer.html index 2af6f63b1..846aa50a6 100644 --- a/views/includes/copayer.html +++ b/views/includes/copayer.html @@ -1,6 +1,6 @@
- +
- + {{username}} From f2c0261daa06717052d925c8252778b7284a6790 Mon Sep 17 00:00:00 2001 From: Matias Alejo Garcia Date: Wed, 12 Nov 2014 22:06:18 -0300 Subject: [PATCH 2/4] fix karma confg --- karma.conf.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/karma.conf.js b/karma.conf.js index babd35e39..bf3e3bbb5 100644 --- a/karma.conf.js +++ b/karma.conf.js @@ -29,6 +29,8 @@ module.exports = function(config) { 'lib/angular-foundation/mm-foundation.min.js', 'lib/angular-foundation/mm-foundation-tpls.min.js', 'lib/angular-load/angular-load.min.js', + 'lib/angular-gravatar/build/md5.min.js', + 'lib/angular-gravatar/build/angular-gravatar.min.js', 'lib/angular-gettext/dist/angular-gettext.min.js', 'lib/inherits/inherits.js', 'lib/lodash/dist/lodash.js', From 4392a6f05803b136b3c0bd7634a1aa6529bfce08 Mon Sep 17 00:00:00 2001 From: bechi Date: Wed, 12 Nov 2014 17:44:50 -0300 Subject: [PATCH 3/4] add gravatar ux --- css/src/main.css | 9 +++++++++ img/change-avatar.png | Bin 0 -> 8692 bytes views/includes/head.html | 4 +++- views/profile.html | 36 ++++++++++++++++++++++-------------- 4 files changed, 34 insertions(+), 15 deletions(-) create mode 100644 img/change-avatar.png diff --git a/css/src/main.css b/css/src/main.css index 9e46e8b4a..d0c4b7fc1 100644 --- a/css/src/main.css +++ b/css/src/main.css @@ -1077,6 +1077,10 @@ button.gray:focus, overflow: hidden; } +.fi-trash.text-gray:hover { + color: #CA5649; +} + .photo-container { margin-right: 3px; display: inline-block; @@ -1090,6 +1094,11 @@ button.gray:focus, text-align: center; } +.photo-container.profile { + width: 80px; + height: 80px; +} + a:hover .photo-container { background: #34495E; color: #fff; diff --git a/img/change-avatar.png b/img/change-avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..6c0ed08261b12a71cc37167c4121d698e4b7c4a3 GIT binary patch literal 8692 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 S@Ww^}0000 - +
+ +
{{username}}
diff --git a/views/profile.html b/views/profile.html index cf08e592f..8dad247f0 100644 --- a/views/profile.html +++ b/views/profile.html @@ -3,13 +3,23 @@
-
-

Backup Profile

-

It's important to backup your profile so that you can recover it in case of disaster. The backup will include all your profile's wallets

- Backup profile - View profile backup +
+ +
+

Backup Profile

+

It's important to backup your profile so that you can recover it in case of disaster. The backup will include all your profile's wallets

+
+
@@ -53,19 +63,17 @@ {{item.balanceInfo.totalBalance || 0 |noFractionNumber}} {{item.settings.unitName}} - +
- +     - + ng-show="loading != item.id">
From 4eae2d2ff566b210d46c8b38400e7380e21bdac2 Mon Sep 17 00:00:00 2001 From: Gustavo Maximiliano Cortez Date: Thu, 13 Nov 2014 00:07:33 -0300 Subject: [PATCH 4/4] fix gravatar on profile. fix layout --- js/controllers/profile.js | 1 + views/profile.html | 52 +++++++++++++++++++++------------------ 2 files changed, 29 insertions(+), 24 deletions(-) diff --git a/js/controllers/profile.js b/js/controllers/profile.js index 8794d809a..1d5280968 100644 --- a/js/controllers/profile.js +++ b/js/controllers/profile.js @@ -1,5 +1,6 @@ 'use strict'; angular.module('copayApp.controllers').controller('ProfileController', function($scope, $rootScope, $location, $modal, controllerUtils, backupService) { + $scope.username = $rootScope.iden.getName(); $scope.isSafari = Object.prototype.toString.call(window.HTMLElement).indexOf('Constructor') > 0; $rootScope.title = 'Profile'; diff --git a/views/profile.html b/views/profile.html index 8dad247f0..248ce524d 100644 --- a/views/profile.html +++ b/views/profile.html @@ -3,31 +3,35 @@
-
- -
-

Backup Profile

-

It's important to backup your profile so that you can recover it in case of disaster. The backup will include all your profile's wallets

-
- -
- -
- Copy to clipboard +
+
+ -
- Copy this text as it is in a safe place (notepad or email) +
+

Backup Profile

+

It's important to backup your profile so that you can recover it in case of disaster. The backup will include all your profile's wallets

+
+ +
+
+
+ +
+ Copy to clipboard +
+
+ Copy this text as it is in a safe place (notepad or email) +