3 /*********************************************************************************
4 * SugarCRM is a customer relationship management program developed by
5 * SugarCRM, Inc. Copyright (C) 2004-2011 SugarCRM Inc.
7 * This program is free software; you can redistribute it and/or modify it under
8 * the terms of the GNU Affero General Public License version 3 as published by the
9 * Free Software Foundation with the addition of the following permission added
10 * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
11 * IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
12 * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
14 * This program is distributed in the hope that it will be useful, but WITHOUT
15 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16 * FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
19 * You should have received a copy of the GNU Affero General Public License along with
20 * this program; if not, see http://www.gnu.org/licenses or write to the Free
21 * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
24 * You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
25 * SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
27 * The interactive user interfaces in modified source and object code versions
28 * of this program must display Appropriate Legal Notices, as required under
29 * Section 5 of the GNU Affero General Public License version 3.
31 * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
32 * these Appropriate Legal Notices must retain the display of the "Powered by
33 * SugarCRM" logo. If the display of the logo is not reasonably feasible for
34 * technical reasons, the Appropriate Legal Notices must display the words
35 * "Powered by SugarCRM".
36 ********************************************************************************/
45 <script type="text/javascript">
46 if(typeof SugarFeed == 'undefined') { // since the dashlet can be included multiple times a page, don't redefine these functions
47 SugarFeed = function() {
50 * Called when the textarea is blurred
52 pushUserFeed: function(id) {
53 ajaxStatus.showStatus('{/literal}{$saving}{literal}'); // show that AJAX call is happening
54 // what data to post to the dashlet
56 postData = 'to_pdf=1&module=Home&action=CallMethodDashlet&method=pushUserFeed&id=' + id ;
57 YAHOO.util.Connect.setForm(document.getElementById('form_' + id));
58 var cObj = YAHOO.util.Connect.asyncRequest('POST','index.php',
59 {success: SugarFeed.saved, failure: SugarFeed.saved, argument: id}, postData);
62 * handle the response of the saveText method
64 saved: function(data) {
65 SUGAR.mySugar.retrieveDashlet(data.argument);
66 ajaxStatus.flashStatus('{/literal}{$done}{literal}');
68 deleteFeed: function(record, id){
69 postData = 'to_pdf=1&module=Home&action=CallMethodDashlet&method=deleteUserFeed&id=' + id + '&record=' + record;
70 var cObj = YAHOO.util.Connect.asyncRequest('POST','index.php',
71 {success: SugarFeed.saved, failure: SugarFeed.saved, argument: id}, postData);
73 buildReplyForm: function(record, id, elem) {
74 // See if we already have a blockquote
75 var myParentElem = elem.parentNode.parentNode.parentNode;
77 var blockElem = myParentElem.getElementsByTagName('blockquote')[0];
78 if ( typeof(blockElem) == 'undefined' || typeof(blockElem[0]) == 'undefined' ) {
79 // Need to create a blockquote element
80 // With a "clear" div in front of it.
81 var divElem = document.createElement('div');
82 divElem.className = 'clear';
83 myParentElem.appendChild(divElem);
84 blockElem = document.createElement('blockquote');
85 myParentElem.appendChild(blockElem);
87 // Should only be one child blockquote element, so we'll just grab the first one
88 blockElem = blockElem[0];
91 // Move the reply form up over here
92 var formElem = document.getElementById('SugarFeedReplyForm_'+id);
93 formElem.parentNode.removeChild(formElem);
94 blockElem.appendChild(formElem);
95 formElem.getElementsByTagName('div')[0].style.display = 'block';
96 formElem.parentFeed.value = record;
99 replyToFeed: function( id ) {
100 ajaxStatus.showStatus('{/literal}{$saving}{literal}'); // show that AJAX call is happening
101 // what data to post to the dashlet
103 var formElem = document.getElementById('SugarFeedReplyForm_' + id);
104 postData = 'to_pdf=1&module=Home&action=CallMethodDashlet&method=pushUserFeedReply&id=' + id ;
105 YAHOO.util.Connect.setForm(formElem);
106 var cObj = YAHOO.util.Connect.asyncRequest('POST','index.php',
107 {success: SugarFeed.saved, failure: SugarFeed.saved, argument: id}, postData);
110 loaded: function(id) {
112 scrollContent = new iScroll('contentScroller' + id);
118 if(SUGAR.util.isTouchScreen()) {
119 document.addEventListener('DOMContentLoaded', function(){SugarFeed.loaded('{/literal}{$idjs}{literal}')}, false);
123 <script type="text/javascript" src="{sugar_getjspath file="include/javascript/popup_helper.js"}">