| 667 | } |
| 668 | |
| 669 | function sortSelect(elem) { |
| 670 | |
| 671 | var tmpAry = []; |
| 672 | // Retain selected value before sorting |
| 673 | var selectedValue = elem[elem.selectedIndex].value; |
| 674 | // Grab all existing entries |
| 675 | for (var i = 0; i < elem.options.length; i++) tmpAry.push(elem.options[i]); |
| 676 | // Sort array by text attribute |
| 677 | tmpAry.sort(function (a, b) { return (a.text < b.text) ? -1 : 1; }); |
| 678 | // Wipe out existing elements |
| 679 | while (elem.options.length > 0) elem.options[0] = null; |
| 680 | // Restore sorted elements |
| 681 | var newSelectedIndex = 0; |
| 682 | for (var i = 0; i < tmpAry.length; i++) { |
| 683 | elem.options[i] = tmpAry[i]; |
| 684 | if (elem.options[i].value == selectedValue) newSelectedIndex = i; |
| 685 | } |
| 686 | elem.selectedIndex = newSelectedIndex; // Set new selected index after sorting |
| 687 | return; |
| 688 | } |
| 689 | |
| 690 | |
| 691 | function switchChannelStatus(xepg) { |