@@ -74,7 +74,9 @@ $Get(@..#Storage@("settings","settingsUIReadOnly"), 0)
7474
7575ClassMethod FavoriteNamespaces () As %String
7676{
77- quit $get (@..#Storage@(" settings" , " user" , $username , " favNamespaces" )," " )
77+ set favNamespaces = []
78+ do ..GetFavoriteNamespaces (.favNamespaces ,[])
79+ return favNamespaces
7880}
7981
8082/// Returns the current (or previous) value of the flag.
@@ -2841,19 +2843,8 @@ ClassMethod SetConfiguredRemote(url) As %String
28412843 quit output
28422844}
28432845
2844- ClassMethod ConfigureFavoriteNamespaces (username As %String , favNamespaces As %String )
2846+ ClassMethod ConfigureFavoriteNamespaces (username As %String , newNamespaces As %String )
28452847{
2846- set newNamespaces = [].%FromJSON (favNamespaces )
2847- set namespaces = ..GetContexts (1 )
2848-
2849- set iterator = namespaces .%GetIterator ()
2850- while iterator .%GetNext (.key , .value ) {
2851- new $Namespace
2852- set $Namespace = value
2853- kill @..#Storage@(" settings" , " user" , $username , " favNamespaces" )
2854- set @..#Storage@(" settings" , " user" , $username , " favNamespaces" ) = favNamespaces
2855- }
2856-
28572848 // Delete all the GIT favorite links for the user
28582849 set iterator = newNamespaces .%GetIterator ()
28592850 while iterator .%GetNext (.key , .value ) {
@@ -2882,4 +2873,20 @@ ClassMethod ConfigureFavoriteNamespaces(username As %String, favNamespaces As %S
28822873 }
28832874}
28842875
2876+ ClassMethod GetFavoriteNamespaces (ByRef favNamespaces As %DynamicArray , ByRef nonFavNamespaces As %DynamicArray ) {
2877+ set allNamespaces = ..GetContexts (1 )
2878+ set iterator = allNamespaces .%GetIterator ()
2879+
2880+ while iterator .%GetNext (.key , .value ) {
2881+ set sql = " select * from %SYS_Portal.Users where username='" _$username _" ' and page='Git: " _value _" '"
2882+ set statement = ##class (%SQL.Statement ).%New ()
2883+ set res = ##class (%SQL.Statement ).%ExecDirect (statement ,sql )
2884+ if (res .%Next ()) {
2885+ do favNamespaces .%Push (value )
2886+ } else {
2887+ do nonFavNamespaces .%Push (value )
2888+ }
2889+ }
2890+ }
2891+
28852892}
0 commit comments