Author: seba.wagner
Date: Tue Jan 13 02:24:37 2009
New Revision: 1770
Modified:
trunk/openmeetings_lps411/main.lzx.lzr=swf8.swf
trunk/openmeetings_lps411/maindebug.lzx.lzr=swf8.swf
trunk/openmeetings_lps411/modules/recording/recordContent.lzx
Log:
Fixes:
App Freezes when you access the Recordings List
Modified: trunk/openmeetings_lps411/main.lzx.lzr=swf8.swf
==============================================================================
Binary files. No diff available.
Modified: trunk/openmeetings_lps411/maindebug.lzx.lzr=swf8.swf
==============================================================================
Binary files. No diff available.
Modified: trunk/openmeetings_lps411/modules/recording/recordContent.lzx
==============================================================================
--- trunk/openmeetings_lps411/modules/recording/recordContent.lzx
(original)
+++ trunk/openmeetings_lps411/modules/recording/recordContent.lzx Tue Jan
13 02:24:37 2009
@@ -1,5 +1,58 @@
<?xml version="1.0" encoding="UTF-8" ?>
<library>
+
+ <class name="recordListitem" extends="view" height="24"
onmouseout="this.setAttribute('bgcolor',0xFFFFFF)" bgcolor="0xFFFFFF"
+
onmouseover="this.setAttribute('bgcolor',canvas.baseMousecolorizer)"
width="$once{ parent.width-14 }">
+
+ <handler name="ondata2">
+ <![CDATA[
+ var duration = Number(this.obj.duration);
+ var seconds = Math.round(duration/1000);
+ var minutes = Math.floor(seconds/60);
+ var deltaSeconds = seconds-(minutes*60);
+ if (minutes<10) minutes="0"+minutes;
+ if (deltaSeconds<10) deltaSeconds="0"+deltaSeconds;
+ var dateStr = this.obj.starttimeAsString;
+ var recordContentedby = this.obj.recordedby.login;
+ if (recordContentedby==null)
recordContentedby=canvas.getLabelName(433);
+ this._text.text = canvas.getLabelName(411)+dateStr+" "+
+ canvas.getLabelName(410)+minutes+":"+
+
deltaSeconds+" "+canvas.getLabelName(434)+""+
+ recordContentedby;
+ ]]>
+ </handler>
+
+ <handler name="ondblclick">
+ canvas.currentrecorder_id = Number(this.obj.recording_id);
+ if( $debug ) Debug.write("recordContent.ondblclick():
canvas.currentrecorder_id: ",canvas.currentrecorder_id);
+ quicklinkAct('recordingsViewer');
+ </handler>
+
+ <view resource="_recording_play_rsc" y="1"
onclick="parent.ondblclick.sendEvent()" >
+ <labelTooltip labelid="409" />
+ </view>
+
+ <!-- title, conference room and duration for recorded contents -->
+ <labelText x="20" text="$once{ parent.obj.name }" y="2"
width="350" resize="false" />
+ <labelText x="370" text="$once{ parent.obj.rooms.name " y="2"
width="200" resize="false" />
+ <labelText x="570" text="$once{ parent.obj.starttimeAsString }"
y="2" width="150" resize="false" />
+
+ <!-- show delete icon -->
+ <view resource="_recording_delete" y="1" x="720" >
+
+ <handler name="onclick">
+ var rec = Number(this.obj.recording_id);
+ classroot.deleteRecordedFile.recordedFileToDelete = rec;
+ classroot.deleteRecordedFile.doCall();
+ </handler>
+
+ <labelTooltip labelid="432" />
+ </view>
+
+ <!-- this text would be setted in the above ondata handler -->
+ <labelTooltip name="_text" />
+ </class>
+
<!---
View for recorded contents list.
When you select 'Recordings' on the top menu, this class shows
the list.
@@ -7,39 +60,53 @@
<class name="recordContent" extends="baseContentView">
<dataset name="recordingsForUser" />
+ <!--
+ dataobject="$once{ parent.recordingsForUser }"
+ -->
<netRemoteCallHib name="getAllRecordingsForUser"
funcname="streamservice.getAllRecordingsForUser"
- remotecontext="$once{
canvas.thishib }" dataobject="$once{
parent.recordingsForUser }" >
+ remotecontext="$once{
canvas.thishib }" >
<netparam><method name="getValue">return
canvas.sessionId;</method></netparam>
<handler name="ondata" args="value">
- <![CDATA[
- if( $debug )
Debug.write("recordContent.ondata():
getAllRecordingsForUser",value);
+ <![CDATA[
+ if( $debug )
Debug.write("recordContent.ondata():
getAllRecordingsForUser",value);
+ parent.parseResult(value);
]]>
- </handler>
+ </handler>
</netRemoteCallHib>
+
+ <method name="parseResult" args="value">
+ <![CDATA[
+ for (var i=0;i<value.length;i++) {
+ new lz.recordListitem(this._content.inn.inn.inn,{
+ obj:value[i]
+ })
+ }
+ ]]>
+ </method>
- <netRemoteCallHib name="deleteRecordedFile"
funcname="streamservice.deleteRecordedFile"
+ <netRemoteCallHib name="deleteRecordedFile"
funcname="streamservice.deleteRecordedFile"
remotecontext="$once{
canvas.thishib }" activeErrorHandler="true">
<attribute name="recordedFileToDelete" value="0"
type="number" />
<netparam><method name="getValue">return
canvas.sessionId;</method></netparam>
<netparam><method name="getValue">return
parent.recordedFileToDelete;</method></netparam>
- <handler name="ondata" args="value">
- <![CDATA[
- if (value>0){
- parent.getAllRecordingsForUser.doCall();
+ <handler name="ondata" args="value">
+ <![CDATA[
+ if (value>0){
+ parent.getAllRecordingsForUser.doCall();
}
]]>
- </handler>
+ </handler>
</netRemoteCallHib>
- <labelText x="2" y="10" fontstyle="bold" labelid="544"
width="200" />
+ <labelText x="2" y="10" fontstyle="bold" labelid="544"
width="250" />
<!-- label: stored files for public/private conference -->
<labelText x="2" y="40" labelid="397" width="300" />
<!-- recordings list viewer -->
- <view y="80" x="2">
+ <view y="80" x="2" name="_content">
<handler name="oninit">
classroot.getAllRecordingsForUser.doCall();
</handler>
@@ -86,60 +153,11 @@
<!-- show the list of recordings contents -->
<view name="inn" width="762" height="200"
bgcolor="$once{
canvas.basebgcolorizer }" y="20" >
<view name="inn" x="1" y="1" width="760"
height="198"
bgcolor="0xFFFFFF" clip="true" >
+ <!--
<datapath name="_dPath"
xpath="local:classroot.recordingsForUser:/" pooling="true"/>
-
+ -->
<view name="inn"
layout="axis:y;spacing:2" width="$once{
parent.width }" >
- <view name="inn"
datapath="item/" height="24"
onmouseout="this.setAttribute('bgcolor',0xFFFFFF)" bgcolor="0xFFFFFF"
-
onmouseover="this.setAttribute('bgcolor',canvas.baseMousecolorizer)"
width="$once{ parent.width-14 }">
-
- <handler name="ondata">
- <![CDATA[
- var
duration =
Number(this.datapath.xpathQuery('duration/text()'));
- var
seconds = Math.round(duration/1000);
- var
minutes = Math.floor(seconds/60);
- var
deltaSeconds = seconds-(minutes*60);
- if
(minutes<10) minutes="0"+minutes;
- if
(deltaSeconds<10) deltaSeconds="0"+deltaSeconds;
- var
dateStr =
this.datapath.xpathQuery('starttimeAsString/text()');
- var
recordContentedby =
this.datapath.xpathQuery('recordedby/login/text()');
- if
(recordContentedby==null)
recordContentedby=canvas.getLabelName(433);
-
this._text.text = canvas.getLabelName(411)+dateStr+" "+
-
canvas.getLabelName(410)+minutes+":"+
-
deltaSeconds+" "+canvas.getLabelName(434)+""+
-
recordContentedby;
- ]]>
- </handler>
-
- <handler
name="ondblclick">
-
canvas.currentrecorder_id =
Number(this.datapath.xpathQuery('recording_id/text()'));
- if( $debug )
Debug.write("recordContent.ondblclick():
canvas.currentrecorder_id: ",canvas.currentrecorder_id);
-
quicklinkAct('recordingsViewer');
- </handler>
-
- <view
resource="_recording_play_rsc" y="1"
onclick="parent.ondblclick.sendEvent()" >
- <labelTooltip
labelid="409" />
- </view>
-
- <!-- title, conference
room and duration for recorded contents -->
- <labelText x="20"
text="$path{ 'name/text()' }" y="2"
width="350" resize="false" />
- <labelText x="370"
text="$path{ 'rooms/name/text()' }" y="2"
width="200" resize="false" />
- <labelText x="570"
text="$path{ 'starttimeAsString/text()' }"
y="2" width="150" resize="false" />
-
- <!-- show delete icon
-->
- <view
resource="_recording_delete" y="1" x="720" >
-
- <handler
name="onclick">
- var rec
=
Number(parent.datapath.xpathQuery('recording_id/text()'));
-
classroot.deleteRecordedFile.recordedFileToDelete = rec;
-
classroot.deleteRecordedFile.doCall();
- </handler>
-
- <labelTooltip
labelid="432" />
- </view>
-
- <!-- this text would be
setted in the above ondata handler -->
- <labelTooltip
name="_text" />
- </view>
+
</view>
<vscrollbar />
</view>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"OpenMeetings developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/openmeetings-dev?hl=en
-~----------~----~----~----~------~----~------~--~---