﻿namespace('nnet.sd');

nnet.sd.Service = $j.klass({
    initialize: function() {
    },
    
    // insert Service in category
    insert: function(categoryId) {
        var win = new nnet.PopUpWindow({ url: '/Directory/Insert/' + categoryId, onClose: this.serviceWizardWindowCloseHandler, minWidth: 500 });
        win.show();
    },

    edit: function(sid, lid) {
        var win = new nnet.PopUpWindow({ url: '/Directory/Edit/' + sid + '/' + lid + '?ProcessID=' + NNet.ProcessID, minWidth: 500 });
        win.show();
    },
    
    renew: function(sid, lid) {
    var win = new nnet.PopUpWindow({ url: '/Directory/Edit/' + sid + '/' + lid + '?Mode=Renew&ProcessID=' + NNet.ProcessID, minWidth: 500 });
        win.show();
    },

    upgrade: function(sid, lid) {
    var win = new nnet.PopUpWindow({ url: '/Directory/Edit/' + sid + '/' + lid + '?Mode=Upgrade&Type=Enhanced&ProcessID=' + NNet.ProcessID, minWidth: 500 });
        win.show();
    },

    addFeedback: function(sid) {
        var win = new nnet.PopUpWindow({ url: '/Directory/Feedback/Insert/' + sid, onClose: this.serviceFeedbackWindowCloseHandler, minWidth: 500 });
        win.show();
    },

    editFeedback: function(fid) {
        var win = new nnet.PopUpWindow({ url: '/Directory/Feedback/Edit/' + fid,  minWidth: 500 });
        win.show();
    },

    addReview: function(sid) {
        var win = new nnet.PopUpWindow({ url: '/Directory/Review/Insert/' + sid, minWidth: 500 });
        win.show();
    },

    editReview: function(rid) {
        var win = new nnet.PopUpWindow({ url: '/Directory/Review/Edit/'+rid, minWidth: 500 });
        win.show();
    },

    serviceFeedbackWindowCloseHandler: function(){
        SDCallback.TidyUpOnCloseFeedback();
    },
    
    serviceWizardWindowCloseHandler: function(){
        SDCallback.TidyUpOnCloseServiceWizard();
    },
    
    serviceEmail: function(sid) {
       new nnet.PopUpWindow({ url: '/Directory/Email/' + sid, minWidth: 300, minHeight: 100 }).show();
    }
    

//    get: function(catId, catType, searchType) {
//        try {
//            SDCallback.GetServiceListNew(catId, catType, searchType, NNet.ProcessID, this.callback, OnListCallbackError);
//            //ShowList();
//        } catch (e) { logE("sd.ServiceListing.get", e); }
//    },

//    // Call back so not in the context of this class, cant use this.
//    callback: function(listingData) {
//        try {
//            SD.ServiceListing.Data = listingData;
//            if (SD.ContentViewState == sVars.LIST_CONTENT_VIEW_STATE) {
//                SD.ListingView.display();
//                //SD.MapView.display();
//            } else {
//                //SD.MapView.display();
//                //SD.ListingView.display();
//            }
//        } catch (e) { logE("sd.ServiceListing.callback", e); }
//    }
});


