﻿/// <reference name="MicrosoftAjax.js"/>

Type.registerNamespace("BandSite");

BandSite.ProfileManager = function(element) {
    BandSite.ProfileManager.initializeBase(this, [element]);
}

BandSite.ProfileManager.prototype = {
    initialize: function() {
        BandSite.ProfileManager.callBaseMethod(this, 'initialize');
        
        // Add custom initialization here
        var that = this;
        
        this._boyImage.add_imageClicked(
            function(sender, e) {
                that._imageSelected(sender.get_fileName());
            }
        );
        this._girlImage.add_imageClicked(
            function(sender, e) {
                that._imageSelected(sender.get_fileName());
            }
        );
        
        if ($find('SignInPanel')) {
            $find('SignInPanel').add_signedIn(
                function(sender, e) {
                    var friend = sender._friend;
                    that._pictureImage.set_fileName(friend.ImageFileName);
                    that._pictureImage.refreshImage();
                }
            );
        }
        
        this._imageFileUpload.add_fileUploaded(
            function(sender, e) {
                that._imageSelected(e.fileName);
                sender.reset();
            }
        );

    },
    dispose: function() {        
        //Add custom dispose actions here
        BandSite.ProfileManager.callBaseMethod(this, 'dispose');
    },
    
    _imageSelected : function(fileName) {
    
        var friendID = $find("SignInPanel")._friend.ID;
    
        VisitorService.UpdateFriendImageFileName(
            friendID,
            fileName,
            function(result) {
            
            },
            webServiceError
        );
        
        this._pictureImage.set_fileName(fileName);
        this._pictureImage.refreshImage();
    
    }
    
}
BandSite.ProfileManager.createProperty("bandID");
BandSite.ProfileManager.createProperty("pictureImage");
BandSite.ProfileManager.createProperty("girlImage");
BandSite.ProfileManager.createProperty("boyImage");
BandSite.ProfileManager.createProperty("imageFileUpload");
BandSite.ProfileManager.registerClass('BandSite.ProfileManager', Sys.UI.Control);

if (typeof(Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();
