i18n/src/messenger/webim/js/source/chat/modules/leave_message.js
Dmitriy Simushev a570ed75d0 Update Chat JavaScript Application
Make prechat survey and leave message parts of the Chat
JavaScript Application
2013-03-13 15:38:26 +00:00

70 lines
2.1 KiB
JavaScript

/**
* @preserve This file is part of Mibew Messenger project.
* http://mibew.org
*
* Copyright (c) 2005-2011 Mibew Messenger Community
* License: http://mibew.org/license.php
*/
(function(Mibew){
// Create shortcut for Application object
var app = Mibew.Application;
// Create LeaveMessage module
var leaveMessage = app.module('LeaveMessage', {startWithParent: false});
// Add module initializer
leaveMessage.addInitializer(function(options) {
// Create some shortcuts
var objs = Mibew.Objects;
var models = Mibew.Objects.Models;
// Update page options to change logo block
if (options.page) {
models.page.set(options.page);
}
// Create instance of the leave message layout
objs.leaveMessageLayout = new Mibew.Layouts.LeaveMessage();
// Show layout at page
app.mainRegion.show(objs.leaveMessageLayout);
// Create an instance of the leave message form
models.leaveMessageForm = new Mibew.Models.LeaveMessageForm(
options.leaveMessageForm
);
objs.leaveMessageLayout.leaveMessageFormRegion.show(
new Mibew.Views.LeaveMessageForm({
model: models.leaveMessageForm
})
);
objs.leaveMessageLayout.descriptionRegion.show(
new Mibew.Views.LeaveMessageDescription()
);
// When message sent form should be hide and description should be
// changed
models.leaveMessageForm.on('submit:complete', function() {
objs.leaveMessageLayout.leaveMessageFormRegion.close();
objs.leaveMessageLayout.descriptionRegion.close();
objs.leaveMessageLayout.descriptionRegion.show(
new Mibew.Views.LeaveMessageSentDescription()
);
});
});
// Add module finalizer
leaveMessage.addFinalizer(function() {
// Close layout
Mibew.Objects.leaveMessageLayout.close();
// Remove instance of leaveMessage form model
delete Mibew.Objects.Models.leaveMessageForm;
});
})(Mibew);