Changeset 17788
- Timestamp:
- 07/28/08 10:41:59 (1 month ago)
- Files:
-
- trunk/core/src/net/project/hibernate/dao/impl/PnWeblogEntryDAOImpl.java (modified) (1 diff)
- trunk/core/src/net/project/hibernate/model/PnWeblogEntry.hbm.xml (modified) (1 diff)
- trunk/core/web/css/blog.css (modified) (2 diffs)
- trunk/core/web/jsp/resource/PersonalAssignments.jsp (modified) (4 diffs)
- trunk/core/web/src/blogit.js (modified) (12 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/core/src/net/project/hibernate/dao/impl/PnWeblogEntryDAOImpl.java
r17767 r17788 25 25 public PnWeblogEntry getWeblogEntry(Integer weblogEntryId){ 26 26 PnWeblogEntry entry = findByPimaryKey(weblogEntryId); 27 if(entry != null){ 28 Hibernate.initialize(entry); 29 } 27 30 return entry; 28 31 } trunk/core/src/net/project/hibernate/model/PnWeblogEntry.hbm.xml
r17269 r17788 8 8 name="net.project.hibernate.model.PnWeblogEntry" 9 9 table="PN_WEBLOG_ENTRY" 10 lazy=" false"10 lazy="true" 11 11 > 12 12 trunk/core/web/css/blog.css
r17639 r17788 18 18 position: absolute; 19 19 overflow: hidden; 20 left: 200px;21 top: 100px;20 left: 100px; 21 top: 60px; 22 22 margin: 0px; 23 23 background-color: #FFFFFF; … … 68 68 overflow-X: auto; 69 69 } 70 .blogbar { 71 background-color:#33BDFF; 72 border-collapse:collapse; 73 height:2px; 74 padding:0pt; 75 } 76 .redlink{ 77 78 } 79 .bluelink{ 80 81 } trunk/core/web/jsp/resource/PersonalAssignments.jsp
r17293 r17788 69 69 <template:import type="css" src="/styles/global.css" /> 70 70 <template:import type="css" src="/styles/fonts.css" /> 71 <!-- BlogIt Style --> 72 <template:import type="css" src="/styles/blog.css" /> 71 73 <template:getSpaceCSS /> 72 74 … … 80 82 <template:import type="javascript" src="/src/util.js" /> 81 83 <template:import type="javascript" src="/src/window_functions.js" /> 84 <script language="javascript"> 85 var JSPRootURL = '<%= SessionManager.getJSPRootURL() %>'; 86 </script> 87 <!-- BlogIt JS --> 88 <template:import type="javascript" src="/src/blogit.js" /> 82 89 <template:getSpaceJS /> 83 90 … … 85 92 var theForm; 86 93 var isLoaded = false; 87 var JSPRootURL = '<%= SessionManager.getJSPRootURL() %>'; 94 95 // Internationalization message for blog popup 96 var noSelectionErrMes = '<%=PropertyProvider.get("prm.global.javascript.verifyselection.noselection.error.message")%>'; 97 98 var blogItFor = 'assignments'; 99 var spaceId = <%= user.getCurrentSpace().getID()%>; 100 var moduleId = <%= Module.PERSONAL_SPACE%>; 88 101 89 102 function setup() { … … 277 290 <tb:button type="refresh" /> 278 291 <tb:button type="help" /> 292 <tb:button type="blogit" /> 279 293 </tb:band> 280 294 </tb:toolbar> trunk/core/web/src/blogit.js
r17767 r17788 1 // Global Ajax events can be handled on every request! 2 //Ext.Ajax.on('beforerequest', function(conn, options){ Ext.get(document.body).mask('Loading...');}, this); 3 //Ext.Ajax.on('requestcomplete', function(conn, response, options){Ext.get(document.body).unmask()}, this); 4 1 5 // String prototype function for triming white spaces 2 6 String.prototype.trim = function(){ … … 13 17 blogPopupDialogue.style.display = 'block'; 14 18 blogPopupDialogue.style.height = 'auto'; 15 blogPopupDialogue.style.width = ' 615px';19 blogPopupDialogue.style.width = '80%'; 16 20 var blogPopupBody = document.createElement('div'); 17 21 blogPopupBody.id = 'blogPopupBody'; 18 22 blogPopupBody.style.display = 'block'; 19 23 blogPopupBody.style.height = 'auto'; 20 blogPopupBody.style.width = ' 612px';24 blogPopupBody.style.width = '87%'; 21 25 var blogActionDiv = document.createElement('div'); 22 26 blogActionDiv.style.left = '390px'; … … 31 35 blogActionDiv.innerHTML = '<h3>Saving...</h3>'; 32 36 37 var showtimediv=false; 33 38 var objectId; 34 39 var contentPanel; … … 40 45 var fromTime = null; 41 46 var toTime = null; 42 47 var months = new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'); 48 var days = new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'); 49 function scrollBack() { 50 } 51 52 function scrollForward() { 53 } 54 55 function showtime(){ 56 if(showtimediv==false){ 57 document.getElementById("timesetdiv").style.display="block"; 58 blogPopupDialogue.style.top = 30; 59 showtimediv=true; 60 }else{ 61 document.getElementById("timesetdiv").style.display="none"; 62 blogPopupDialogue.style.top = 60; 63 showtimediv=false; 64 } 65 } 66 function showdiv1(){ 67 document.getElementById("div1").style.display="block"; 68 document.getElementById("div11").style.display="block"; 69 document.getElementById("div2").style.display="none"; 70 document.getElementById("div22").style.display="none"; 71 blogPopupDialogue.style.width = '80%'; 72 } 73 function showdiv2(){ 74 document.getElementById("div2").style.display="block"; 75 document.getElementById("div22").style.display="block"; 76 document.getElementById("div1").style.display="none"; 77 document.getElementById("div11").style.display="none"; 78 blogPopupDialogue.style.width = '80%'; 79 } 43 80 function getHourOptions() { 44 81 var hrOptions = ''; … … 61 98 if(typeof(blogItFor) != 'undefined' && blogItFor == 'assignments'){ 62 99 if ((theForm.objectID) && (verifySelectionForField(theForm.objectID, "single", noSelectionErrMes))) { 63 for (var i = 0; i < theForm.objectID.length; i++) { 64 if(theForm.objectID[i].checked == true) { 65 objectId = theForm.objectID[i].value; 66 break; 100 if(theForm.objectID.length == null){ 101 if(theForm.objectID.checked == true) { 102 objectId = theForm.objectID.value; 67 103 } 104 } else { 105 for (var i = 0; i < theForm.objectID.length; i++) { 106 if(theForm.objectID[i].checked == true) { 107 objectId = theForm.objectID[i].value; 108 break; 109 } 110 } 68 111 } 69 112 var now = new Date(); 70 113 var today = now.getDate()+'/'+(now.getMonth()+1)+'/'+now.getFullYear(); 71 timeSheetTable = '<fieldset> <legend> Time Sheet </legend>'; 72 timeSheetTable += ' Day : <input type="text" name="blogDate" size="8" id="blogDate" value="'+today+'" readonly="readonly" />'; 73 timeSheetTable += ' <img src="'+JSPRootURL+'/images/calendar/cal.gif" onclick="javascript:window.parent.displayCalendar(document.getElementById(\'blogDate\'),\'d/m/yyyy\',this);" /> '; 74 timeSheetTable += ' From : <select id="fromHours" name="fromHours"> <option value="-1">Hrs</option>'+ getHourOptions() +'</select>'; 114 timeSheetTable += '<table width="100%"><tr><td>'; 115 timeSheetTable += '<table align="left" border="0" width="100%">'; 116 timeSheetTable += '<tr>'; 117 timeSheetTable += ' <td width="30%" class="blogEntryLabel">Date:</td>'; 118 timeSheetTable += ' <td width="70%" nowrap="nowrap" class="blogEntryLabel">'+days[now.getDay()]+', '+months[now.getMonth()]+' '+now.getDate()+', '+now.getFullYear()+'</td>'; 119 timeSheetTable += '</tr>'; 120 timeSheetTable += '<tr><td colspan="2" class="blogbar"></td></tr>'; 121 timeSheetTable += '<tr>'; 122 timeSheetTable += ' <td width="30%" class="blogEntryLabel">Topic:</td>'; 123 timeSheetTable += ' <td width="70%"><input type="text" size="40" maxlength="50" name="txttopic"/></td>'; 124 timeSheetTable += '</tr></table>'; 125 timeSheetTable += '</td></tr><tr><td>'; 126 timeSheetTable += '<table width="100%"><tr><td width="100%">'; 127 timeSheetTable += '<font class="blogEntryLabel">Time Worked </font>'; 128 timeSheetTable += '<table align="left" id="timecard" border="0" width="100%">'; 129 timeSheetTable += '<tr>'; 130 timeSheetTable += '<td width="50%"><div id="div1" style="display:none"><table width="50%"><tr class="tableHeader">'; 131 timeSheetTable += '<td width="15"><img src="'+JSPRootURL+'/images/icons/prev_page_sm.gif" border="0" onClick="scrollBack();"/></td>'; 132 timeSheetTable += '<td align="center">Sun<br>7/20/08</td>'; 133 timeSheetTable += '<td align="center">Mon<br>7/21/08</td>'; 134 timeSheetTable += '<td align="center">Tue<br>7/22/08</td>'; 135 timeSheetTable += '<td align="center">Wed<br>7/23/08</td>'; 136 timeSheetTable += '<td align="center">Thu<br>7/24/08</td>'; 137 timeSheetTable += '<td align="center">Fri<br>7/25/08</td>'; 138 timeSheetTable += '<td align="center">Sat<br>7/26/08</td>'; 139 timeSheetTable += '<td width="15"><img src="'+JSPRootURL+'/images/icons/next_page_sm.gif" border="0" onClick="scrollForward();"/></td>'; 140 timeSheetTable += '</tr>'; 141 timeSheetTable += '<tr><td colspan="9" align="center"><a href="javascript:showdiv2();">day</a> week</td></tr>'; 142 timeSheetTable += '</table></div>'; 143 144 timeSheetTable += '<div id="div2" style="display:block"><table width="50%"><tr class="tableHeader">'; 145 timeSheetTable += '<td width="15"><img src="'+JSPRootURL+'/images/icons/prev_page_sm.gif" border="0" onClick="scrollBack();"/></td>'; 146 timeSheetTable += '<td align="center">Today</td>'; 147 timeSheetTable += '<td width="15"><img src="'+JSPRootURL+'/images/icons/next_page_sm.gif" border="0" onClick="scrollForward();"/></td>'; 148 timeSheetTable += '</tr>'; 149 timeSheetTable += '<tr><td colspan="3" align="center">day <a href="javascript:showdiv1();">week</a></td></tr>'; 150 timeSheetTable += '</table></div></td>'; 151 152 timeSheetTable += '<td align="center" valign="top" class="blogEntryLabel" nowrap="nowrap" >Total Days<br/>Reported<br/><a href="#" class="bluelink">history</a></td>'; 153 timeSheetTable += '<td align="center" valign="top" class="blogEntryLabel" nowrap="nowrap" >Estimated <br/>Remaining</td>'; 154 timeSheetTable += '<td align="center" valign="top" class="blogEntryLabel" nowrap="nowrap" >Total <br/>Est.Days</td>'; 155 timeSheetTable += '<td align="center" valign="top" class="blogEntryLabel" nowrap="nowrap" >% <br/>complete<br/><a href="#" class="redlink">not accurate?</a></td>'; 156 timeSheetTable += '<td></td>'; 157 158 timeSheetTable += '<tr><td colspan="7" class="blogbar"></td></tr>'; 159 160 timeSheetTable += '<tr class="tableContent">'; 161 162 timeSheetTable += '<td width="50%"><div id="div11" style="display:none"><table width="50%"><tr class="tableContent">'; 163 timeSheetTable += '<td width="15"></td>'; 164 timeSheetTable += '<td nowrap="nowrap"> 0 hrs <br><input type="text" size="1" maxlength="2" /><img src="'+JSPRootURL+'/images/sm_clock.gif" border="0" onclick="showtime();"/></td>'; 165 timeSheetTable += '<td nowrap="nowrap"> 0 hrs <br><input type="text" size="1" maxlength="2" /><img src="'+JSPRootURL+'/images/sm_clock.gif" border="0" onclick="showtime();"/></td>'; 166 timeSheetTable += '<td nowrap="nowrap"> 0 hrs <br><input type="text" size="1" maxlength="2" /><img src="'+JSPRootURL+'/images/sm_clock.gif" border="0" onclick="showtime();"/></td>'; 167 timeSheetTable += '<td nowrap="nowrap"> 0 hrs <br><input type="text" size="1" maxlength="2" /><img src="'+JSPRootURL+'/images/sm_clock.gif" border="0" onclick="showtime();"/></td>'; 168 timeSheetTable += '<td nowrap="nowrap"> 0 hrs <br><input type="text" size="1" maxlength="2" /><img src="'+JSPRootURL+'/images/sm_clock.gif" border="0" onclick="showtime();"/></td>'; 169 timeSheetTable += '<td nowrap="nowrap"> 0 hrs <br><input type="text" size="1" maxlength="2" /><img src="'+JSPRootURL+'/images/sm_clock.gif" border="0" onclick="showtime();"/></td>'; 170 timeSheetTable += '<td nowrap="nowrap"> 0 hrs <br><input type="text" size="1" maxlength="2" /><img src="'+JSPRootURL+'/images/sm_clock.gif" border="0" onclick="showtime();"/></td>'; 171 timeSheetTable += '<td width="15"></td></tr>'; 172 timeSheetTable += '</table></div>'; 173 174 timeSheetTable += '<div id="div22" style="display:block"><table width="50%"><tr class="tableContent">'; 175 timeSheetTable += ' <td width="15"></td>'; 176 timeSheetTable += ' <td nowrap="nowrap"> 0 hrs <br><input type="text" size="1" maxlength="2" name="dateupdX40577X1216537200007"/><img src="'+JSPRootURL+'/images/sm_clock.gif" border="0" onclick="showtime();"/></td>'; 177 timeSheetTable += ' <td width="15"></td>'; 178 timeSheetTable += '</tr></table><div></td>'; 179 timeSheetTable += '<td align="center">47</td>'; 180 timeSheetTable += '<td align="center">23</td>'; 181 timeSheetTable += '<td align="center">70</td>'; 182 timeSheetTable += '<td align="center">60.2%</td>'; 183 timeSheetTable += '<td nowrap="nowrap">Done? <input type="checkbox" checked="checked" style="border-style: none;"/></td>'; 184 timeSheetTable += '</tr>'; 185 timeSheetTable += '<tr><td colspan="2"><div id="timesetdiv" style="display:none">'; 186 timeSheetTable += '<fieldset> <legend> Time worked </legend>'; 187 timeSheetTable += ' From : <select id="fromHours" name="fromHours"> <option value="-1">Hrs</option>'+ getHourOptions() +'</select>'; 75 188 timeSheetTable += ' <select id="fromMinutes" name="fromMinutes"> <option value="-1">Mins</option>'+ getMinuteOptions() +'</select> '; 76 189 timeSheetTable += 'To : <select id="toHours" name="toHours"> <option value="-1">Hrs</option>'+ getHourOptions() +'</select>'; 77 190 timeSheetTable += ' <select id="toMinutes" name="toMinutes"> <option value="-1">Mins</option>'+ getMinuteOptions() +'</select>'; 78 timeSheetTable += '<br/></fieldset>'; 191 timeSheetTable += '</fieldset>'; 192 timeSheetTable += '</div></td></tr>'; 193 194 timeSheetTable += '</table>'; 195 timeSheetTable += '</td></tr><tr><td colspan="7" class="blogbar"></td></tr></table>'; 196 timeSheetTable += '</td></tr></table>'; 79 197 showPopup(); 80 198 } … … 111 229 112 230 if(typeof(blogItFor) != 'undefined' && blogItFor == 'assignments'){ 113 htmlText += ' <div id="timeSheet" style="position: relative; left: 30px; width: 530px;">'+timeSheetTable+'</div>';114 } 115 116 htmlText += ' <table align="left" cellpadding="5" cellspacing="5" > ';117 htmlText += ' <tr> <td class="blogEntryLabel" > Subject : </td> <td> <input id="title" maxlength="240" name="title" size="40" type="text" value=""> </td> </tr>';118 htmlText += ' <tr> <td valign="top" class="blogEntryLabel" > Content : </td> <td> <div id="contentTextareaPosition"></div> </td> </tr>';119 htmlText += ' <tr> <td colspan="2" align="right" > <input type="button" value=" BlogIt " onclick="saveEntry();" />';231 htmlText += ' <div id="timeSheet" style="position: relative; left: 30px; width: 100%;">'+timeSheetTable+'</div>'; 232 } 233 234 htmlText += ' <table align="left" cellpadding="5" cellspacing="5" > '; 235 htmlText += ' <tr> <td class="blogEntryLabel" nowrap="nowrap" style="padding-left:30px"> Subject : </td> <td> <input id="title" maxlength="240" name="title" size="60" type="text" value=""> </td> </tr>'; 236 htmlText += ' <tr> <td valign="top" class="blogEntryLabel" nowrap="nowrap" style="padding-left:30px"> Content : </td> <td> <div id="contentTextareaPosition"></div> </td> </tr>'; 237 htmlText += ' <tr> <td colspan="2" align="right" style="padding-left:30px"> <input type="button" value=" BlogIt " onclick="saveEntry();" />'; 120 238 htmlText += ' '; 121 239 htmlText += ' <input type="button" value=" Cancel " onclick="hidePopup();" /> </td> </tr> </table>'; … … 138 256 contentPanel = new Ext.FormPanel({ 139 257 border: false, 140 width: 550,258 width: '100%', 141 259 items: [{ 142 260 xtype: 'htmleditor', 143 261 id: 'content', 144 262 fieldLabel: 'Content', 145 width: 520,263 width: '650px', 146 264 height: 200, 147 265 anchor: '95%', … … 152 270 153 271 // getting number of blog entries if exist for selected object 154 getBlogEntriesByObjectId(objectId); 272 getBlogEntriesByObjectId(objectId); 155 273 } 156 274 … … 163 281 showHtmlSelectTags(); 164 282 } 165 window.document.body.style.overflow = 'visible'; 283 window.document.body.style.overflow = 'visible'; 284 timeSheetTable = ''; 166 285 } 167 286 … … 220 339 return false; 221 340 } 222 if(typeof(blogItFor) != 'undefined' && blogItFor == 'assignments'){ 223 if(document.getElementById('blogDate').value != null && document.getElementById('blogDate').value.split('/').length == 3){ 224 workDate = document.getElementById('blogDate').value 225 } 341 /*if(typeof(blogItFor) != 'undefined' && blogItFor == 'assignments'){ 226 342 if(document.getElementById('fromHours').value != -1 && document.getElementById('fromMinutes').value != -1){ 227 343 fromTime = document.getElementById('fromHours').value +':'+ document.getElementById('fromMinutes').value … … 230 346 toTime = document.getElementById('toHours').value +':'+ document.getElementById('toMinutes').value 231 347 } 232 if( workDate == null ||fromTime == null || toTime == null){348 if(fromTime == null || toTime == null){ 233 349 return false; 234 350 } 235 } 351 }*/ 236 352 return true; 237 353 } … … 357 473 contentPanel = new Ext.FormPanel({ 358 474 border: false, 359 width: 550,475 width:'100%', 360 476 items: [{ 361 477 xtype: 'htmleditor', 362 478 id: 'content', 363 479 fieldLabel: 'Content', 364 width: 520,480 width: '650px', 365 481 height: 200, 366 482 anchor: '95%',
