summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Brachold <vdr07@deltab.de>2009-04-05 16:06:21 +0000
committerAndreas Brachold <vdr07@deltab.de>2009-04-05 16:06:21 +0000
commit82710558744a9f8b3ef18684e480c6a65fd628e8 (patch)
treead23fc9b4d1137d8a9e2ea47489a3d73445dfe83
parenta5da44bbdc91f9953d79e2376c6b67bee9757a0b (diff)
downloadxxv-82710558744a9f8b3ef18684e480c6a65fd628e8.tar.gz
xxv-82710558744a9f8b3ef18684e480c6a65fd628e8.tar.bz2
* jason: add icon for audio-playback
* jason: fix - start remote playback recording (message failed) * jason: translate tooltip
-rw-r--r--skins/jason/jason.css2
-rw-r--r--skins/jason/locale/lang-de.js4
-rw-r--r--skins/jason/pic/audio-playback.pngbin0 -> 848 bytes
-rw-r--r--skins/jason/recordings.js72
4 files changed, 60 insertions, 18 deletions
diff --git a/skins/jason/jason.css b/skins/jason/jason.css
index 03c8cd6..e182b2e 100644
--- a/skins/jason/jason.css
+++ b/skins/jason/jason.css
@@ -114,7 +114,7 @@ display:none;
.preview-right { background-image:url(pic/preview-right.png) !important; }
.preview-hide { background-image:url(pic/preview.png) !important; }
.music-icon { background-image:url(pic/audio.png) !important; }
-.playing-music-icon { background-image:url(pic/audio.png) !important; }
+.playing-music-icon { background-image:url(pic/audio-playback.png) !important; }
.x-tree-selected {
border:1px dotted #a3bae9;
diff --git a/skins/jason/locale/lang-de.js b/skins/jason/locale/lang-de.js
index 5db4dbc..1e25bcb 100644
--- a/skins/jason/locale/lang-de.js
+++ b/skins/jason/locale/lang-de.js
@@ -159,6 +159,10 @@ Ext.xxv.recordingsDataView.prototype.szUpgradeWait = "Bitte warten...";
Ext.xxv.recordingsDataView.prototype.szUpgradeSuccess = "Liste der Aufnahmen erfolgreich aktualisieren!\r\n{0}";
Ext.xxv.recordingsDataView.prototype.szUpgradeFailure = "Konnte Liste der Aufnahmen nicht aktualisieren!\r\n{0}";
Ext.xxv.recordingsDataView.prototype.szDetailsFailure = "Konnte Details der Aufnahme nicht aktualisieren!\r\n{0}";
+Ext.xxv.recordingsDataView.prototype.szRecordingTip = "{0} {1} - {2} ({3})<br />{4}";
+Ext.xxv.recordingsDataView.prototype.szFolderTip0 = "Enthält {0} Aufnahmen<br />Gesamtzeit {1}";
+Ext.xxv.recordingsDataView.prototype.szFolderTip1 = "Enthält {0} Aufnahmen<br />Eine neue Aufnahme<br />Gesamtzeit {2}";
+Ext.xxv.recordingsDataView.prototype.szFolderTip2 = "Enthält {0} Aufnahmen<br />{1} neue Aufnahmen<br />Gesamtzeit {2}";
Ext.xxv.searchGrid.prototype.szTitle = "Suche";
Ext.xxv.searchGrid.prototype.szFindReRun = "Suche Wiederholung";
diff --git a/skins/jason/pic/audio-playback.png b/skins/jason/pic/audio-playback.png
new file mode 100644
index 0000000..e2abb53
--- /dev/null
+++ b/skins/jason/pic/audio-playback.png
Binary files differ
diff --git a/skins/jason/recordings.js b/skins/jason/recordings.js
index eb1772c..543c523 100644
--- a/skins/jason/recordings.js
+++ b/skins/jason/recordings.js
@@ -152,7 +152,10 @@ Ext.extend(Ext.xxv.slide, Ext.Component, {
this.param.keywords = k.join(', ');
}
- var title = data.fulltitle.split("~");
+ var title = data.title.split("~");
+ if(data.subtitle && data.subtitle.length >1) {
+ title.push(data.subtitle);
+ }
if(title.length >1) {
this.param.subtitle = title.pop();
this.param.title = title.join("~");
@@ -537,18 +540,18 @@ Ext.xxv.recordingsDataView = function(viewer, preview, store, config) {
'<div class="thumb-wrap" id="{id}">',
'<div class="thumb">',
'<tpl if="isrecording == 0">',
- '<img src="pic/folder.png"<tpl if="group != 0"> ext:qtitle="{shortTitle}" ext:qtip="{group} recordings ({period})"</tpl>/>',
+ '<img src="pic/folder.png"<tpl if="group != 0"> ext:qtitle="{shortTitle}" ext:qtip="{ToolTip}"</tpl>/>',
'</tpl>',
'<tpl if="isrecording != 0">',
'<tpl if="this.isRadio(type)">',
- '<img src="pic/radio.png" ext:qtitle="{shortTitle}" ext:qtip="{day:date} - {start} - {stop} ({period})<br />{shortDesc}" />',
+ '<img src="pic/radio.png" ext:qtitle="{shortTitle}" ext:qtip="{ToolTip}" />',
'</tpl>',
'<tpl if="this.isRadio(type) == false">',
'<tpl if="frame == -1">',
- '<img src="pic/movie.png" ext:qtitle="{shortTitle}" ext:qtip="{day:date} - {start} - {stop} ({period})<br />{shortDesc}" />',
+ '<img src="pic/movie.png" ext:qtitle="{shortTitle}" ext:qtip="{ToolTip}" />',
'</tpl>',
'<tpl if="frame != -1">',
- '<img src="?cmd=ri&data={id}_{frame}" ext:qtitle="{shortTitle}" ext:qtip="{day:date} - {start} - {stop} ({period})<br />{shortDesc}" />',
+ '<img src="?cmd=ri&data={id}_{frame}" ext:qtitle="{shortTitle}" ext:qtip="{ToolTip}" />',
'</tpl>',
'</tpl>',
'</tpl>',
@@ -575,6 +578,7 @@ Ext.xxv.recordingsDataView = function(viewer, preview, store, config) {
,query:'data'
}
});
+
Ext.xxv.recordingsDataView.superclass.constructor.call(this, {
region: 'center'
,store: store
@@ -600,18 +604,47 @@ Ext.xxv.recordingsDataView = function(viewer, preview, store, config) {
} else {
data.shortName = Ext.util.Format.ellipsis(data.fulltitle, 16);
}
- data.shortTitle = Ext.util.Format.ellipsis(data.fulltitle, 50).replace(/\"/g,'\'');
- data.shortDesc = Ext.util.Format.ellipsis(data.description, 50).replace(/\"/g,'\'');
- data.start = data.day.dateFormat('H:i');
- data.stop = new Date(data.day.getTime() + (data.duration * 1000)).dateFormat('H:i');
- data.period = SecondsToHMS(data.duration);
- var frames = data.preview.split(",");
- if(data.preview.length && frames.length) {
- var item = (frames.length) / 2;
- data.frame = frames[item.toFixed(0)];
+ data.shortTitle = Ext.util.Format.ellipsis(data.fulltitle, 40).replace(/\"/g,'\'');
+
+ if(data.isrecording) {
+ var frames = data.preview.split(",");
+ if(data.preview.length && frames.length) {
+ var item = (frames.length) / 2;
+ data.frame = frames[item.toFixed(0)];
+ } else {
+ data.frame = -1;
+ }
+
+ data.ToolTip = String.format(this.szRecordingTip,
+ Ext.util.Format.date(data.day),
+ String(new Date(data.day.getTime()).dateFormat('H:i')),
+ String(new Date(data.day.getTime() + (data.duration * 1000)).dateFormat('H:i')),
+ SecondsToHMS(data.duration),
+ Ext.util.Format.ellipsis(data.description, 50).replace(/\"/g,'\'')
+ );
+
} else {
- data.frame = -1;
- }
+ if(data.unviewed) {
+ if(data.unviewed == 1) {
+ data.ToolTip = String.format(this.szFolderTip1,
+ String(data.group),
+ String(data.unviewed),
+ SecondsToHMS(data.duration)
+ );
+ } else {
+ data.ToolTip = String.format(this.szFolderTip2,
+ String(data.group),
+ String(data.unviewed),
+ SecondsToHMS(data.duration)
+ );
+ }
+ } else {
+ data.ToolTip = String.format(this.szFolderTip0,
+ String(data.group),
+ SecondsToHMS(data.duration)
+ );
+ }
+ }
return data;
}
,listeners: {
@@ -658,7 +691,11 @@ Ext.extend(Ext.xxv.recordingsDataView, Ext.DataView, {
,szUpgradeWait : "Please wait..."
,szUpgradeSuccess : "List of recordings update successful.\r\n{0}"
,szUpgradeFailure : "Couldn't update list of recordings!\r\n{0}"
- ,szDetailsFailure : "Couldn't update details of recording!\r\n{0}"
+ ,szDetailsFailure : "Couldn't update details of recording!\r\n{0}"
+ ,szRecordingTip : "{0} {1} - {2} ({3})<br />{4}"
+ ,szFolderTip0 : "There are {0} recordings<br />Total time {1}"
+ ,szFolderTip1 : "There are {0} recordings<br />Have a new recording<br />Total time {2}"
+ ,szFolderTip2 : "There are {0} recordings<br />Have {1} new recordings<br />Total time {2}"
,onLoadException : function( scope, o, arg, e) {
new Ext.xxv.MessageBox().msgFailure(this.szLoadException, e);
@@ -1103,6 +1140,7 @@ Ext.extend(Ext.xxv.recordingsDataView, Ext.DataView, {
url: XXV.help.cmdAJAX('rpv',{ data: record.data.id, '__start':begin })
,success: this.onPlaySuccess
,failure: this.onPlayFailure
+ ,scope: this
});
}
},