diff --git a/kratom b/kratom
index c291bb5..6f8460e 100755
Binary files a/kratom and b/kratom differ
diff --git a/kratom.db b/kratom.db
old mode 100644
new mode 100755
diff --git a/kratom.pb b/kratom.pb
old mode 100644
new mode 100755
index d28ea06..9c6cee6
--- a/kratom.pb
+++ b/kratom.pb
@@ -5,22 +5,9 @@
UseSQLiteDatabase()
XIncludeFile "kratomfrm1.pbf"
XIncludeFile "splash.pbf"
+XIncludeFile "pocketbase.pb"
Declare updatelist() ; declare forward procedure
-; A little positioning work
-
-desktop = ExamineDesktops()
-screenWidth = DesktopWidth(0)
-screenHeight = DesktopHeight(0)
-
-; Define the window dimensions
-windowWidth = 1140
-windowHeight = 630
-
-; Calculate the center position
-xPos = (screenWidth - windowWidth) / 2
-yPos = (screenHeight - windowHeight) / 2
-
Opensplash();xPos,yPos)
; init code
@@ -107,7 +94,7 @@ Repeat
Until Event = #PB_Event_CloseWindow ; Quit on any window close
; IDE Options = PureBasic 6.12 LTS (Linux - x64)
-; CursorPosition = 23
+; CursorPosition = 7
; Folding = -
; EnableXP
; DPIAware
diff --git a/kratom.png b/kratom.png
old mode 100644
new mode 100755
diff --git a/kratom.xcf b/kratom.xcf
old mode 100644
new mode 100755
diff --git a/kratomfrm1.pbf b/kratomfrm1.pbf
old mode 100644
new mode 100755
diff --git a/kratomprj.pbp b/kratomprj.pbp
old mode 100644
new mode 100755
index 864ef65..df41b97
--- a/kratomprj.pbp
+++ b/kratomprj.pbp
@@ -7,20 +7,20 @@
diff --git a/pocketbase.pb b/pocketbase.pb
new file mode 100755
index 0000000..ce29e91
--- /dev/null
+++ b/pocketbase.pb
@@ -0,0 +1,88 @@
+; Pocketbase support written from scratch
+
+; Login
+
+url.s = "https://pb.penguinpost.net/api/admins/auth-with-password"
+
+; note this is a post with a small bit of json
+
+;{
+; "identity": "yourloginemail",
+; "password": "yoursupersecretpassword"
+;}
+
+ If CreateJSON(0)
+ login = SetJSONObject(JSONValue(0))
+ SetJSONString(AddJSONMember(login, "identity"), "offal@pngpst.net")
+ SetJSONString(AddJSONMember(login, "password"), "Perl1isgod!")
+ Debug ComposeJSON(0, #PB_JSON_PrettyPrint)
+ EndIf
+
+ NewMap Header$()
+ Header$("Content-Type") = "application/json"
+ Header$("User-Agent") = "Mozilla/5.0 (X11; Linux x86_64; rv:132.0) Gecko/20100101 Firefox/132.0"
+
+ HttpRequest = HTTPRequest(#PB_HTTP_Post, url, ComposeJSON(0) , 0, Header$())
+ If HttpRequest
+ Debug "StatusCode: " + HTTPInfo(HTTPRequest, #PB_HTTP_StatusCode)
+ Debug "Response: " + HTTPInfo(HTTPRequest, #PB_HTTP_Response)
+
+ ; Now we need to get the token
+
+ ; CreateJSON(1)
+
+ ;ParseJSON(1,HTTPInfo(HTTPRequest, #PB_HTTP_Response))
+ json$ = HTTPInfo(HTTPRequest, #PB_HTTP_Response)
+
+ If ParseJSON(1, json$) ; returns garbage without the PB ascii there not sure why
+ ObjectValue = JSONValue(1)
+
+ If ExamineJSONMembers(ObjectValue)
+ While NextJSONMember(ObjectValue)
+
+ Debug "Key: " + JSONMemberKey(ObjectValue)
+
+ MemberValue = JSONMemberValue(ObjectValue)
+
+
+ ; Now extract the actual value based on its type
+ Select JSONType(MemberValue)
+ Case #PB_JSON_String
+ Debug "Value (String): " + GetJSONString(MemberValue)
+
+
+ Case #PB_JSON_Number
+ Debug "Value (Number): " + StrD(GetJSONDouble(MemberValue))
+
+
+ Case #PB_JSON_Boolean
+ Debug "Value (Boolean): " + Bool(GetJSONBoolean(MemberValue))
+
+
+ Case #PB_JSON_Object
+ Debug "Value (Object): (nested object)"
+ ; You could further examine this nested object if needed.
+
+
+ Case #PB_JSON_Array
+ Debug "Value (Array): (nested array)"
+ ; Handle array values if needed.
+
+
+ Default
+ Debug "Value (Unknown type)"
+
+ EndSelect
+ Wend
+ EndIf
+
+Else
+ Debug JSONErrorMessage()
+EndIf
+EndIf
+; IDE Options = PureBasic 6.12 LTS (Linux - x64)
+; CursorPosition = 43
+; FirstLine = 33
+; Folding = -
+; EnableXP
+; DPIAware
\ No newline at end of file
diff --git a/splash.pbf b/splash.pbf
old mode 100644
new mode 100755