jive-sdk
Version:
Node.js SDK for Jive Software to assist with the development of add-ons
111 lines (97 loc) • 3.73 kB
JavaScript
/*
* Copyright 2013 Jive Software
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/****************************************************
* This file should load AFTER view/configuration/container.js, or whichever .js file that defines the onReady, onContainer and onViewer
*
* Note: This implmentation has been provided for convenience, developers are not required to use this pattern.
*
* SEE: Tile API & Development FAQ - https://community.jivesoftware.com/docs/DOC-185776
****************************************************/
function alertBox(type, message) {
if(!type) {
type = 'success';
}
var alertBox = $(".alert-area").removeClass().addClass('alert-' + type).text(message).fadeIn();
gadgets.window.adjustHeight();
setTimeout(function(){
alertBox.fadeOut();
alertBox.removeClass().addClass('alert-area');
jive.tile.close({"message": "The discussion has been created."});
}, 2000);
}
//************************************************************************
//NOTE: CALLED AS SOON AS THE FULL CONTEXT IS RESOLVED
//************************************************************************
function onReady(tileConfig,tileOptions,viewer,container) {
console.log('onReady',tileConfig,tileOptions,viewer,container);
if ( typeof tileConfig === "string" ) {
tileConfig = JSON.parse(tileConfig);
}
$("#create-discussion").click(
function() {
var message = $("#message").val();
var obj = {
"content": {
"type": "text/html",
"text": '<p>'+message+'</p><p>Last Updated at </p>'+config.date
},
"subject": $("#subject").val(),
"visibility": "place",
"parent": container
};
osapi.jive.corev3.discussions.create(obj).execute(
function(result) {
console.log("result:", result);
}
);
$("#message").val('');
$("#subject").val('');
alertBox('success', "The discussion has been posted.");
setTimeout(
function() {
jive.tile.close(config, {} );
},
1000
);
});
window.setTimeout(
function() {
app.resize();
},
1000
);
app.resize();
} // end function
// //************************************************************************
// //NOTE: CALLED AS SOON AS THE CONFIG IS RESOLVED
// //************************************************************************
// function onConfig(tileConfig,tileOptions) {
// console.log('onConfig',tileConfig,tileOptions);
// } // end function
//
// //************************************************************************
// //NOTE: CALLED AS SOON AS THE CONTAINER IS RESOLVED
// //************************************************************************
// function onContainer(container) {
// console.log('onContainer',container);
// } // end function
//
// //************************************************************************
// //NOTE: CALLED AS SOON AS THE VIEWER IS RESOLVED
// //************************************************************************
// function onViewer(viewer) {
// console.log('onViewer',viewer);
// } // end function