Changeset 1917
- Timestamp:
- Wed Feb 22 17:46:57 2006
- Files:
-
- trunk/livesupport/src/modules/htmlUI/var/formmask/generic.inc.php (modified) (diff)
- trunk/livesupport/src/modules/htmlUI/var/ui_playlist.class.php (modified) (diff)
- trunk/livesupport/src/modules/htmlUI/var/templates/playlist/editor.tpl (modified) (diff)
- trunk/livesupport/src/modules/htmlUI/var/templates/playlist/actionhandler.tpl (modified) (diff)
- trunk/livesupport/src/modules/htmlUI/var/templates/menu.tpl (modified) (diff)
- trunk/livesupport/src/modules/htmlUI/var/templates/popup/testStream.tpl (modified) (diff)
- trunk/livesupport/src/modules/htmlUI/var/templates/popup/listen2Audio.tpl (added)
- trunk/livesupport/src/modules/htmlUI/var/templates/popup/listen2AudioClip.tpl (deleted)
- trunk/livesupport/src/modules/htmlUI/var/templates/script/contextmenu.js.tpl (modified) (diff)
- trunk/livesupport/src/modules/htmlUI/var/templates/library/actionhandler.tpl (modified) (diff)
- trunk/livesupport/src/modules/htmlUI/var/templates/scratchpad/actionhandler.tpl (modified) (diff)
- trunk/livesupport/src/modules/htmlUI/var/html/ui_handler.php (modified) (diff)
- trunk/livesupport/src/modules/htmlUI/var/html/ui_browser.php (modified) (diff)
- trunk/livesupport/src/modules/htmlUI/var/ui_conf.php (modified) (diff)
- trunk/livesupport/src/modules/htmlUI/var/ui_browser.class.php (modified) (diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
trunk/livesupport/src/modules/htmlUI/var/formmask/generic.inc.php
r1821 r1917 643 643 ) 644 644 ), 645 'PL.setItemPlaylength' => array( 646 'act' => array( 647 'element' => 'act', 648 'type' => 'hidden', 649 ), 650 'id' => array( 651 'element' => 'id', 652 'type' => 'hidden' 653 ), 654 'elemId' => array( 655 'element' => 'elemId', 656 'type' => 'hidden' 657 ), 658 'duration' => array( 659 'element' => 'duration', 660 'type' => 'hidden' 661 ), 662 'playlength' => array( 663 'element' => 'playlength', 664 'type' => 'date', 665 'label' => 'Playlength', 666 'options' => array('format' => 'His'), 667 ), 668 array( 669 'element' => 'cancel', 670 'type' => 'button', 671 'label' => 'Cancel', 672 'attributes'=> array('onClick' => 'window.close()'), 673 'groupit' => TRUE 674 ), 675 array( 676 'element' => 'reset', 677 'type' => 'reset', 678 'label' => 'Reset', 679 'groupit' => TRUE 680 ), 681 array( 682 'element' => 'submitter', 683 'type' => 'button', 684 'label' => 'Submit', 685 'attributes'=> array('onClick' => 'PL_checkItemPlaylength()'), 686 'groupit' => TRUE 687 ), 688 array( 689 'group' => array('cancel', 'reset', 'submitter') 690 ) 691 ), 645 692 'schedule' => array( 646 693 array( -
trunk/livesupport/src/modules/htmlUI/var/ui_playlist.class.php
r1826 r1917 69 69 return FALSE; 70 70 } 71 $token = $this->Base->gb->lockPlaylistForEdit($plid, $this->Base->sessid); 71 $token = $this->Base->gb->lockPlaylistForEdit($plid, $this->Base->sessid); 71 71 if (PEAR::isError($token)) { 72 #print_r($token);72 if (UI_VERBOSE === TRUE) print_r($token); 72 72 $this->Base->_retMsg('Unable to open playlist "$1".', $this->Base->_getMDataValue($plid, UI_MDATA_KEY_TITLE)); 73 73 return FALSE; … … 95 95 $plgunid = $this->Base->gb->releaseLockedPlaylist($this->token, $this->Base->sessid); 96 96 if (PEAR::isError($plgunid)) { 97 #print_r($plgunid);97 if (UI_VERBOSE === TRUE) print_r($plgunid); 97 97 if (UI_WARNING) $this->Base->_retMsg('Unable to release playlist.'); 98 98 return FALSE; … … 129 129 $plgunid = $this->Base->gb->revertEditedPlaylist($this->token, $this->Base->sessid); 130 130 if (PEAR::isError($plgunid)) { 131 #print_r($plgunid);131 if (UI_VERBOSE === TRUE) print_r($plgunid); 131 131 if (UI_WARNING) $this->Base->_retMsg('Unable to revert to locked state.'); 132 132 return FALSE; … … 177 177 } 178 178 179 function addItem($elemIds) 179 function addItem($elemIds, $duration=null) 179 179 { 180 $this->changed = TRUE; 180 $this->changed = TRUE; 181 $fadeIn = null; 182 $fadeOut = null; 183 $pause = null; 181 184 182 185 if (!$elemIds) { … … 185 188 return FALSE; 186 189 } 187 if (!is_array($elemIds)) 190 if (!is_array($elemIds)) { 187 190 $elemIds = array($elemIds); 188 189 foreach ($elemIds as $elemId) { 190 $r = $this->Base->gb->addAudioClipToPlaylist($this->token, $elemId, $this->Base->sessid); 191 } 192 if (isset($duration)) { 193 $length = sprintf('%02d', $duration['H']).':'.sprintf('%02d', $duration['i']).':'.sprintf('%02d', $duration['s']).'.000000'; 194 } 195 foreach ($elemIds as $elemId) { 196 $r = $this->Base->gb->addAudioClipToPlaylist($this->token, $elemId, $this->Base->sessid, $fadeIn, $fadeOut, $length, $pause); 191 197 if (PEAR::isError($r)) { 192 #print_r($r);198 if (UI_VERBOSE === TRUE) print_r($r); 192 198 $this->Base->_retMsg('Error while trying to add item to playlist.'); 193 199 return FALSE; … … 259 265 $this->_plwalk($this->getPLArray($id)); 260 266 261 reset($this->flat); 262 $this->flat[key($this->flat)]['firstInList'] = true; 263 end($this->flat); 264 $this->flat[key($this->flat)]['lastInList'] = true; 265 reset($this->flat); 267 if (is_Array($this->flat)) { 268 reset($this->flat); 269 $this->flat[key($this->flat)]['firstInList'] = true; 270 end($this->flat); 271 $this->flat[key($this->flat)]['lastInList'] = true; 272 reset($this->flat); 266 273 267 return $this->flat; 274 return $this->flat; 275 } else { 276 return array(); 277 } 268 278 } 269 279 … … 280 290 $this->flat[$parent] = $this->Base->_getMetaInfo($this->Base->gb->_idFromGunid($sub['attrs']['id'])); 281 291 $this->flat[$parent]['attrs'] = $attrs; 292 $this->flat[$parent]['playlength'] = $sub['attrs']['playlength']; 282 293 } 283 294 if ($sub['elementname']===UI_PL_ELEM_FADEINFO) { … … 338 349 #print_r($r); 339 350 if (PEAR::isError($r)) { 340 if (UI_VERBOSE) print_r($r); 351 if (UI_VERBOSE === TRUE) print_r($r); 340 351 $this->Base->_retMsg('Changing fade information failed.'); 341 352 return FALSE; … … 349 360 #print_r($r); 350 361 if (PEAR::isError($r)) { 351 if (UI_VERBOSE) print_r($r); 362 if (UI_VERBOSE === TRUE) print_r($r); 351 362 $this->Base->_retMsg('Changing fade information failed.'); 352 363 return FALSE; … … 365 376 $r = $this->Base->gb->moveAudioClipInPlaylist($this->token, $id, $pos, $this->Base->sessid); 366 377 if (PEAR::isError($r)) { 367 if (UI_VERBOSE) print_r($r); 378 if (UI_VERBOSE === TRUE) print_r($r); 367 378 $this->Base->_retMsg('Cannot move item.'); 368 379 return FALSE; … … 383 394 $r = $this->Base->gb->moveAudioClipInPlaylist($this->token, $id, $pos, $this->Base->sessid); 384 395 if (PEAR::isError($r)) { 385 if (UI_VERBOSE) print_r($r); 396 if (UI_VERBOSE === TRUE) print_r($r); 385 396 $this->Base->_retMsg('Cannot move item.'); 386 397 return FALSE; … … 468 479 return $renderer->toArray(); 469 480 } 481 482 function setItemPlaylengthForm($id, $elemId, $mask) 483 { 484 if (isset($elemId)) { 485 $mask['act']['constant'] = 'PL.setItemPlaylength'; 486 $mask['elemId']['constant'] = $elemId; 487 $element = $this->getCurrElement($elemId); 488 $mask['playlength']['default'] = substr($element['playlength'], 0, 8); 489 $mask['duration']['constant'] = substr($element['duration'], 0, 8); 490 } else { 491 $mask['act']['constant'] = 'PL.addItem'; 492 $mask['id']['constant'] = $id; 493 $mask['playlength']['default'] = substr($this->Base->_getMDataValue($id, UI_MDATA_KEY_DURATION), 0, 8); 494 $mask['duration']['constant'] = $mask['playlength']['default']; 495 } 496 497 $form = new HTML_QuickForm('PL_setItemPlaylengthForm', UI_STANDARD_FORM_METHOD, UI_HANDLER); 498 $this->Base->_parseArr2Form($form, $mask); 499 $renderer =& new HTML_QuickForm_Renderer_Array(true, true); 500 $form->accept($renderer); 501 return $renderer->toArray(); 502 } 470 503 471 504 532 565 $r = $this->Base->gb->setMDataValue($id, $key, $this->Base->sessid, $val, $curr_langid); 533 566 if (PEAR::isError($r)) { 534 #print_r($r);567 if (UI_VERBOSE === TRUE) print_r($r); 534 567 $this->Base->_retMsg('Unable to set "$1" to value "$2".', $key, $val); 535 568 } -
trunk/livesupport/src/modules/htmlUI/var/templates/playlist/editor.tpl
r1912 r1917 36 36 <td {include file="playlist/actionhandler.tpl"}>{$i.title}</td> 37 37 <td {include file="playlist/actionhandler.tpl"} style="text-align: right"> 38 {assign var="_duration" value=$i. duration}{niceTime in=$_duration}38 {assign var="_duration" value=$i.playlength}{niceTime in=$_duration} 38 38 </td> 39 39 <td {include file="playlist/actionhandler.tpl"}>{$i.creator}</td> -
trunk/livesupport/src/modules/htmlUI/var/templates/playlist/actionhandler.tpl
r1637 r1917 1 1 style="cursor: pointer" 2 2 onClick="return contextmenu('{$i.attrs.id}', 3 4 {if $i.type|lower == 'webstream'} 5 'listen', '{$i.gunid}', 6 'PL.changeItemPlaylength', 7 {/if} 8 3 9 {if $i.type|lower == 'audioclip'} 4 'listen', '{$i.gunid}', '{$i.type}', 10 'listen', '{$i.gunid}', 11 'PL.changeItemPlaylength', 5 12 {/if} 13 6 14 'PL.removeItem' 7 15 )" -
trunk/livesupport/src/modules/htmlUI/var/templates/menu.tpl
r1821 r1917 21 21 <ul> 22 22 <li><a href="{$UI_BROWSER}?folderId={$START.fid}&act=addFileData">##Audioclip##</a></li> 23 {* <li><a href="{$UI_BROWSER}?folderId={$START.fid}&act=addWebstreamData">##Webstream##</a></li> *}23 <li><a href="{$UI_BROWSER}?folderId={$START.fid}&act=addWebstreamData">##Webstream##</a></li> 23 23 </ul> 24 24 </li> -
trunk/livesupport/src/modules/htmlUI/var/templates/popup/testStream.tpl
r1637 r1917 16 16 {tra str='Stream is wanted type <font color="green">$1</font>.' 1=$data.type.type} 17 17 18 {else} 18 {elseif $data.type.type} 18 18 {tra str='Stream has wrong content type <font color="red">$1</font>.' 1=$data.type.type} 19 {else} 20 ##No content type declared.## 19 21 {/if} 20 22 </div> -
trunk/livesupport/src/modules/htmlUI/var/templates/script/contextmenu.js.tpl
r1661 r1917 1 1 {literal} 2 2 <script type="text/javascript"> 3 3 // www.jjam.de - Kontextmenü mit JavaScript - Version 15.12.2002 3 3 4 // Browser detection 5 ie5 = (document.getElementById && document.all && document.styleSheets) ? 1 : 0; 6 nn6 = (document.getElementById && !document.all) ? 1 : 0; 4 // Browser detection 5 ie5 = (document.getElementById && document.all && document.styleSheets) ? 1 : 0; 6 nn6 = (document.getElementById && !document.all) ? 1 : 0; 7 8 document.write('<div id="contextmenucontainer"></div>'); 9 contextmenuStatus = 0; 10 document.onclick = hidecontextmenu; 11 12 13 function contextmenu(param) { 14 var contextmenuHeader = "<div class='contextmenu' id='contextmenu' style='position: absolute; top: -1000; left: 0; z-index: 100'>" + 15 "<ul>"; 16 var contextmenuFooter = "</ul></div>"; 17 var contextmenuHtml = ''; 18 19 var sp2 = " "; 20 var sp5 = sp2 + sp2 + " "; // Leerzeichen als Abstandshalter (flexibler und code-sparender als eine aufwendige Tabellenkonstruktion) ; 21 var oF = "onfocus = 'if (this.blur) this.blur()'"; // Um hässlichen Linkrahmen in einigen Browsern zu vermeiden; 22 var entry = new Array(); 23 //contextmenuStatus = 0; 24 25 for (var i = 1; i < contextmenu.arguments.length; ++i) { 26 switch (contextmenu.arguments[i]) { 27 {/literal} 28 case "PL.release": 29 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=PL.confirmRelease', 'PL.confirmRelease', 400, 50)\" "+oF+"> ##Close## </a></li>"; 30 break; 31 32 case "PL.addItem": 33 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=PL.addItem&id="+param+"')\" "+oF+"> ##Add to playlist## </a></li>"; 34 break; 35 36 case "PL.addStream": 37 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=PL.setItemPlaylengthForm&id="+param+"', 'PL.setStreamPlaylength', 400, 50)\" "+oF+"> ##Add to playlist## </a></li>"; 38 break; 39 40 case "PL.changeItemPlaylength": 41 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=PL.setItemPlaylengthForm&elemId="+param+"', 'PL.setItemPlaylength', 400, 50)\" "+oF+"> ##Change playlegth## </a></li>"; 42 break; 43 44 case "PL.removeItem": 45 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=PL.removeItem&id="+param+"')\" "+oF+"> ##Remove from playlist## </a></li>"; 46 break; 47 48 case "PL.activate": 49 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=PL.activate&id="+param+"')\" "+oF+"> ##Edit## </a></li>"; 50 break; 51 52 case "PL.create": 53 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=PL.create&id="+param+"')\" "+oF+"> ##Use to create playlist## </a></li>"; 54 break; 55 56 case "PL.changeFadeIn": 57 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=PL.changeTransition&type=fadeIn&id="+param+"', 'PL', '400', '150')\" "+oF+"> ##Change Fadein## </a></li>"; 58 break; 59 60 case "PL.changeTransition": 61 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=PL.changeTransition&type=transition&id="+param+"', 'PL', '400', '150')\" "+oF+"> ##Change Transition## </a></li>"; 62 break; 63 64 case "PL.changeFadeOut": 65 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=PL.changeTransition&type=fadeOut&id="+param+"', 'PL', '400', '150')\" "+oF+"> ##Change Fadeout## </a></li>"; 66 break; 67 68 case "SP.addItem": 69 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=SP.addItem&id="+param+"')\" "+oF+"> ##Add to ScratchPad## </a></li>"; 70 break; 71 72 case "SP.removeItem": 73 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=SP.removeItem&id="+param+"')\" "+oF+"> ##Remove from ScratchPad## </a></li>"; 74 break; 75 76 case "listen": 77 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_BROWSER}?popup[]=listen2Audio&id="+contextmenu.arguments[++i]+"')\" "+oF+"> ##Listen## </a></li>"; 78 break; 79 80 case "edit": 81 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='{$UI_BROWSER}?act=editItem&id="+param+"' "+oF+"> ##Edit## </a></li>"; 82 break; 83 84 case "delete": 85 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=deleteItem&id="+param+"', 'deleteItem', 400, 50)\" "+oF+"> ##Delete## </a></li>"; 86 break; 87 88 case "fileList": 89 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='{$UI_BROWSER}?act=fileList&id="+param+"' "+oF+"> ##List Folder## </a></li>"; 90 break; 91 92 case "SCHEDULER.addItem": 93 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=SCHEDULER.setScheduleAtTime&"+param+"'); popup('{$UI_BROWSER}?popup[]=SCHEDULER.addItem', 'Schedule', 420, 200)\" "+oF+"> ##Insert playlist here## </a></li>"; 94 break; 95 96 case "SCHEDULER.removeItem": 97 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=SCHEDULER.removeItem&"+param+"', 'Schedule', 400, 50)\" "+oF+"> ##Remove playlist## </a></li>"; 98 break; 99 100 case "SCHEDULER.addPL": 101 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=SCHEDULER.set&view=day&today=1');"+ 102 "hpopup('{$UI_HANDLER}?act=SCHEDULER.setScheduleAtTime&today=1&hour=0&minute=0');"+ 103 ""+ 104 "popup('{$UI_BROWSER}?popup[]=SCHEDULER.addItem&playlistId="+param+"', 'Schedule', 420, 200)\" "+oF+ 105 "> ##Schedule## </a></li>"; 106 break; 107 108 case "SUBJECTS.chgPasswd": 109 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='{$UI_BROWSER}?act=SUBJECTS.chgPasswd&"+param+"' "+oF+"> ##Change password## </a></li>"; 110 break; 111 112 case "SUBJECTS.manageGroupMember": 113 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='{$UI_BROWSER}?act=SUBJECTS.manageGroupMember&"+param+"' "+oF+"> ##Manage group members## </a></li>"; 114 break; 115 116 case "SUBJECTS.addSubj2Gr": 117 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='#' onClick=\"hpopup('{$UI_HANDLER}?act=SUBJECTS.addSubj2Gr&"+param+"')\" "+oF+"> ##Add to group## </a></li>"; 118 break; 119 120 case "SUBJECTS.removeSubjFromGr": 121 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='#' onClick=\"hpopup('{$UI_HANDLER}?act=SUBJECTS.removeSubjFromGr&"+param+"')\" "+oF+"> ##Remove from group## </a></li>"; 122 break; 123 124 case "SUBJECTS.removeSubj": 125 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=SUBJECTS.confirmRemoveSubj&"+param+"', 'confirmRemoveSubj', 400, 50)\" "+oF+"> ##Delete## </a></li>"; 126 break; 7 127 8 document.write('<div id="contextmenucontainer"></div>'); 9 contextmenuStatus = 0; 10 document.onclick = hidecontextmenu; 11 12 13 function contextmenu(param) { 14 var contextmenuHeader = "<div class='contextmenu' id='contextmenu' style='position: absolute; top: -1000; left: 0; z-index: 100'>" + 15 "<ul>"; 16 var contextmenuFooter = "</ul></div>"; 17 var contextmenuHtml = ''; 18 19 var sp2 = " "; 20 var sp5 = sp2 + sp2 + " "; // Leerzeichen als Abstandshalter (flexibler und code-sparender als eine aufwendige Tabellenkonstruktion) ; 21 var oF = "onfocus = 'if (this.blur) this.blur()'"; // Um hässlichen Linkrahmen in einigen Browsern zu vermeiden; 22 var entry = new Array(); 23 //contextmenuStatus = 0; 24 25 for (var i = 1; i < contextmenu.arguments.length; ++i) { 26 switch (contextmenu.arguments[i]) { 27 {/literal} 28 case "PL.release": 29 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=PL.confirmRelease', 'PL.confirmRelease', 400, 50)\" "+oF+"> ##Close## </a></li>"; 30 break; 31 32 case "PL.addItem": 33 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=PL.addItem&id="+param+"')\" "+oF+"> ##Add to playlist## </a></li>"; 34 break; 35 36 case "PL.removeItem": 37 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=PL.removeItem&id="+param+"')\" "+oF+"> ##Remove from playlist## </a></li>"; 38 break; 39 40 case "PL.activate": 41 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=PL.activate&id="+param+"')\" "+oF+"> ##Edit## </a></li>"; 42 break; 43 44 case "PL.create": 45 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=PL.create&id="+param+"')\" "+oF+"> ##Use to create playlist## </a></li>"; 46 break; 47 48 case "PL.changeFadeIn": 49 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=PL.changeTransition&type=fadeIn&id="+param+"', 'PL', '400', '150')\" "+oF+"> ##Change Fadein## </a></li>"; 50 break; 51 52 case "PL.changeTransition": 53 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=PL.changeTransition&type=transition&id="+param+"', 'PL', '400', '150')\" "+oF+"> ##Change Transition## </a></li>"; 54 break; 55 56 case "PL.changeFadeOut": 57 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=PL.changeTransition&type=fadeOut&id="+param+"', 'PL', '400', '150')\" "+oF+"> ##Change Fadeout## </a></li>"; 58 break; 59 60 case "SP.addItem": 61 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=SP.addItem&id="+param+"')\" "+oF+"> ##Add to ScratchPad## </a></li>"; 62 break; 63 64 case "SP.removeItem": 65 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=SP.removeItem&id="+param+"')\" "+oF+"> ##Remove from ScratchPad## </a></li>"; 66 break; 67 68 case "listen": 69 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_BROWSER}?popup[]=listen2AudioClip&id="+contextmenu.arguments[++i]+"')\" "+oF+"> ##Listen## </a></li>"; 70 break; 71 72 case "edit": 73 i++; 74 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='{$UI_BROWSER}?act=editItem&id="+param+"' "+oF+"> ##Edit## </a></li>"; 75 break; 76 77 case "delete": 78 i++; 79 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=deleteItem&id="+param+"', 'deleteItem', 400, 50)\" "+oF+"> ##Delete## </a></li>"; 80 break; 81 82 case "fileList": 83 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='{$UI_BROWSER}?act=fileList&id="+param+"' "+oF+"> ##List Folder## </a></li>"; 84 break; 85 86 case "SCHEDULER.addItem": 87 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=SCHEDULER.setScheduleAtTime&"+param+"'); popup('{$UI_BROWSER}?popup[]=SCHEDULER.addItem', 'Schedule', 420, 200)\" "+oF+"> ##Insert playlist here## </a></li>"; 88 break; 89 90 case "SCHEDULER.removeItem": 91 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=SCHEDULER.removeItem&"+param+"', 'Schedule', 400, 50)\" "+oF+"> ##Remove playlist## </a></li>"; 92 break; 93 94 case "SCHEDULER.addPL": 95 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: hpopup('{$UI_HANDLER}?act=SCHEDULER.set&view=day&today=1');"+ 96 "hpopup('{$UI_HANDLER}?act=SCHEDULER.setScheduleAtTime&today=1&hour=0&minute=0');"+ 97 ""+ 98 "popup('{$UI_BROWSER}?popup[]=SCHEDULER.addItem&playlistId="+param+"', 'Schedule', 420, 200)\" "+oF+ 99 "> ##Schedule## </a></li>"; 100 break; 101 102 case "SUBJECTS.chgPasswd": 103 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='{$UI_BROWSER}?act=SUBJECTS.chgPasswd&"+param+"' "+oF+"> ##Change password## </a></li>"; 104 break; 105 106 case "SUBJECTS.manageGroupMember": 107 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='{$UI_BROWSER}?act=SUBJECTS.manageGroupMember&"+param+"' "+oF+"> ##Manage group members## </a></li>"; 108 break; 109 110 case "SUBJECTS.addSubj2Gr": 111 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='#' onClick=\"hpopup('{$UI_HANDLER}?act=SUBJECTS.addSubj2Gr&"+param+"')\" "+oF+"> ##Add to group## </a></li>"; 112 break; 113 114 case "SUBJECTS.removeSubjFromGr": 115 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href='#' onClick=\"hpopup('{$UI_HANDLER}?act=SUBJECTS.removeSubjFromGr&"+param+"')\" "+oF+"> ##Remove from group## </a></li>"; 116 break; 117 118 case "SUBJECTS.removeSubj": 119 contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=SUBJECTS.confirmRemoveSubj&"+param+"', 'confirmRemoveSubj', 400, 50)\" "+oF+"> ##Delete## </a></li>"; 120 break; 121 122 {literal} 123 } 128 {literal} 124 129 } 125 document.getElementById('contextmenucontainer').innerHTML = contextmenuHeader + contextmenuHtml + contextmenuFooter;126 document.onclick = showcontextmenu;127 128 return false;129 130 } 130 131 function showcontextmenu(e) { 132 var contextmenuWidth = document.getElementById('contextmenu').clientWidth; 133 var contextmenuHeight = document.getElementById('contextmenu').clientHeight; 134 135 if (ie5) { 136 var clickX = event.clientX; 137 var clickY = event.clientY + document.body.scrollTop; 138 var winX = document.body.clientWidth; 139 var winY = document.body.clientHeight; 140 var scrollX = document.body.scrollLeft; 141 var scrollY = document.body.scrollTop; 142 } else { 143 var clickX = e.pageX; 144 var clickY = e.pageY; 145 var winX = window.innerWidth; 146 var winY = window.innerHeight; 147 var scrollX = window.scrollX; 148 var scrollY = window.scrollY; 149 } 131 document.getElementById('contextmenucontainer').innerHTML = contextmenuHeader + contextmenuHtml + contextmenuFooter; 132 document.onclick = showcontextmenu; 150 133 151 if (clickX + contextmenuWidth < winX) var xPos = clickX; 152 else var xPos = clickX - contextmenuWidth; 134 return false; 135 } 153 136 154 if (clickY + contextmenuHeight > winY + scrollY) var yPos = clickY - contextmenuHeight; 155 else var yPos = clickY; 137 function showcontextmenu(e) { 138 var contextmenuWidth = document.getElementById('contextmenu').clientWidth; 139 var contextmenuHeight = document.getElementById('contextmenu').clientHeight; 140 141 if (ie5) { 142 var clickX = event.clientX; 143 var clickY = event.clientY + document.body.scrollTop; 144 var winX = document.body.clientWidth; 145 var winY = document.body.clientHeight; 146 var scrollX = document.body.scrollLeft; 147 var scrollY = document.body.scrollTop; 148 } else { 149 var clickX = e.pageX; 150 var clickY = e.pageY; 151 var winX = window.innerWidth; 152 var winY = window.innerHeight; 153 var scrollX = window.scrollX; 154 var scrollY = window.scrollY; 155 } 156 157 if (clickX + contextmenuWidth < winX) var xPos = clickX; 158 else var xPos = clickX - contextmenuWidth; 156 159 157 if (yPos < scrollY) yPos = scrollY; 160 if (clickY + contextmenuHeight > winY + scrollY) var yPos = clickY - contextmenuHeight; 161 else var yPos = clickY; 158 162 163 if (yPos < scrollY) yPos = scrollY; 159 164 160 setTimeout("document.getElementById('contextmenu').style.left = "+xPos+"; document.getElementById('contextmenu').style.top = "+yPos+";", 10);161 contextmenuStatus = 1;162 document.onclick = hidecontextmenu;163 }164 165 166 setTimeout("document.getElementById('contextmenu').style.left = "+xPos+"; document.getElementById('contextmenu').style.top = "+yPos+";", 10); 167 contextmenuStatus = 1; 168 document.onclick = hidecontextmenu; 169 } 165 170 166 function hidecontextmenu(e) { 167 if (contextmenuStatus == 1) { 168 setTimeout("document.getElementById('contextmenu').style.top =- 250", 0); 169 contextmenuStatus = 0; 170 } 171 172 function hidecontextmenu(e) { 173 if (contextmenuStatus == 1) { 174 setTimeout("document.getElementById('contextmenu').style.top =- 250", 0); 175 contextmenuStatus = 0; 171 176 } 177 } 172 178 173 179 </script> -
trunk/livesupport/src/modules/htmlUI/var/templates/library/actionhandler.tpl
r1637 r1917 1 1 onClick="return contextmenu('{$i.id}' 2 2 , 'SP.addItem' 3 3 3 3 {if $i.type|lower == 'audioclip'} 4 , 'listen', '{$i.gunid}', '##audioclip##' 4 , 'listen', '{$i.gunid}' 5 5 6 {if $_PL_activeId} 6 7 , 'PL.addItem' 7 8 {else} 8 , 'PL.create' , '{$i.title|truncate:20|escape:'html'}'9 , 'PL.create' 8 9 {/if} 9 , 'edit', '##audioclip##' 10 , 'delete', '##audioclip##' 10 11 , 'edit' 12 , 'delete' 11 13 {/if} 12 14 13 15 {if $i.type|lower == 'webstream'} 16 , 'listen', '{$i.gunid}' 17 14 18 {if $_PL_activeId} 15 , 'PL.add Item'19 , 'PL.addStream' 15 19 {else} 16 , 'PL.create' , '{$i.title|truncate:20}'20 , 'PL.create' 16 20 {/if} 17 , 'edit', '##webstream##' 18 , 'delete', '##webstream##' 21 22 , 'edit' 23 , 'delete' 19 24 {/if} 20 25 28 33 , 'PL.release' 29 34 {else} 30 , 'SCHEDULER.addPL', 'PL.addItem', 'delete' 35 , 'SCHEDULER.addPL' 36 , 'PL.addItem' 37 , 'delete' 31 38 {/if} 32 39 {else} 33 , 'SCHEDULER.addPL', 'PL.activate' 34 , 'PL.create', '{$i.title|truncate:20}' 35 , 'delete', '##playlist##' 40 , 'SCHEDULER.addPL' 41 , 'PL.activate' 42 , 'PL.create' 43 , 'delete' 36 44 {/if} 37 45 {/if} -
trunk/livesupport/src/modules/htmlUI/var/templates/scratchpad/actionhandler.tpl
r1637 r1917 1 1 onClick="return contextmenu('{$i.id}' 2 2 , 'SP.removeItem' 3 3 3 3 {if $i.type|lower == 'audioclip'} 4 , 'listen', '{$i.gunid}', '##audioclip##' 4 , 'listen', '{$i.gunid}' 5 5 6 {if $_PL_activeId} 6 7 , 'PL.addItem' 7 8 {else} 8 , 'PL.create' , '{$i.title|truncate:20|escape:'html'}'9 , 'PL.create' 8 9 {/if} 9 , 'edit', '##audioclip##' 10 , 'delete', '##audioclip##' 10 11 , 'edit' 12 , 'delete' 11 13 {/if} 12 14 13 15 {if $i.type|lower == 'webstream'} 16 , 'listen', '{$i.gunid}' 17 14 18 {if $_PL_activeId} 15 , 'PL.addItem' 19 {if $i.duration == '00:00:00.000000'} 20 , 'PL.addStream' 21 {else} 22 , 'PL.addItem' 23 {/if} 16 24 {else} 17 , 'PL.create' , '{$i.title|truncate:20}'25 , 'PL.create' 17 25 {/if} 18 , 'edit', '##webstream##' 19 , 'delete', '##webstream##' 26 27 , 'edit' 28 , 'delete' 20 29 {/if} 21 30 28 37 , 'PL.release' 29 38 {elseif $PL->isAvailable($i.id) == true} 30 , 'SCHEDULER.addPL', 'PL.addItem', 'PL.activate', 'PL.delete' 39 , 'SCHEDULER.addPL' 40 , 'PL.addItem' 41 , 'PL.activate' 42 , 'PL.delete' 31 43 {/if} 32 44 {elseif $PL->isAvailable($i.id) == true} 33 , 'SCHEDULER.addPL', 'PL.activate' 34 , 'PL.create', '{$i.title|truncate:20}' 35 , 'delete', '##playlist##' 45 , 'SCHEDULER.addPL' 46 , 'PL.activate' 47 , 'PL.create' 48 , 'delete' 36 49 {/if} 37 50 {/if} -
trunk/livesupport/src/modules/htmlUI/var/html/ui_handler.php
r1910 r1917 181 181 182 182 case "PL.addItem": 183 if ($uiHandler->PLAYLIST->addItem($_REQUEST['id']) !== FALSE) 183 if ($uiHandler->PLAYLIST->addItem($_REQUEST['id'], $_REQUEST['playlength']) !== FALSE) 183 183 $uiHandler->SCRATCHPAD->addItem($_REQUEST['id']); 184 184 $uiHandler->PLAYLIST->setReload(); 185 185 break; 186 187 188 case "PL.setItemPlaylength": 189 $uiHandler->PLAYLIST->setItemPlaylength($_REQUEST['elemId'], $_REQUEST['playlength']); 190 $uiHandler->PLAYLIST->setReload(); 191 break; 186 192 187 193 case "PL.removeItem": 280 286 break; 281 287 282 default:288 case NULL: 282 288 if ($uiHandler->userid) { 283 289 $uiHandler->_retMsg('The uploaded filer is bigger than allowed in system settings. See "Help", chapter "Troubleshooting" for more information.'); 284 290 } 285 291 292 $uiHandler->redirUrl = UI_BROWSER; 293 if ($_REQUEST['is_popup']) $uiHandler->redirUrl = UI_BROWSER.'?popup[]=_reload_parent&popup[]=_close'; 294 break; 295 296 default: 297 $uiHandler->_retMsg(tra('Unknown method: $1', $_REQUEST['act'])); 286 298 $uiHandler->redirUrl = UI_BROWSER; 287 288 299 if ($_REQUEST['is_popup']) $uiHandler->redirUrl = UI_BROWSER.'?popup[]=_reload_parent&popup[]=_close'; 300 break; 289 301 } 290 302 -
trunk/livesupport/src/modules/htmlUI/var/html/ui_browser.php
r1910 r1917 101 101 $Smarty->display('popup/PLAYLIST.arrangeItems.tpl'); 102 102 break; 103 103 104 case "PL.setItemPlaylengthForm": 105 $Smarty->assign('dynform', $uiBrowser->PLAYLIST->setItemPlaylengthForm($_REQUEST['id'], $_REQUEST['elemId'], $ui_fmask['PL.setItemPlaylength'])); 106 $Smarty->display('popup/PLAYLIST.setItemPlaylength.tpl'); 107 break; 108 104 109 case "SCHEDULER.addItem": 105 110 $Smarty->display('popup/SCHEDULER.addItem.tpl'); 120 125 break; 121 126 122 case "listen2AudioClip": 123 $Smarty->assign('data', $uiBrowser->listen2AudioClip($_REQUEST['id'])); 124 $Smarty->display('popup/listen2AudioClip.tpl'); 127 case "listen2Audio": 128 $Smarty->assign('data', $uiBrowser->listen2Audio($_REQUEST['id'])); 129 $Smarty->display('popup/listen2Audio.tpl'); 125 130 break; 126 131 -
trunk/livesupport/src/modules/htmlUI/var/ui_conf.php
r1914 r1917 3 3 4 4 ## Warning/Error level 5 define('UI_DEBUG', TRUE);5 define('UI_DEBUG', FALSE); 5 5 define('UI_VERBOSE', FALSE); 6 6 define('UI_WARNING', TRUE); … … 112 112 113 113 ## LS stuff 114 require_once '../../storageServer/var/conf.php'; 114 require_once '../../../storageServer/var/conf.php'; 114 114 ## extent config 115 115 $config = array_merge($config, … … 123 123 'stream_types' => array( 124 124 'application/ogg', 125 'audio/mpeg' 125 'audio/mpeg', 126 'audio/x-mpegurl' 126 127 ), 127 128 'languages' => array( 145 146 require_once dirname(__FILE__).'/ui_search.class.php'; 146 147 require_once dirname(__FILE__).'/ui_browse.class.php'; 147 require_once '../../storageServer/var/GreenBox.php'; 148 require_once '../../../storageServer/var/GreenBox.php'; 147 148 require_once dirname(__FILE__).'/formmask/generic.inc.php'; 148 149 require_once dirname(__FILE__).'/ui_calendar.class.php'; -
trunk/livesupport/src/modules/htmlUI/var/ui_browser.class.php
r1821 r1917 433 433 } 434 434 435 function listen2Audio Clip($clipid)435 function listen2Audio($clipid) 435 435 { 436 #$pls = "[playlist]\n". 437 #$pls .= "File1=http://{$_SERVER['SERVER_NAME']}".$this->config['accessRawAudioUrl']."?sessid={$this->sessid}&id=$clipid\n"; 438 #$pls .= "Title1=Mein Titel\n"; 439 #$pls .= "NumberOfEntries=1\nVersion=2"; 440 441 #$m3u = "#EXTM3U\n"; 442 #$m3u .= "#EXTINF:111,Mein Titel\n"; 443 $m3u .= "http://{$_SERVER['SERVER_NAME']}".$this->config['accessRawAudioUrl']."?sessid={$this->sessid}&id=$clipid\n"; 444 436 $id = $this->gb->_idFromGunid($clipid); 437 $type = $this->gb->getFileType($id); 438 439 if (strtolower($type) === strtolower(UI_FILETYPE_AUDIOCLIP)) { 440 $m3u = "http://{$_SERVER['SERVER_NAME']}".$this->config['accessRawAudioUrl']."?sessid={$this->sessid}&id=$clipid\n"; 441 } else { 442 $m3u = $this->_getMDataValue($id, UI_MDATA_KEY_URL); 443 } 445 444 touch(UI_TESTSTREAM_MU3_TMP); 446 445 $handle = fopen(UI_TESTSTREAM_MU3_TMP, "w"); 447 446 fwrite($handle, $m3u); 448 fclose($handle); 447 fclose($handle); 448 447 } 449 448