Subversion Repositories SmartDukaan

Rev

Rev 1673 | Rev 1859 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
130 ashish 1
'''
2
Created on 28-Apr-2010
3
 
4
@author: ashish
5
'''
6
from shop2020.utils.Utils import log_entry
1491 vikas 7
from shop2020.model.v1.user.impl.UserDataAccessors import create_user, update_user, get_user_by_id, get_user_by_email, update_password,\
557 chandransh 8
    set_user_as_logged_out, set_user_as_logged_in, remove_address_for_user,\
9
    add_address_for_user, delete_user, authenticate_user, user_exists, get_user_state, initialize, set_default_address,\
1273 varun.gupt 10
    create_anonymous_user, forgot_password, get_all_addresses_for_user, get_default_address_id, get_default_pincode,\
1845 vikas 11
    create_user_communication, get_user_communication_by_id, get_user_communication_by_user, get_all_user_communications,\
12
    create_affiliate, get_affiliate_by_id, get_affiliate_by_name, create_tracker, get_tracker_by_id, get_trackers_by_affiliate,\
13
    add_track_log, get_track_log_by_id, get_track_logs_by_tracker, get_track_logs_by_user, get_track_logs, create_master_affiliate,\
14
    get_master_affiliate_by_id, get_master_affiliate_by_name, get_affiliates_by_master_affiliate
557 chandransh 15
from shop2020.model.v1.user.impl.CartDataAccessors import create_cart, get_cart,\
16
    get_cart_by_id, get_cart_by_user_id_and_status, get_carts_by_status,\
17
    get_carts_between, change_cart_status, add_item_to_cart,\
643 chandransh 18
    change_item_status, add_address_to_cart, commit_cart,\
691 chandransh 19
    validate_cart, merge_cart, delete_item_from_cart, check_out, reset_cart
1845 vikas 20
from shop2020.model.v1.user.impl.Converters import to_t_user, to_t_user_state, to_t_cart, to_t_address, to_t_user_communication,\
21
     to_t_master_affiliate, to_t_affiliate, to_t_tracker, to_t_track_log
576 chandransh 22
 
557 chandransh 23
from shop2020.thriftpy.model.v1.user.ttypes import ShoppingCartException
130 ashish 24
 
772 rajveer 25
from shop2020.model.v1.user.impl.WidgetDataAccessor import update_my_research, get_browse_history,\
26
    update_browse_history, delete_item_from_my_research, merge_browse_history, get_my_research
27
from shop2020.model.v1.user.impl.WidgetConverters import to_t_widget
766 rajveer 28
from shop2020.model.v1.user.impl import UserDataAccessors, CartDataAccessors,\
29
    WidgetDataAccessor
557 chandransh 30
 
130 ashish 31
class UserContextServiceHandler:
32
 
404 rajveer 33
 
1249 chandransh 34
    def __init__(self, dbname='user'):
35
        initialize(dbname)
557 chandransh 36
 
130 ashish 37
    """
557 chandransh 38
    service
130 ashish 39
    """
557 chandransh 40
    def createAnonymousUser(self, jsessionId):
766 rajveer 41
        try:
42
            cart = create_cart(-1)
43
            return to_t_user(create_anonymous_user(jsessionId, cart))
44
        finally:
45
            UserDataAccessors.close_session()
557 chandransh 46
    def getUserById(self, userId):
130 ashish 47
        """
48
        Parameters:
557 chandransh 49
        - userId
130 ashish 50
        """
766 rajveer 51
        try:
52
            return to_t_user(get_user_by_id(userId))
53
        finally:
54
            UserDataAccessors.close_session()
1491 vikas 55
 
56
    def getUserByEmail(self, email):
57
        """
58
        Parameters:
59
         - email
60
        """
61
        try:
62
            return to_t_user(get_user_by_email(email))
63
        finally:
64
            UserDataAccessors.close_session()
65
 
66
 
557 chandransh 67
    def createUser(self, user):
130 ashish 68
        """
69
        Parameters:
557 chandransh 70
        - user
130 ashish 71
        """
766 rajveer 72
        try:
73
            cart = create_cart(-1)
74
            return to_t_user(create_user(user, cart))
75
        finally:
76
            UserDataAccessors.close_session()
77
 
557 chandransh 78
    def updateUser(self, user):
130 ashish 79
        """
80
        Parameters:
557 chandransh 81
        - user
130 ashish 82
        """
766 rajveer 83
        try:
84
            return to_t_user(update_user(user))
85
        finally:
86
            UserDataAccessors.close_session()
87
 
557 chandransh 88
    def deleteUser(self, userId):
130 ashish 89
        """
90
        Parameters:
557 chandransh 91
        - userId
130 ashish 92
        """
766 rajveer 93
        try:
94
            return delete_user(userId)
95
        finally:
96
            UserDataAccessors.close_session()
97
 
557 chandransh 98
    def getUserState(self, userId):
99
        """
100
        Parameters:
101
        - userId
102
        """
130 ashish 103
        log_entry(self, "get State")
766 rajveer 104
        try:
105
            return to_t_user_state(get_user_state(userId))
106
        finally:
107
            UserDataAccessors.close_session()
108
 
557 chandransh 109
    def authenticateUser(self, email, password):
130 ashish 110
        """
111
        Parameters:
557 chandransh 112
        - email
113
        - password
114
        """
115
        log_entry(self, "authenticate user")
766 rajveer 116
        try:
117
            return to_t_user(authenticate_user(email, password))
118
        finally:
119
            UserDataAccessors.close_session()
120
 
557 chandransh 121
    def userExists(self, email):
122
        """
123
        Parameters:
124
        - email
125
        """
126
        log_entry(self, "user exists")
766 rajveer 127
        try:
128
            return user_exists(email)
129
        finally:
130
            UserDataAccessors.close_session()
131
 
567 rajveer 132
    def addAddressForUser(self, userId, address, setDefault):
557 chandransh 133
        """
134
        Parameters:
135
        - userId
136
        - address
137
        - setDefault
138
        """
139
        log_entry(self, "add address for user")
766 rajveer 140
        try:
141
            return add_address_for_user(address, userId, setDefault)
142
        finally:
143
            UserDataAccessors.close_session()
144
 
557 chandransh 145
    def removeAddressForUser(self, userid, addressId):
146
        """
147
        Parameters:
148
        - userid
149
        - addressId
150
        """
151
        log_entry(self, "removing address")
766 rajveer 152
        try:
153
            return remove_address_for_user(userid, addressId)
154
        finally:
155
            UserDataAccessors.close_session()
156
 
557 chandransh 157
    def setUserAsLoggedIn(self, userId, timestamp):
158
        """
159
        Parameters:
160
        - userId
161
        - timestamp
162
        """
163
        log_entry(self, "set_user_as_logged_in")
766 rajveer 164
        try:
165
            return set_user_as_logged_in(userId, timestamp)
166
        finally:
167
            UserDataAccessors.close_session()
168
 
557 chandransh 169
    def setUserAsLoggedOut(self, userId, timestamp):
170
        """
171
        Parameters:
172
        - userId
173
        - timestamp
174
        """
175
        log_entry(self, "set user as logged out")
766 rajveer 176
        try:
177
            return set_user_as_logged_out(userId, timestamp)
178
        finally:
179
            UserDataAccessors.close_session()
180
 
557 chandransh 181
    def setDefaultAddress(self, userId, addressId):
182
        """
183
        Parameters:
184
        - userId
185
        - addressId
186
        """
766 rajveer 187
        try:
188
            return set_default_address(userId, addressId)
189
        finally:
190
            UserDataAccessors.close_session()
191
 
594 rajveer 192
    def updatePassword(self, userid, oldPassword, newPassword):
557 chandransh 193
        """
194
        Parameters:
594 rajveer 195
         - userid
196
         - oldPassword
197
         - newPassword
557 chandransh 198
        """
199
        log_entry(self, "updating password")
766 rajveer 200
        try:
201
            return update_password(userid, oldPassword, newPassword)
202
        finally:
203
            UserDataAccessors.close_session()
204
 
884 rajveer 205
    def forgotPassword(self, email, password):
581 rajveer 206
        """
207
        Parameters:
208
         - email
209
        """
210
        log_entry(self, "forgot password")
766 rajveer 211
        try:
884 rajveer 212
            return forgot_password(email, password)
766 rajveer 213
        finally:
214
            UserDataAccessors.close_session()
215
 
594 rajveer 216
    def getAllAddressesForUser(self, userId):
217
        """
218
        Parameters:
219
         - userId
220
        """
766 rajveer 221
        try:
222
            addresses = get_all_addresses_for_user(userId)
223
 
224
            t_addresses = list()
225
            for address in addresses:
226
                t_addresses.append(to_t_address(address))
227
            return t_addresses
228
        finally:
229
            UserDataAccessors.close_session()
594 rajveer 230
 
231
    def getDefaultAddressId(self, userId):
232
        """
233
        Parameters:
234
         - userId
235
        """
766 rajveer 236
        try:
785 rajveer 237
            return get_default_address_id(userId)
766 rajveer 238
        finally:
239
            UserDataAccessors.close_session()
785 rajveer 240
 
241
    def getDefaultPincode(self, userId):
242
        """
243
        Parameters:
244
         - userId
245
        """
246
        try:
247
            return get_default_pincode(userId)
248
        finally:
249
            UserDataAccessors.close_session()
250
 
557 chandransh 251
    def createCart(self, userId):
252
        """
253
        Parameters:
254
        - userId
255
        """
766 rajveer 256
        try:
257
            return create_cart(userId).id
258
        finally:
259
            UserDataAccessors.close_session()
260
 
557 chandransh 261
    def getCurrentCart(self, userId):
262
        """
263
        Parameters:
130 ashish 264
         - userId
265
        """
766 rajveer 266
        try:
267
            cart = get_cart(userId)
268
            if cart:
269
                return to_t_cart(cart)
270
            else:
271
                raise ShoppingCartException(101, "not cart attached to this user")
272
        finally:
273
            CartDataAccessors.close_session()
274
 
557 chandransh 275
    def getCart(self, cartId):
276
        """
277
        Parameters:
278
         - cartId
279
        """
766 rajveer 280
        try:
281
            cart = get_cart_by_id(cartId)
282
            if cart:
283
                return to_t_cart(cart)
284
            else:
285
                raise ShoppingCartException(101, "not cart attached to this id")
286
        finally:
287
            CartDataAccessors.close_session()
288
 
557 chandransh 289
    def getCartsForUser(self, userId, status):
130 ashish 290
        """
291
        Parameters:
292
         - userId
557 chandransh 293
         - status
130 ashish 294
        """
766 rajveer 295
        try:
296
            if not userId:
297
                raise ShoppingCartException(101, "user_id is not provided")
298
 
299
            carts = get_cart_by_user_id_and_status(userId, status)
300
            t_carts = []
301
            if carts:
302
                for cart in carts:
303
                    t_carts.append(to_t_cart(cart))
304
            return t_carts
305
        finally:
306
            CartDataAccessors.close_session()
307
 
557 chandransh 308
    def getCartsByStatus(self, status):
130 ashish 309
        """
310
        Parameters:
557 chandransh 311
         - status
130 ashish 312
        """
766 rajveer 313
        try:
314
            carts = get_carts_by_status(status)
315
            t_carts = []
316
            if carts:
317
                for cart in carts:
318
                    t_carts.append(to_t_cart(cart))
319
            return t_carts
320
        finally:
321
            CartDataAccessors.close_session()
322
 
557 chandransh 323
    def getCartsByTime(self, from_time, to_time, status):
130 ashish 324
        """
325
        Parameters:
557 chandransh 326
         - from_time
327
         - to_time
328
         - status
130 ashish 329
        """
766 rajveer 330
        try:
331
            carts = get_carts_between(from_time, to_time, status)
332
            t_carts = []
333
            if carts:
334
                for cart in carts:
335
                    t_carts.append(to_t_cart(cart))
336
            return t_carts
337
        finally:
338
            CartDataAccessors.close_session()
339
 
557 chandransh 340
    def changeCartStatus(self, cartId, status):
130 ashish 341
        """
342
        Parameters:
557 chandransh 343
         - cartId
344
         - status
130 ashish 345
        """
766 rajveer 346
        try:
347
            change_cart_status(cartId, status)
348
        finally:
349
            CartDataAccessors.close_session()
350
 
557 chandransh 351
    def addItemToCart(self, cartId, itemId, quantity):
130 ashish 352
        """
353
        Parameters:
557 chandransh 354
         - cartId
355
         - itemId
356
         - quantity
130 ashish 357
        """
766 rajveer 358
        try:
359
            add_item_to_cart(cartId, itemId, quantity)
360
        finally:
361
            CartDataAccessors.close_session()
362
 
557 chandransh 363
    def deleteItemFromCart(self, cartId, itemId):
130 ashish 364
        """
365
        Parameters:
557 chandransh 366
         - cartId
367
         - itemId
130 ashish 368
        """
766 rajveer 369
        try:
370
            delete_item_from_cart(cartId, itemId)
371
        finally:
372
            CartDataAccessors.close_session()
373
 
557 chandransh 374
    def changeQuantity(self, cartId, itemId, quantity):
375
        """
376
        Parameters:
377
         - cartId
378
         - itemId
379
         - quantity
380
        """
766 rajveer 381
        try:
382
            add_item_to_cart(cartId, itemId, quantity)
383
        finally:
384
            CartDataAccessors.close_session()
385
 
557 chandransh 386
    def changeItemStatus(self, cartId, itemId, status):
130 ashish 387
        """
388
        Parameters:
557 chandransh 389
         - cartId
390
         - itemId
391
        """
766 rajveer 392
        try:
393
            return change_item_status(cartId, itemId, status)
394
        finally:
395
            CartDataAccessors.close_session()
396
 
557 chandransh 397
    def addAddressToCart(self, cartId, addressId):
398
        """
399
        Parameters:
400
         - cartId
130 ashish 401
         - addressId
402
        """
766 rajveer 403
        try:
404
            return add_address_to_cart(cartId, addressId)
405
        finally:
406
            CartDataAccessors.close_session()
407
 
690 chandransh 408
    def createOrders(self, cartId):
130 ashish 409
        """
410
        Parameters:
557 chandransh 411
         - cartId
130 ashish 412
        """
766 rajveer 413
        try:
414
            return commit_cart(cartId)
415
        finally:
416
            CartDataAccessors.close_session()
1466 ankur.sing 417
 
557 chandransh 418
    def validateCart(self, cartId):
130 ashish 419
        """
1466 ankur.sing 420
        Validates that:
421
        1. The checkout timestamp is greater than the updatedOn timestamp.
422
        2. All of the lines in the cart are active items.
423
        3. The estimate for any of the lines in cart doesn't change.
424
        If all three are true, returns empty string; else returns appropriate message.
425
 
130 ashish 426
        Parameters:
557 chandransh 427
         - cartId
130 ashish 428
        """
766 rajveer 429
        try:
430
            return validate_cart(cartId)
431
        finally:
432
            CartDataAccessors.close_session()
433
 
557 chandransh 434
    def mergeCart(self, fromCartId, toCartId):
513 rajveer 435
        """
436
        Parameters:
557 chandransh 437
         - fromCartId
438
         - toCartId
513 rajveer 439
        """
766 rajveer 440
        try:
441
            merge_cart(fromCartId, toCartId)
442
        finally:
443
            CartDataAccessors.close_session()
444
 
691 chandransh 445
    def checkOut(self, cartId):
446
        """
447
        Sets the checkedOutOn timestamp of the cart. Raises an exception if the specified cart can't be found.
448
 
449
        Parameters:
450
         - cartId
451
        """
766 rajveer 452
        try:
453
            return check_out(cartId)
454
        finally:
455
            CartDataAccessors.close_session()
456
 
691 chandransh 457
    def resetCart(self, cartId, items):
458
        """
459
        The second parameter is a map of item ids and their quantities which have been successfully processed.
460
        This methods removes the specified quantiry of the specified item from the cart.
461
 
462
        Parameters:
463
         - cartId
464
         - items
465
        """
766 rajveer 466
        try:
467
            return reset_cart(cartId, items)
468
        finally:
469
            CartDataAccessors.close_session()
772 rajveer 470
 
471
    #Widget related methods
472
    def getMyResearch(self, userId):
473
        """
474
        Parameters:
475
         - user_id
476
        """
477
        try:
478
            return to_t_widget(get_my_research(userId))
479
        finally:
480
            WidgetDataAccessor.close_session()
481
 
482
    def updateMyResearch(self, userId, itemId):
483
        """
484
        Parameters:
485
         - user_id
486
         - item_id
487
        """
488
        try:
489
            return update_my_research(userId, itemId)
490
        finally:
491
            WidgetDataAccessor.close_session()
492
 
493
    def deleteItemFromMyResearch(self, userId, itemId):
494
        """
495
        Parameters:
496
         - user_id
497
         - item_id
498
        """
499
        try:
500
            return delete_item_from_my_research(userId, itemId)
501
        finally:
502
            WidgetDataAccessor.close_session()
766 rajveer 503
 
772 rajveer 504
    def updateBrowseHistory(self, userId, itemId):
505
        """
506
        Parameters: 
507
        - user_id
508
        - item_id
509
        """
510
        try:
511
            update_browse_history(userId, itemId)
512
        finally:
513
            WidgetDataAccessor.close_session()
514
 
515
    def getBrowseHistory(self, userId):
516
        """
517
        Parameters:
518
         - user_id
519
        """
520
        try:
521
            return to_t_widget(get_browse_history(userId))
522
        finally:
523
            WidgetDataAccessor.close_session()
524
 
525
    def mergeBrowseHistory(self, fromUserId, toUserId):
526
        """
527
        Parameters:
528
         - user_id
529
        """
530
        try:
531
            return merge_browse_history(fromUserId, toUserId)
532
        finally:
533
            WidgetDataAccessor.close_session()
534
 
1273 varun.gupt 535
    def saveUserCommunication(self, userId, email, communicationType, orderId, awb, product, subject, message):
536
        """
537
        Parameters:
538
         - userId
539
         - email
540
         - communicationType
541
         - orderId
542
         - awb
543
         - product
544
         - subject
545
         - message
546
        """
547
        try:
548
            return create_user_communication(userId, email, communicationType, orderId, awb, product, subject, message)
549
        finally:
1605 varun.gupt 550
            UserDataAccessors.close_session()
1273 varun.gupt 551
 
1583 varun.gupt 552
    def getUserCommunicationById(self, id):
553
        """
554
        Parameters:
555
         - id
556
        """
557
        try:
558
            return to_t_user_communication(get_user_communication_by_id(id))
559
        finally:
1605 varun.gupt 560
            UserDataAccessors.close_session()
1583 varun.gupt 561
 
562
    def getUserCommunicationByUser(self, userId):
563
        """
564
        Parameters:
565
         - userId
566
        """
567
        try:
568
            return [to_t_user_communication(user_communication) for user_communication in get_user_communication_by_user(userId)]
569
        finally:
1605 varun.gupt 570
            UserDataAccessors.close_session()
1583 varun.gupt 571
 
572
    def getAllUserCommunications(self):
573
        try:
574
            return [to_t_user_communication(user_communication) for user_communication in get_all_user_communications()]
575
        finally:
1605 varun.gupt 576
            UserDataAccessors.close_session()
1596 ankur.sing 577
 
1845 vikas 578
    def createMasterAffiliate(self, name):
579
        """
580
        Parameters
581
         - name
582
         - url
583
        """
584
        try:
585
            return to_t_master_affiliate(create_master_affiliate(name))
586
        finally:
587
            UserDataAccessors.close_session()
588
 
589
    def getMasterAffiliateById(self, id):
590
        """
591
        Parameters
592
         - id
593
        """
594
        try:
595
            return to_t_master_affiliate(get_master_affiliate_by_id(id))
596
        finally:
597
            UserDataAccessors.close_session()
598
 
599
    def getMasterAffiliateByName(self, name):
600
        """
601
        Parameters
602
         - id
603
        """
604
        try:
605
            return to_t_master_affiliate(get_master_affiliate_by_name(name))
606
        finally:
607
            UserDataAccessors.close_session()
608
 
609
    def createAffiliate(self, name, url, master_affiliate_id):
610
        """
611
        Parameters
612
         - name
613
         - url
614
        """
615
        try:
616
            return to_t_affiliate(create_affiliate(name, url, master_affiliate_id))
617
        finally:
618
            UserDataAccessors.close_session()
619
 
620
    def getAffiliateById(self, id):
621
        """
622
        Parameters
623
         - id
624
        """
625
        try:
626
            return to_t_affiliate(get_affiliate_by_id(id))
627
        finally:
628
            UserDataAccessors.close_session()
629
 
630
    def getAffiliateByName(self, name):
631
        """
632
        Parameters
633
         - name
634
        """
635
        try:
636
            return to_t_affiliate(get_affiliate_by_name(name))
637
        finally:
638
            UserDataAccessors.close_session()
639
 
640
    def getAffiliatesByMasterAffiliate(self, master_affiliate_id):
641
        """
642
        Parameters
643
         - master_id
644
        """
645
        try:
646
            return [to_t_affiliate(affiliate) for affiliate in get_affiliates_by_master_affiliate(master_affiliate_id)]
647
        finally:
648
            UserDataAccessors.close_session()
649
 
650
    def createTracker(self, affilateId):
651
        """
652
        Parameters
653
         - affiliateId
654
        """
655
        try:
656
            return to_t_tracker(create_tracker(affilateId))
657
        finally:
658
            UserDataAccessors.close_session()
659
 
660
    def getTrackerById(self, id):
661
        """
662
        Parameters
663
         - id
664
        """
665
        try:
666
            return to_t_tracker(get_tracker_by_id(id))
667
        finally:
668
            UserDataAccessors.close_session()
669
 
670
    def getTrackersByAffiliate(self, affiliateId):
671
        """
672
        Parameters
673
         - affiliateId
674
        """
675
        try:
676
            return [to_t_tracker(tracker) for tracker in get_trackers_by_affiliate(affiliateId)]
677
        finally:
678
            UserDataAccessors.close_session()
679
 
680
    def addTrackLog(self, trackerId, userId, event, url, data):
681
        """
682
        Parameter
683
         - trackerId
684
         - userId
685
         - event
686
         - url
687
         - data
688
        """
689
        try:
690
            return add_track_log(trackerId, userId, event, url, data)
691
        finally:
692
            UserDataAccessors.close_session()
693
 
694
    def getTrackLogById(self, id):
695
        """
696
        Parameter
697
         - id
698
        """
699
        try:
700
            return to_t_track_log(get_track_log_by_id(id))
701
        finally:
702
            UserDataAccessors.close_session()
703
 
704
    def getTrackLogsByTracker(self, tracker_id):
705
        """
706
        Parameter
707
         - tracker_id
708
        """
709
        try:
710
            return [to_t_track_log(track_log) for track_log in get_track_logs_by_tracker(tracker_id)]
711
        finally:
712
            UserDataAccessors.close_session()
713
 
714
    def getTrackLogsByUser(self, user_id):
715
        """
716
        Parameter
717
         - user_id
718
        """
719
        try:
720
            return [to_t_track_log(track_log) for track_log in get_track_logs_by_user(user_id)]
721
        finally:
722
            UserDataAccessors.close_session()
723
 
724
    def getTrackLogs(self, trackerId, userId, event, url):
725
        """
726
        Parameter
727
         - user_id
728
        """
729
        try:
730
            return [to_t_track_log(track_log) for track_log in get_track_logs(trackerId, userId, event, url)]
731
        finally:
732
            UserDataAccessors.close_session()
733
 
1596 ankur.sing 734
    def getUserCount(self, userType):
735
        """
736
        Returns number of registered users.
1612 ankur.sing 737
        If userType = null, then it returns count of all users, including anonymous
738
        If userType = UserType.ANONYMOUS, then it returns count of anonymous users only
739
        If userType = UserType.USER, then it returns count of non-anonymous users only
1596 ankur.sing 740
 
741
        Parameters:
1612 ankur.sing 742
         - userType
1596 ankur.sing 743
        """
1673 ankur.sing 744
        try:
745
            return UserDataAccessors.get_user_count(userType)
746
        finally:
747
            UserDataAccessors.close_session()
748
 
749
    def getAllUsers(self, userType):
750
        """
751
        Returns list of users of type userType. If userType is null, then returns all the users.
752
 
753
        Parameters:
754
         - userType
755
        """
756
        try:
757
            users = UserDataAccessors.get_users(userType)
758
            t_users = list()
759
            for user in users:
760
                t_users.append(to_t_user(user))
761
            return t_users
762
        finally:
763
            UserDataAccessors.close_session()
1583 varun.gupt 764
 
772 rajveer 765
    def closeSession(self, ):
766
        CartDataAccessors.close_session()
767
        UserDataAccessors.close_session()
768
        WidgetDataAccessor.close_session()
1596 ankur.sing 769
 
772 rajveer 770
 
771
    '''        
557 chandransh 772
    def addWidget(self, widget):
130 ashish 773
        """
774
        Parameters:
557 chandransh 775
         - widget
130 ashish 776
        """
766 rajveer 777
        try:
778
            add_widget(widget)
779
        finally:
780
            WidgetDataAccessor.close_session()
130 ashish 781
 
557 chandransh 782
    def addItemToWidget(self, widget_id, items):
130 ashish 783
        """
784
        Parameters:
557 chandransh 785
         - widget_id
786
         - items
130 ashish 787
        """
766 rajveer 788
        try:
789
            add_items_to_widget(widget_id, items)
790
        finally:
791
            WidgetDataAccessor.close_session()
792
 
557 chandransh 793
    def updateWidget(self, widgetId, enable):
130 ashish 794
        """
795
        Parameters:
557 chandransh 796
         - widgetId
797
         - enable
130 ashish 798
        """
766 rajveer 799
        try:
800
            update_widget(widgetId, enable)
801
        finally:
802
            WidgetDataAccessor.close_session()
803
 
557 chandransh 804
    def updateWidgetItem(self, widgetId, enable):
130 ashish 805
        """
806
        Parameters:
557 chandransh 807
         - widgetId
808
         - enable
130 ashish 809
        """
766 rajveer 810
        try:
811
            update_widget(widgetId, enable)
812
        finally:
813
            WidgetDataAccessor.close_session()
814
 
557 chandransh 815
    def deleteItemFromWidget(self, widget_id, item_id):
816
        """
817
        Parameters:
818
         - widget_id
819
         - item_id
820
        """
766 rajveer 821
        try:
822
            return delete_item_from_widget(widget_id, item_id)
823
        finally:
824
            WidgetDataAccessor.close_session()
825
 
557 chandransh 826
    def getWidget(self, type, userId, onlyEnabled):
130 ashish 827
        """
828
        Parameters:
557 chandransh 829
         - type
830
         - userId
831
         - onlyEnabled
130 ashish 832
        """
766 rajveer 833
        try:
834
            widget = get_widget_by_type(type, userId, onlyEnabled)
835
            return to_t_widget(widget)
836
        finally:
837
            WidgetDataAccessor.close_session()
838
 
557 chandransh 839
    def updateRatings(self, item_id, type, rating, user_id):
130 ashish 840
        """
841
        Parameters:
557 chandransh 842
        - item_id
843
        - type
844
        - rating
845
        - user_id
130 ashish 846
        """
766 rajveer 847
        try:
848
            update_ratings(user_id, item_id, rating, type)
849
        finally:
850
            WidgetDataAccessor.close_session()
557 chandransh 851
 
852
    def getRatings(self, item_id, user_id):
853
        """
854
        Parameters:
855
        - item_id
856
        - user_id
857
        """
766 rajveer 858
        try:
859
            all_ratings, user_ratings = get_ratings(user_id, item_id)
860
            return to_t_ratings(user_ratings, all_ratings, item_id, user_id)
861
        finally:
862
            WidgetDataAccessor.close_session()
863
 
772 rajveer 864
    '''
865