From 817eee7d3e512cf869d1a270dfe58df37746e0ff Mon Sep 17 00:00:00 2001 From: "kham.vilaythong" Date: Sat, 4 Apr 2026 22:58:19 +1100 Subject: [PATCH] put in new version --- API/FamilyTreeAPI/appsettings.json | 4 ++-- document_Install.docx | Bin 6097 -> 10840 bytes 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/API/FamilyTreeAPI/appsettings.json b/API/FamilyTreeAPI/appsettings.json index d54339f..4282426 100644 --- a/API/FamilyTreeAPI/appsettings.json +++ b/API/FamilyTreeAPI/appsettings.json @@ -2,8 +2,8 @@ "AppSettings": { "Secret": "Nepean Blue Mountain Super Secret SIGN AND VERIFY JWT TOKENS, BEARER TOKEN USE WHEN CALLING THIS API.", - "SQLConnectionString": "host=localhost;port=5432;database=FamilyTreeDB;username=postgres;password=Positive~1;", - "SQLConnectionString_o": "host=192.168.1.123;port=5432;database=FamilyTreeDB;username=postgres;password=Positive~1;", + "SQLConnectionString_o": "host=localhost;port=5432;database=FamilyTreeDB;username=postgres;password=Positive~1;", + "SQLConnectionString": "host=192.168.1.102;port=5432;database=FamilyTreeDB;username=postgres;password=Positive~1;", "ImageFolder": "c:\\temp\\Family", "ImportFolder": "c:\\temp" diff --git a/document_Install.docx b/document_Install.docx index 3c1fc81409e4e816ea318711361f64522fa804c6..83b7976b75880ccee8fea842f1d8c9e65a53cbed 100644 GIT binary patch delta 9847 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