1- CF . UserAssets . currentAccount = new CF . Utils . SessionVariable ( 'cfAssetsCurrentAccount' ) ;
1+ CF . UserAssets . currentAccountKey = new CF . Utils . SessionVariable ( 'cfAssetsCurrentAccount' ) ;
22var isOwnAssets = function ( ) {
3- return CF . Profile . currentUid . get ( ) == Meteor . userId ( ) ;
3+ return CF . Profile . currentUid . get ( ) == Meteor . userId ( ) ;
44} ;
55
66Template [ 'assetsManager' ] . rendered = function ( ) {
@@ -18,16 +18,21 @@ Template['assetsManager'].helpers({
1818 var user = Meteor . users . findOne ( { _id : CF . Profile . currentUid . get ( ) } ) || { } ;
1919 var accounts = user . accounts || { } ;
2020 if ( user . _id == Meteor . userId ( ) ) {
21- _ . extend ( accounts , user . accountsPrivate || { } ) ;
21+ _ . extend ( accounts , user . accountsPrivate || { } ) ;
2222 }
2323 return accounts ;
2424 } ,
2525 currentAccount : function ( ) {
2626 if ( ! isOwnAssets ( ) ) return null ;
27- var current = CF . UserAssets . currentAccount . get ( ) ;
27+ var current = CF . UserAssets . currentAccountKey . get ( ) ;
28+ var key0 = CF . UserAssets . getAccountPrivacyType ( Meteor . userId ( ) , current ) ;
29+ if ( ! key0 ) return { } ;
2830 var user = Meteor . user ( ) ;
29- if ( ! current || ! user || ! user . accounts || ! user . accounts [ current ] ) return { } ;
30- return user . accounts [ current ] ;
31+ return user [ key0 ] [ current ] ;
32+ } ,
33+ currentAccountKey : function ( ) {
34+ if ( ! isOwnAssets ( ) ) return null ;
35+ return CF . UserAssets . currentAccountKey . get ( ) ;
3136 } ,
3237 currentAddress : function ( ) {
3338 if ( ! isOwnAssets ( ) ) return null ;
@@ -40,10 +45,15 @@ Template['assetsManager'].helpers({
4045 currentAmount : function ( ) {
4146 if ( ! isOwnAssets ) return '' ;
4247 var user = Meteor . user ( ) ;
43- var amount = user . accounts ;
48+
49+ var key = CF . UserAssets . currentAccountKey . get ( ) ;
50+
51+ var key0 = CF . UserAssets . getAccountPrivacyType ( Meteor . userId ( ) , key ) ;
52+ if ( ! key0 ) return '' ;
53+ var amount = user [ key0 ] ;
4454 if ( ! amount ) return '' ;
45- var key = CF . UserAssets . currentAccount . get ( ) ;
46- if ( ! key ) return ''
55+
56+ if ( ! key ) return '' ;
4757 amount = amount [ key ] ;
4858 if ( ! amount ) return '' ;
4959 amount = amount . addresses ;
@@ -61,9 +71,15 @@ Template['assetsManager'].helpers({
6171 showAccountsAdvertise : function ( ) {
6272 if ( CF . Profile . currentTwid . get ( ) == CF . User . twid ( ) ) {
6373 var user = Meteor . users . findOne ( { _id : CF . Profile . currentUid . get ( ) } ) ;
64- return ! ( ( user . accounts && _ . keys ( user . accounts ) . length ) || ( user . accountsPrivate && _ . keys ( user . accountsPrivate ) . length ) )
74+ return ! ( ( user . accounts && _ . keys ( user . accounts ) . length ) || ( user . accountsPrivate && _ . keys ( user . accountsPrivate ) . length ) )
6575 }
6676 return false ;
77+ } ,
78+ privacyOpposite : function ( key ) {
79+ var key0 = CF . UserAssets . getAccountPrivacyType ( Meteor . userId ( ) , key ) ;
80+ if ( ! key0 ) return '' ;
81+ if ( key0 == 'accounts' ) return 'private' ;
82+ return 'public' ;
6783 }
6884} ) ;
6985
@@ -75,9 +91,12 @@ Template['assetsManager'].onCreated(function () {
7591 instance . subscribe ( 'profileAssets' , CF . Profile . currentTwid . get ( ) ) ;
7692 Tracker . autorun ( function ( ) {
7793 var user = Meteor . users . findOneByTwid ( CF . Profile . currentTwid . get ( ) ) ;
78- var systems = user && user . accounts
79- && CF . UserAssets . getSystemsFromAccountsObject ( user . accounts ) ;
8094
95+ var systems = user && user . accounts ;
96+ if ( CF . Profile . currentUid == Meteor . userId ( ) ) {
97+ _ . extend ( systems , user . accountsPrivate ) ;
98+ }
99+ systems = CF . UserAssets . getSystemsFromAccountsObject ( systems ) ;
81100 Meteor . subscribe ( 'assetsSystems' , systems ) ;
82101 } ) ;
83102} ) ;
@@ -89,24 +108,24 @@ Template['assetsManager'].events({
89108 //var address = $assetrow.attr("asset-id");
90109 var $t = t . $ ( e . currentTarget ) ;
91110 $t . addClass ( "disabled" ) ;
92- Meteor . call ( "cfAssetsUpdateBalance" , CF . UserAssets . currentAccount . get ( ) , CF . UserAssets . currentAddress . get ( ) ,
111+ Meteor . call ( "cfAssetsUpdateBalance" , CF . UserAssets . currentAccountKey . get ( ) , CF . UserAssets . currentAddress . get ( ) ,
93112 function ( er , re ) {
94113 $t . removeClass ( "disabled" ) ;
95114 } ) ;
96115 } ,
97116 'submit #delete-account-form' : function ( e , t ) {
98117 if ( ! isOwnAssets ( ) ) return false ;
99- console . log ( CF . UserAssets . currentAccount . get ( ) ) ;
118+ console . log ( CF . UserAssets . currentAccountKey . get ( ) ) ;
100119 analytics . track ( 'Delete Account' , {
101- accountName : CF . UserAssets . currentAccount . get ( )
120+ accountName : CF . UserAssets . currentAccountKey . get ( )
102121 } ) ;
103- Meteor . call ( "cfAssetsRemoveAccount" , CF . UserAssets . currentAccount . get ( ) ) ;
122+ Meteor . call ( "cfAssetsRemoveAccount" , CF . UserAssets . currentAccountKey . get ( ) ) ;
104123 $ ( "#modal-delete-account" ) . closeModal ( ) ;
105124 return false ;
106125 } ,
107126 'keyup #rename-account-in, change #rename-account-in' : function ( e , t ) {
108127 if ( ! isOwnAssets ( ) ) return ;
109- var accountId = CF . UserAssets . currentAccount . get ( ) ;
128+ var accountId = CF . UserAssets . currentAccountKey . get ( ) ;
110129 var user = Meteor . user ( ) ;
111130 if ( ! user || ! user . accounts || ! accountId || ! user . accounts [ accountId ] ) return ;
112131 var oldName = user . accounts [ accountId ] . name ;
@@ -125,12 +144,12 @@ Template['assetsManager'].events({
125144 } ,
126145 'submit #rename-account-form' : function ( e , t ) {
127146 if ( ! isOwnAssets ( ) ) return false ;
128- //var key = CF.UserAssets.currentAccount .get();
147+ //var key = CF.UserAssets.currentAccountKey .get();
129148 analytics . track ( 'Renamed Account' , {
130- oldName : CF . UserAssets . currentAccount . get ( ) ,
149+ oldName : CF . UserAssets . currentAccountKey . get ( ) ,
131150 newName : t . $renameAccountInput . val ( )
132151 } ) ;
133- Meteor . call ( "cfAssetsRenameAccount" , CF . UserAssets . currentAccount . get ( ) , t . $renameAccountInput . val ( ) ) ;
152+ Meteor . call ( "cfAssetsRenameAccount" , CF . UserAssets . currentAccountKey . get ( ) , t . $renameAccountInput . val ( ) ) ;
134153 $ ( "#modal-rename-account" ) . closeModal ( ) ;
135154 return false ;
136155 } ,
@@ -151,7 +170,7 @@ Template['assetsManager'].events({
151170 } ,
152171 'submit #add-address-form' : function ( e , t ) { //TAG: assets
153172 if ( ! isOwnAssets ( ) ) return false ;
154- var account = CF . UserAssets . currentAccount . get ( ) ;
173+ var account = CF . UserAssets . currentAccountKey . get ( ) ;
155174 var address = t . $addAssetInput . val ( ) . trim ( ) ;
156175 analytics . track ( 'Added Address' , {
157176 accountName : account ,
@@ -168,10 +187,10 @@ Template['assetsManager'].events({
168187 'submit #delete-address-form' : function ( e , t ) {
169188 if ( ! isOwnAssets ( ) ) return false ;
170189 analytics . track ( 'Delete Address' , {
171- accountName : CF . UserAssets . currentAccount . get ( ) ,
190+ accountName : CF . UserAssets . currentAccountKey . get ( ) ,
172191 address : CF . UserAssets . currentAddress . get ( )
173192 } ) ;
174- Meteor . call ( "cfAssetsRemoveAddress" , CF . UserAssets . currentAccount . get ( ) ,
193+ Meteor . call ( "cfAssetsRemoveAddress" , CF . UserAssets . currentAccountKey . get ( ) ,
175194 CF . UserAssets . currentAddress . get ( ) ) ;
176195 $ ( "#modal-delete-address" ) . closeModal ( ) ;
177196 return false ;
@@ -180,7 +199,7 @@ Template['assetsManager'].events({
180199 'click .per-account' : function ( e , t ) {
181200 if ( ! isOwnAssets ( ) ) return ;
182201 var accountKey = t . $ ( e . currentTarget ) . closest ( ".account-item" ) . attr ( "account-key" ) ;
183- CF . UserAssets . currentAccount . set ( accountKey . toString ( ) ) ;
202+ CF . UserAssets . currentAccountKey . set ( accountKey . toString ( ) ) ;
184203 } ,
185204 'submit #add-asset-form' : function ( e , t ) {
186205 if ( ! isOwnAssets ( ) ) return false ;
@@ -211,14 +230,14 @@ Template['assetsManager'].events({
211230 amount : qua ,
212231 systemName : key ,
213232 address : CF . UserAssets . currentAddress . get ( ) ,
214- accountName : CF . UserAssets . currentAccount . get ( )
233+ accountName : CF . UserAssets . currentAccountKey . get ( )
215234 } ) ;
216235 analytics . track ( 'Followed system' , {
217236 systemName : key ,
218237 mode : 'auto'
219238 } ) ;
220239 Meteor . call ( "starSysBySys" , key ) ;
221- Meteor . call ( "cfAssetsAddAsset" , CF . UserAssets . currentAccount . get ( ) , CF . UserAssets . currentAddress . get ( ) , key , qua , function ( ) {
240+ Meteor . call ( "cfAssetsAddAsset" , CF . UserAssets . currentAccountKey . get ( ) , CF . UserAssets . currentAddress . get ( ) , key , qua , function ( ) {
222241 $form . closest ( ".modal" ) . closeModal ( ) ;
223242 } ) ;
224243
@@ -278,9 +297,9 @@ Template['assetsManager'].events({
278297 amount : qua ,
279298 systemName : key ,
280299 address : CF . UserAssets . currentAddress . get ( ) ,
281- accountName : CF . UserAssets . currentAccount . get ( )
300+ accountName : CF . UserAssets . currentAccountKey . get ( )
282301 } ) ;
283- Meteor . call ( "cfAssetsAddAsset" , CF . UserAssets . currentAccount . get ( ) , CF . UserAssets . currentAddress . get ( ) , key , qua , function ( ) {
302+ Meteor . call ( "cfAssetsAddAsset" , CF . UserAssets . currentAccountKey . get ( ) , CF . UserAssets . currentAddress . get ( ) , key , qua , function ( ) {
284303 $form . closest ( ".modal" ) . closeModal ( ) ;
285304 } ) ;
286305 return false ;
@@ -294,15 +313,25 @@ Template['assetsManager'].events({
294313 return false ;
295314 }
296315 analytics . track ( 'Delete Asset' , {
297- accountName : CF . UserAssets . currentAccount . get ( ) ,
316+ accountName : CF . UserAssets . currentAccountKey . get ( ) ,
298317 address : CF . UserAssets . currentAddress . get ( ) ,
299318 systemName : sys
300319 } ) ;
301- Meteor . call ( "cfAssetsDeleteAsset" , CF . UserAssets . currentAccount . get ( ) , CF . UserAssets . currentAddress . get ( ) , sys ,
320+ Meteor . call ( "cfAssetsDeleteAsset" , CF . UserAssets . currentAccountKey . get ( ) , CF . UserAssets . currentAddress . get ( ) , sys ,
302321 function ( err , ret ) {
303322 CF . UserAssets . currentAsset . set ( null ) ;
304323 t . $ ( "#modal-delete-asset" ) . closeModal ( ) ;
305324 } ) ;
306325 return false ;
326+ } ,
327+ 'submit #toggle-private-form' : function ( e , t ) {
328+ //{{! todo: add check if user is able using this feature}}
329+ if ( ! isOwnAssets ( ) ) return false ;
330+ Meteor . call ( 'cfAssetsTogglePrivacy' , CF . UserAssets . currentAccountKey . get ( ) ,
331+ CF . UserAssets . getAccountPrivacyType ( Meteor . userId ( ) , CF . UserAssets . currentAccountKey . get ( ) ) , function ( err , ret ) {
332+ console . log ( ret ) ;
333+ t . $ ( "#modal-toggle-private" ) . closeModal ( ) ;
334+ } ) ;
335+ return false ;
307336 }
308337} ) ;
0 commit comments