| 874 | } |
| 875 | |
| 876 | void serverbrowseralternativeviews(int shiftdirection) |
| 877 | { |
| 878 | if(searchlan == 2) return; |
| 879 | const char *ckeys = getalias("serverbrowseraltviews"); |
| 880 | if(!ckeys) return; |
| 881 | const char *sep = " \t\n\r"; |
| 882 | char *keys = newstring(ckeys), *b, *k = strtok_r(keys, sep, &b); |
| 883 | vector<int> cats; |
| 884 | cats.add(0); |
| 885 | while(k) |
| 886 | { |
| 887 | loopv(favcats) if(!strcmp(favcats[i], k)) cats.add(i + 1); |
| 888 | k = strtok_r(NULL, sep, &b); |
| 889 | } |
| 890 | delete[] keys; |
| 891 | if(cats.length()) |
| 892 | { |
| 893 | loopv(cats) |
| 894 | { |
| 895 | if(cats[i] == showonlyfavourites) { showonlyfavourites = cats[(i + shiftdirection + cats.length()) % cats.length()]; return; } |
| 896 | } |
| 897 | } |
| 898 | showonlyfavourites = 0; |
| 899 | } |
| 900 | |
| 901 | vector<const char *> favcattags; |
| 902 | |