Subversion Repositories mdb

Rev

Rev 28 | Rev 30 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 28 Rev 29
Line 364... Line 364...
364
	return '';
364
	return '';
365
}
365
}
366
 
366
 
367
define_function displayProgresBar(char sTimeA[], char sTimeB[])
367
define_function displayProgresBar(char sTimeA[], char sTimeB[])
368
{
368
{
369
stack_var integer secA;
369
stack_var double secA;
370
stack_var integer secB;
370
stack_var double secB;
371
stack_var integer pos;
371
stack_var integer pos;
372
stack_var integer hour;
372
stack_var integer hour;
373
stack_var integer min;
373
stack_var integer min;
374
stack_var integer sec;
374
stack_var integer sec;
375
 
375
 
376
	if (length_string(sTimeA) > 5)
376
	if (length_string(sTimeA) > 5)
377
	{
377
	{
378
		hour = atoi(left_string(sTimeA, 2));
378
		hour = atoi(left_string(sTimeA, 2));
379
		min = atoi(mid_string(sTimeA, 4, 2));
379
		min = atoi(mid_string(sTimeA, 4, 2));
380
		sec = atoi(mid_string(sTimeA, 7, 1));
380
		sec = atoi(mid_string(sTimeA, 7, 2));
381
		secA = hour * 3600 + min * 60 + sec;
381
		secA = type_cast(hour * 3600 + min * 60 + sec);
382
	}
382
	}
383
	else
383
	else
384
	{
384
	{
385
		min = atoi(mid_string(sTimeA, 1, 2));
385
		min = atoi(mid_string(sTimeA, 1, 2));
386
		sec = atoi(mid_string(sTimeA, 4, 1));
386
		sec = atoi(mid_string(sTimeA, 4, 2));
387
		secA = min * 60 + sec;
387
		secA = type_cast(min * 60 + sec);
388
	}
388
	}
389
 
389
 
390
	if (length_string(sTimeB) > 5)
390
	if (length_string(sTimeB) > 5)
391
	{
391
	{
392
		hour = atoi(left_string(sTimeB, 2));
392
		hour = atoi(left_string(sTimeB, 2));
393
		min = atoi(mid_string(sTimeB, 4, 2));
393
		min = atoi(mid_string(sTimeB, 4, 2));
394
		sec = atoi(mid_string(sTimeB, 7, 1));
394
		sec = atoi(mid_string(sTimeB, 7, 2));
395
		secB = hour * 3600 + min * 60 + sec;
395
		secB = type_cast(hour * 3600 + min * 60 + sec);
396
	}
396
	}
397
	else
397
	else
398
	{
398
	{
399
		min = atoi(mid_string(sTimeB, 1, 2));
399
		min = atoi(mid_string(sTimeB, 1, 2));
400
		sec = atoi(mid_string(sTimeB, 4, 1));
400
		sec = atoi(mid_string(sTimeB, 4, 2));
401
		secB = min * 60 + sec;
401
		secB = type_cast(min * 60 + sec);
402
	}
402
	}
403
 
403
 
404
	pos = type_cast(100.0 / type_cast(secB) * type_cast(secA));
404
	pos = type_cast(100.0 / secB * secA);
405
	send_level dvTPs, LVL_PROGRES, pos;
405
	send_level dvTPs, LVL_PROGRES, pos;
406
}
406
}
407
 
407
 
408
define_function setPopup(integer dir, char sPg[])
408
define_function setPopup(integer dir, char sPg[])
409
{
409
{
Line 655... Line 655...
655
		case TOK_GENRE:
655
		case TOK_GENRE:
656
			setPopup(DIR_OPEN, sPopupMenu);
656
			setPopup(DIR_OPEN, sPopupMenu);
657
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU1),'.',itoa(BTN_MENU1+MAX_LINES-1),',0,'";	// Clear all lines
657
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU1),'.',itoa(BTN_MENU1+MAX_LINES-1),',0,'";	// Clear all lines
658
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU1),',0,Move to queue and play'";
658
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU1),',0,Move to queue and play'";
659
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU2),',0,Add to queue'";
659
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU2),',0,Add to queue'";
-
 
660
 
-
 
661
			if (nPage != TOK_TITLE)
660
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU3),',0,Open folder'";
662
				send_command dvTPs, "'^TXT-',itoa(BTN_MENU3),',0,Open folder'";
661
		break;
663
		break;
662
 
664
 
663
		case TOK_PLAYLIST:
665
		case TOK_PLAYLIST:
664
			setPopup(DIR_OPEN, sPopupMenu);
666
			setPopup(DIR_OPEN, sPopupMenu);
665
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU1),'.',itoa(BTN_MENU1+MAX_LINES-1),',0,'";	// Clear all lines
667
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU1),'.',itoa(BTN_MENU1+MAX_LINES-1),',0,'";	// Clear all lines
666
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU1),',0,Move to queue and play'";
668
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU1),',0,Move to queue and play'";
667
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU2),',0,Add to queue'";
669
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU2),',0,Add to queue'";
668
 
670
 
669
			if (!nFolder)
671
			if (!nFolder)
-
 
672
			{
670
				send_command dvTPs, "'^TXT-',itoa(BTN_MENU3),',0,Show content'";
673
				send_command dvTPs, "'^TXT-',itoa(BTN_MENU3),',0,Show content'";
-
 
674
				send_command dvTPs, "'^TXT-',itoa(BTN_MENU4),',0,Delete playlist'";
-
 
675
			}
671
			else
676
			else
672
				send_command dvTPs, "'^TXT-',itoa(BTN_MENU3),',0,Delete playlist'";
677
				send_command dvTPs, "'^TXT-',itoa(BTN_MENU3),',0,Delete entry'";
673
		break;
678
		break;
674
 
679
 
675
		case TOK_QUEUE:
680
		case TOK_QUEUE:
676
			setPopup(DIR_OPEN, sPopupMenu);
681
			setPopup(DIR_OPEN, sPopupMenu);
677
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU1),'.',itoa(BTN_MENU1+MAX_LINES-1),',0,'";	// Clear all lines
682
			send_command dvTPs, "'^TXT-',itoa(BTN_MENU1),'.',itoa(BTN_MENU1+MAX_LINES-1),',0,'";	// Clear all lines
Line 698... Line 703...
698
		case TOK_PLAYLIST:	send_command dvTPs, "'^TXT-',itoa(TEXT_MENU_TITLE),',0,Playlist menu'";
703
		case TOK_PLAYLIST:	send_command dvTPs, "'^TXT-',itoa(TEXT_MENU_TITLE),',0,Playlist menu'";
699
		case TOK_SEARCH:	send_command dvTPs, "'^TXT-',itoa(TEXT_MENU_TITLE),',0,Search menu'";
704
		case TOK_SEARCH:	send_command dvTPs, "'^TXT-',itoa(TEXT_MENU_TITLE),',0,Search menu'";
700
	}
705
	}
701
}
706
}
702
 
707
 
-
 
708
define_function lineSelect(integer pl)
-
 
709
{
-
 
710
	nLastPressedLine = pl;
-
 
711
	askMenuList();
-
 
712
}
-
 
713
 
703
DEFINE_START
714
DEFINE_START
704
	nStart = 1;
715
	nStart = 1;
705
	nPage = TOK_NONE;
716
	nPage = TOK_NONE;
706
 
717
 
707
DEFINE_EVENT
718
DEFINE_EVENT
Line 824... Line 835...
824
				case BTN_SAVE:
835
				case BTN_SAVE:
825
					send_command dvTPs[pan], "'@PPN-',sPopupSelUser";
836
					send_command dvTPs[pan], "'@PPN-',sPopupSelUser";
826
					sInputUser = sActUser;
837
					sInputUser = sActUser;
827
					sInputPlaylist = '';
838
					sInputPlaylist = '';
828
					send_command dvTPs[pan], "'^TXT-',itoa(TEXT_INPUT_UNAME),',0,',sActUser";
839
					send_command dvTPs[pan], "'^TXT-',itoa(TEXT_INPUT_UNAME),',0,',sActUser";
829
					send_command dvTPs[pan], "'^TXT-',itoa(TEXT_INPUT_UNAME),',0,'";
840
					send_command dvTPs[pan], "'^TXT-',itoa(TEXT_INPUT_PLAYLIST),',0,'";
830
					send_command dvTPs[pan], "'@AKB-',sActPlaylist,';Enter name of playlist'";
841
					send_command dvTPs[pan], "'@AKB-',sActPlaylist,';Enter name of playlist'";
831
					nToDo = TODO_USER_SAVE_PLAYLIST;
842
					nToDo = TODO_USER_SAVE_PLAYLIST;
832
					nKeyboard[pan] = TEXT_INPUT_PLAYLIST;
843
					nKeyboard[pan] = TEXT_INPUT_PLAYLIST;
833
				break;
844
				break;
834
 
845
 
835
				case BTN_DELETE:
846
				case BTN_DELETE:
836
					send_command vdvMDB, "'DELETE:QUEUE:-1;'";
847
					send_command vdvMDB, "'DELETE:QUEUE:-1;'";
-
 
848
					nStart = 1;
-
 
849
					send_command vdvMDB, "'LIST:QUEUE:',itoa(nStart),':',itoa(MAX_LINES),';'";
837
				break;
850
				break;
838
 
851
 
839
				case BTN_SEARCH:
852
				case BTN_SEARCH:
840
					if (!nSearch)
853
					if (!nSearch)
841
					{
854
					{
Line 877... Line 890...
877
				case MENU_THUMBS_UP:
890
				case MENU_THUMBS_UP:
878
					if (nStart > MAX_LINES)
891
					if (nStart > MAX_LINES)
879
					{
892
					{
880
						nStart = nStart - MAX_LINES;
893
						nStart = nStart - MAX_LINES;
881
 
894
 
882
						if (nPage == TOK_TITLE || nPage == TOK_QUEUE || nPage == TOK_PLAYLIST)
895
						if (nPage == TOK_TITLE || nPage == TOK_QUEUE)
883
							send_command vdvMDB, "'LIST:',requestActualPage(),':',itoa(nStart),':',itoa(MAX_LINES),';'";
896
							send_command vdvMDB, "'LIST:',requestActualPage(),':',itoa(nStart),':',itoa(MAX_LINES),';'";
884
						else if (nPage == TOK_SEARCH)
897
						else if (nPage == TOK_SEARCH)
885
							send_command vdvMDB, "'SEARCH:',requestPage(nOldPage),':',EncodeURL(sSearchFor),':',itoa(nStart),':',itoa(MAX_LINES),';'";
898
							send_command vdvMDB, "'SEARCH:',requestPage(nOldPage),':',EncodeURL(sSearchFor),':',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
899
						else if (nPage == TOK_PLAYLIST)
-
 
900
						{
-
 
901
							if (!nFolder)
-
 
902
								send_command vdvMDB, "'LIST:',requestActualPage(),':',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
903
							else
-
 
904
								send_command vdvMDB, "'PLIST:',EncodeURL(sActUser),':',EncodeURL(sActPlaylist),':',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
905
						}
886
						else
906
						else
-
 
907
						{
-
 
908
							if (!nFolder)
887
							send_command vdvMDB, "'FOLDER:',requestActualPage(),':',itoa(nStart),':',itoa(MAX_LINES),';'";
909
								send_command vdvMDB, "'FOLDER:',requestActualPage(),':',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
910
							else
-
 
911
								send_command vdvMDB, "'LISTFOLDER:',requestActualPage(),':',EncodeURL(sActFolder),':',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
912
						}
888
					}
913
					}
889
				break;
914
				break;
890
 
915
 
891
				case MENU_THUMBS_DN:
916
				case MENU_THUMBS_DN:
892
					if (nTotal && (nStart+MAX_LINES) <= nTotal)
917
					if (nTotal && (nStart+MAX_LINES) <= nTotal)
893
					{
918
					{
894
						nStart = nStart + MAX_LINES;
919
						nStart = nStart + MAX_LINES;
895
 
920
 
896
						if (nPage == TOK_TITLE || nPage == TOK_QUEUE || nPage == TOK_PLAYLIST)
921
						if (nPage == TOK_TITLE || nPage == TOK_QUEUE)
897
							send_command vdvMDB, "'LIST:',requestActualPage(),':',itoa(nStart),':',itoa(MAX_LINES),';'";
922
							send_command vdvMDB, "'LIST:',requestActualPage(),':',itoa(nStart),':',itoa(MAX_LINES),';'";
898
						else if (nPage == TOK_SEARCH)
923
						else if (nPage == TOK_SEARCH)
899
							send_command vdvMDB, "'SEARCH:',requestPage(nOldPage),':',EncodeURL(sSearchFor),':',itoa(nStart),':',itoa(MAX_LINES),';'";
924
							send_command vdvMDB, "'SEARCH:',requestPage(nOldPage),':',EncodeURL(sSearchFor),':',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
925
						else if (nPage == TOK_PLAYLIST)
-
 
926
						{
-
 
927
							if (!nFolder)
-
 
928
								send_command vdvMDB, "'LIST:',requestActualPage(),':',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
929
							else
-
 
930
								send_command vdvMDB, "'PLIST:',EncodeURL(sActUser),':',EncodeURL(sActPlaylist),':',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
931
						}
900
						else
932
						else
-
 
933
						{
-
 
934
							if (!nFolder)
901
							send_command vdvMDB, "'FOLDER:',requestActualPage(),':',itoa(nStart),':',itoa(MAX_LINES),';'";
935
								send_command vdvMDB, "'FOLDER:',requestActualPage(),':',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
936
							else
-
 
937
								send_command vdvMDB, "'LISTFOLDER:',requestActualPage(),':',EncodeURL(sActFolder),':',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
938
						}
902
					}
939
					}
903
				break;
940
				break;
904
 
941
 
905
				case MENU_BACK:
942
				case MENU_BACK:
906
				case BTN_RETURN:
943
				case BTN_RETURN:
Line 940... Line 977...
940
		{
977
		{
941
			switch(BUTTON.INPUT.CHANNEL)
978
			switch(BUTTON.INPUT.CHANNEL)
942
			{
979
			{
943
				case BTN_LINE1_PIC:
980
				case BTN_LINE1_PIC:
944
				case BTN_LINE1_LINE:
981
				case BTN_LINE1_LINE:
945
					nLastPressedLine = 1;
-
 
946
					askMenuList();
982
					lineSelect(1);
947
				break;
983
				break;
948
 
984
 
949
				case BTN_LINE2_PIC:
985
				case BTN_LINE2_PIC:
950
				case BTN_LINE2_LINE:
986
				case BTN_LINE2_LINE:
951
					nLastPressedLine = 2;
-
 
952
					askMenuList();
987
					lineSelect(2);
953
				break;
988
				break;
954
 
989
 
955
				case BTN_LINE3_PIC:
990
				case BTN_LINE3_PIC:
956
				case BTN_LINE3_LINE:
991
				case BTN_LINE3_LINE:
957
					nLastPressedLine = 3;
-
 
958
					askMenuList();
992
					lineSelect(3);
959
				break;
993
				break;
960
 
994
 
961
				case BTN_LINE4_PIC:
995
				case BTN_LINE4_PIC:
962
				case BTN_LINE4_LINE:
996
				case BTN_LINE4_LINE:
963
					nLastPressedLine = 4;
-
 
964
					askMenuList();
997
					lineSelect(4);
965
				break;
998
				break;
966
 
999
 
967
				case BTN_LINE5_PIC:
1000
				case BTN_LINE5_PIC:
968
				case BTN_LINE5_LINE:
1001
				case BTN_LINE5_LINE:
969
					nLastPressedLine = 5;
-
 
970
					askMenuList();
1002
					lineSelect(5);
971
				break;
1003
				break;
972
 
1004
 
973
				case BTN_LINE6_PIC:
1005
				case BTN_LINE6_PIC:
974
				case BTN_LINE6_LINE:
1006
				case BTN_LINE6_LINE:
975
					nLastPressedLine = 6;
-
 
976
					askMenuList();
1007
					lineSelect(6);
977
				break;
1008
				break;
978
 
1009
 
979
				case BTN_LINE7_PIC:
1010
				case BTN_LINE7_PIC:
980
				case BTN_LINE7_LINE:
1011
				case BTN_LINE7_LINE:
981
					nLastPressedLine = 7;
-
 
982
					askMenuList();
1012
					lineSelect(7);
983
				break;
1013
				break;
984
 
1014
 
985
				case BTN_LINE8_PIC:
1015
				case BTN_LINE8_PIC:
986
				case BTN_LINE8_LINE:
1016
				case BTN_LINE8_LINE:
987
					nLastPressedLine = 8;
-
 
988
					askMenuList();
1017
					lineSelect(8);
989
				break;
1018
				break;
990
 
1019
 
991
				case BTN_LINE9_PIC:
1020
				case BTN_LINE9_PIC:
992
				case BTN_LINE9_LINE:
1021
				case BTN_LINE9_LINE:
993
					nLastPressedLine = 9;
-
 
994
					askMenuList();
1022
					lineSelect(9);
995
				break;
1023
				break;
996
 
1024
 
997
				case BTN_LINE10_PIC:
1025
				case BTN_LINE10_PIC:
998
				case BTN_LINE10_LINE:
1026
				case BTN_LINE10_LINE:
999
					nLastPressedLine = 10;
-
 
1000
					askMenuList();
1027
					lineSelect(10);
1001
				break;
1028
				break;
1002
			}
1029
			}
1003
		}
1030
		}
1004
	}
1031
	}
1005
 
1032
 
Line 1062... Line 1089...
1062
						nKeyboard[pan] = TEXT_INPUT_PLAYLIST;
1089
						nKeyboard[pan] = TEXT_INPUT_PLAYLIST;
1063
					}
1090
					}
1064
				break;
1091
				break;
1065
				
1092
				
1066
				case BTN_MENU3:
1093
				case BTN_MENU3:
1067
					if (nPage != TOK_PLAYLIST && nPage != TOK_QUEUE && nPage != TOK_SEARCH)	// Open folder
1094
					if (nPage != TOK_TITLE && nPage != TOK_PLAYLIST && nPage != TOK_QUEUE && nPage != TOK_SEARCH)	// Open folder
1068
					{
1095
					{
1069
						sActFolder = stSong[nLastPressedLine].sTitle;	// Get name of folder
1096
						sActFolder = stSong[nLastPressedLine].sTitle;	// Get name of folder
1070
						nFolder = true;									// Set marker for folder
1097
						nFolder = true;									// Set marker for folder
1071
						nOldStart = nStart;								// Save current position
1098
						nOldStart = nStart;								// Save current position
1072
						nStart = 1;										// Reset start position
1099
						nStart = 1;										// Reset start position
1073
						send_command vdvMDB, "'LISTFOLDER:',requestActualPage(),':',stSong[nLastPressedLine].sTitle,':1:',itoa(MAX_LINES),';'";
1100
						send_command vdvMDB, "'LISTFOLDER:',requestActualPage(),':',stSong[nLastPressedLine].sTitle,':1:',itoa(MAX_LINES),';'";
1074
					}
1101
					}
1075
					else if (nPage == TOK_PLAYLIST)
1102
					else if (nPage == TOK_PLAYLIST)
1076
					{
1103
					{
-
 
1104
						if (!nFolder)
-
 
1105
						{
-
 
1106
							sActUser = sInputUser;
-
 
1107
							sActPlaylist = stSong[nLastPressedLine].sTitle;
1077
						nOldStart = nStart;
1108
							nOldStart = nStart;
1078
						nFolder = 1;
1109
							nFolder = 1;
-
 
1110
							nStart = 1;
-
 
1111
							send_command vdvMDB, "'PLIST:',EncodeURL(sActUser),':',EncodeURL(stSong[nLastPressedLine].sTitle),':',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
1112
						}
-
 
1113
						else		// Delete entry
-
 
1114
						{
-
 
1115
							send_command vdvMDB, "'DELETE:PTITLE:',itoa(stSong[nLastPressedLine].nID),';'";
1079
						nStart = 1;
1116
							nStart = 1;
1080
						send_command vdvMDB, "'PLIST:',EncodeURL(sActUser),':',EncodeURL(stSong[nLastPressedLine].sTitle),':',itoa(nStart),':',itoa(MAX_LINES),';'";
1117
							send_command vdvMDB, "'PLIST:',EncodeURL(sActUser),':',EncodeURL(stSong[nLastPressedLine].sTitle),':',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
1118
						}
1081
					}
1119
					}
1082
					else if (nPage == TOK_QUEUE)
1120
					else if (nPage == TOK_QUEUE)
-
 
1121
					{
1083
						send_command vdvMDB, "'DELETE:QUEUE:',itoa(stSong[nLastPressedLine].nID),';'";
1122
						send_command vdvMDB, "'DELETE:QUEUE:',itoa(stSong[nLastPressedLine].nID),';'";
-
 
1123
						nStart = 1;
-
 
1124
						send_command vdvMDB, "'LIST:QUEUE:',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
1125
					}
-
 
1126
				break;
-
 
1127
 
-
 
1128
				case BTN_MENU4:
-
 
1129
					if (nPage == TOK_PLAYLIST && !nFolder)
-
 
1130
					{
-
 
1131
						send_command vdvMDB, "'DELETE:PLAYLIST:',itoa(stSong[nLastPressedLine].nID),';'";
-
 
1132
						nStart = 1;
-
 
1133
						send_command vdvMDB, "'LIST:PLAYLIST:',itoa(nStart),':',itoa(MAX_LINES),';'";
-
 
1134
					}
1084
				break;
1135
				break;
1085
			}
1136
			}
1086
 
1137
 
1087
			if (nPage != TOK_QUEUE)
1138
			if (nPage != TOK_QUEUE)
1088
				setPopup(DIR_OPEN, sPopupAudio);
1139
				setPopup(DIR_OPEN, sPopupAudio);
Line 1123... Line 1174...
1123
					switch(nToDo)
1174
					switch(nToDo)
1124
					{
1175
					{
1125
						case TODO_USER_SELECT:
1176
						case TODO_USER_SELECT:
1126
							sActUser = sInputUser;
1177
							sActUser = sInputUser;
1127
							send_command vdvMDB, "'USER:',EncodeURL(sInputUser),':;'";
1178
							send_command vdvMDB, "'USER:',EncodeURL(sInputUser),':;'";
-
 
1179
							nStart = 1;
-
 
1180
							nPage = TOK_PLAYLIST;
-
 
1181
							nFolder = 0;
-
 
1182
							nSearch = 0;
-
 
1183
							send_command vdvMDB, "'LIST:PLAYLIST:',itoa(nStart),':',itoa(MAX_LINES),';'";
1128
						break;
1184
						break;
1129
 
1185
 
1130
						case TODO_USER_LIST_PLAYLIST:
1186
						case TODO_USER_LIST_PLAYLIST:
1131
							sActPlaylist = sInputPlaylist;
1187
							sActPlaylist = sInputPlaylist;
1132
							nOldStart = nStart;
1188
							nOldStart = nStart;
Line 1143... Line 1199...
1143
								send_command vdvMDB, "'SAVEQUEUE:',EncodeURL(sActUser),':',EncodeURL(sActPlaylist),';'";
1199
								send_command vdvMDB, "'SAVEQUEUE:',EncodeURL(sActUser),':',EncodeURL(sActPlaylist),';'";
1144
						break;
1200
						break;
1145
 
1201
 
1146
						case TODO_USER_PLAYLIST_QUEUE:
1202
						case TODO_USER_PLAYLIST_QUEUE:
1147
							sActUser = sInputUser;
1203
							sActUser = sInputUser;
1148
							sActPlaylist = sInputPlaylist;
1204
							sActPlaylist = stSong[nLastPressedLine].sTitle;
1149
 
1205
 
1150
							if (length_string(sActUser) && length_string(sActPlaylist))
1206
							if (length_string(sActUser) && length_string(sActPlaylist))
1151
								send_command vdvMDB, "'ADD:PLAYLIST:',EncodeURL(sActPlaylist),';'";
1207
								send_command vdvMDB, "'ADD:PLAYLIST:',EncodeURL(stSong[nLastPressedLine].sTitle),';'";
1152
						break;
1208
						break;
1153
					}
1209
					}
1154
 
1210
 
1155
					nToDo = 0;
1211
					nToDo = 0;
1156
				break;
1212
				break;
Line 1279... Line 1335...
1279
					}
1335
					}
1280
 
1336
 
1281
					active(find_string(buf, 'PLAYLIST:', 1)):
1337
					active(find_string(buf, 'PLAYLIST:', 1)):
1282
					{
1338
					{
1283
					stack_var integer nLine;
1339
					stack_var integer nLine;
-
 
1340
					stack_var integer id;
1284
					stack_var integer anz;
1341
					stack_var integer anz;
1285
					stack_var integer i;
1342
					stack_var integer i;
1286
 
1343
 
1287
						remove_string(buf, 'PLAYLIST:', 1);
1344
						remove_string(buf, 'PLAYLIST:', 1);
1288
						anz = strtok(buf, ':');
1345
						anz = strtok(buf, ':');
Line 1294... Line 1351...
1294
								case 1: 
1351
								case 1: 
1295
									nLine = atoi(getStrTok(i));
1352
									nLine = atoi(getStrTok(i));
1296
									clearPageLine(nLine);
1353
									clearPageLine(nLine);
1297
								break;
1354
								break;
1298
 
1355
 
-
 
1356
								case 2: stSong[nLine].nID = atoi(getStrTok(i));
1299
								case 2: sActUser = DecodeURL(getStrTok(i));
1357
								case 3: sActUser = DecodeURL(getStrTok(i));
1300
								case 3: stSong[nLine].sTitle = DecodeURL(getStrTok(i));
1358
								case 4: stSong[nLine].sTitle = DecodeURL(getStrTok(i));
1301
							}
1359
							}
1302
						}
1360
						}
1303
 
1361
 
1304
						if (nLine == 1)
1362
						if (nLine == 1)
1305
						{
1363
						{
Line 1429... Line 1487...
1429
					active(find_string(buf, 'TOTAL:', 1)):
1487
					active(find_string(buf, 'TOTAL:', 1)):
1430
					{
1488
					{
1431
						remove_string(buf, 'TOTAL:', 1);
1489
						remove_string(buf, 'TOTAL:', 1);
1432
						nTotal = atoi(buf);
1490
						nTotal = atoi(buf);
1433
						displayPageInfo(nStart, nTotal);
1491
						displayPageInfo(nStart, nTotal);
-
 
1492
 
-
 
1493
						if (nTotal == 0)
-
 
1494
							clearPage();
1434
					}
1495
					}
1435
 
1496
 
1436
					active(find_string(buf, 'PAGE:', 1)):
1497
					active(find_string(buf, 'PAGE:', 1)):
1437
					{
1498
					{
1438
						remove_string(buf, 'PAGE:', 1);
1499
						remove_string(buf, 'PAGE:', 1);