medicafe 0.251030.0__tar.gz → 0.251030.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of medicafe might be problematic. Click here for more details.

Files changed (87) hide show
  1. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot.bat +53 -2
  2. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/__init__.py +1 -1
  3. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/__init__.py +1 -1
  4. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_Gmail.py +11 -0
  5. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/__init__.py +1 -1
  6. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/webapp.html +9 -0
  7. {medicafe-0.251030.0 → medicafe-0.251030.2}/PKG-INFO +1 -1
  8. {medicafe-0.251030.0 → medicafe-0.251030.2}/medicafe.egg-info/PKG-INFO +1 -1
  9. {medicafe-0.251030.0 → medicafe-0.251030.2}/setup.py +1 -1
  10. {medicafe-0.251030.0 → medicafe-0.251030.2}/LICENSE +0 -0
  11. {medicafe-0.251030.0 → medicafe-0.251030.2}/MANIFEST.in +0 -0
  12. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot.py +0 -0
  13. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot_Charges.py +0 -0
  14. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot_Crosswalk_Library.py +0 -0
  15. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot_Crosswalk_Utils.py +0 -0
  16. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot_Notepad_Utils.py +0 -0
  17. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot_Post.py +0 -0
  18. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot_Preprocessor.py +0 -0
  19. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot_Preprocessor_lib.py +0 -0
  20. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot_UI.py +0 -0
  21. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot_dataformat_library.py +0 -0
  22. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot_debug.bat +0 -0
  23. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot_docx_decoder.py +0 -0
  24. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/MediBot_smart_import.py +0 -0
  25. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/clear_cache.bat +0 -0
  26. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/config_editor.bat +0 -0
  27. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/config_editor.py +0 -0
  28. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/config_editor_helpers.py +0 -0
  29. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/crash_diagnostic.bat +0 -0
  30. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/f_drive_diagnostic.bat +0 -0
  31. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/full_debug_suite.bat +0 -0
  32. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/get_medicafe_version.py +0 -0
  33. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/process_csvs.bat +0 -0
  34. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/update_json.py +0 -0
  35. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediBot/update_medicafe.py +0 -0
  36. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/MediLink_ConfigLoader.py +0 -0
  37. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/__main__.py +0 -0
  38. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/api_core.py +0 -0
  39. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/api_factory.py +0 -0
  40. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/api_utils.py +0 -0
  41. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/core_utils.py +0 -0
  42. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/deductible_utils.py +0 -0
  43. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/error_reporter.py +0 -0
  44. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/graphql_utils.py +0 -0
  45. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/logging_config.py +0 -0
  46. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/logging_demo.py +0 -0
  47. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/migration_helpers.py +0 -0
  48. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/smart_import.py +0 -0
  49. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediCafe/submission_index.py +0 -0
  50. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/InsuranceTypeService.py +0 -0
  51. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_837p_cob_library.py +0 -0
  52. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_837p_encoder.py +0 -0
  53. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_837p_encoder_library.py +0 -0
  54. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_837p_utilities.py +0 -0
  55. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_API_Generator.py +0 -0
  56. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_Azure.py +0 -0
  57. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_Charges.py +0 -0
  58. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_ClaimStatus.py +0 -0
  59. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_DataMgmt.py +0 -0
  60. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_Decoder.py +0 -0
  61. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_Deductible.py +0 -0
  62. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_Deductible_Validator.py +0 -0
  63. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_Display_Utils.py +0 -0
  64. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_Down.py +0 -0
  65. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_Mailer.py +0 -0
  66. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_Parser.py +0 -0
  67. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_PatientProcessor.py +0 -0
  68. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_Scan.py +0 -0
  69. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_Scheduler.py +0 -0
  70. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_UI.py +0 -0
  71. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_Up.py +0 -0
  72. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_insurance_utils.py +0 -0
  73. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_main.py +0 -0
  74. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/MediLink_smart_import.py +0 -0
  75. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/Soumit_api.py +0 -0
  76. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/gmail_http_utils.py +0 -0
  77. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/gmail_oauth_utils.py +0 -0
  78. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/openssl.cnf +0 -0
  79. {medicafe-0.251030.0 → medicafe-0.251030.2}/MediLink/test.py +0 -0
  80. {medicafe-0.251030.0 → medicafe-0.251030.2}/README.md +0 -0
  81. {medicafe-0.251030.0 → medicafe-0.251030.2}/medicafe.egg-info/SOURCES.txt +0 -0
  82. {medicafe-0.251030.0 → medicafe-0.251030.2}/medicafe.egg-info/dependency_links.txt +0 -0
  83. {medicafe-0.251030.0 → medicafe-0.251030.2}/medicafe.egg-info/entry_points.txt +0 -0
  84. {medicafe-0.251030.0 → medicafe-0.251030.2}/medicafe.egg-info/not-zip-safe +0 -0
  85. {medicafe-0.251030.0 → medicafe-0.251030.2}/medicafe.egg-info/requires.txt +0 -0
  86. {medicafe-0.251030.0 → medicafe-0.251030.2}/medicafe.egg-info/top_level.txt +0 -0
  87. {medicafe-0.251030.0 → medicafe-0.251030.2}/setup.cfg +0 -0
@@ -733,7 +733,8 @@ echo 5. Send TEST error report (email)
733
733
  echo 6. Forced MediCafe version rollback
734
734
  echo 7. Process CSV Files
735
735
  echo 8. Edit Config File (JSON Editor)
736
- echo 9. Back to Main Menu
736
+ echo 9. Force Gmail re-auth (clear token)
737
+ echo 10. Back to Main Menu
737
738
  echo.
738
739
  set /p tchoice=Enter your choice:
739
740
  if "%tchoice%"=="1" goto open_latest_log
@@ -744,7 +745,8 @@ if "%tchoice%"=="5" goto send_test_error_report
744
745
  if "%tchoice%"=="6" goto forced_version_rollback
745
746
  if "%tchoice%"=="7" goto process_csvs
746
747
  if "%tchoice%"=="8" goto config_editor
747
- if "%tchoice%"=="9" goto main_menu
748
+ if "%tchoice%"=="9" goto force_gmail_reauth
749
+ if "%tchoice%"=="10" goto main_menu
748
750
  echo Invalid choice. Please try again.
749
751
  pause
750
752
  goto troubleshooting_menu
@@ -762,6 +764,55 @@ echo No log files found in %local_storage_path%.
762
764
  pause
763
765
  goto troubleshooting_menu
764
766
 
767
+ ::: Force Gmail re-auth by clearing cached OAuth token
768
+ :force_gmail_reauth
769
+ cls
770
+ echo ========================================
771
+ echo Force Gmail Re-Authorization
772
+ echo ========================================
773
+ echo.
774
+ echo This will remove the cached Gmail OAuth token file (token.json).
775
+ echo The next Gmail action will open a browser to re-authorize.
776
+ echo.
777
+ set "_ws=%~dp0.."
778
+ set "_token_ml=%_ws%\MediLink\token.json"
779
+ set "_token_root=%_ws%\token.json"
780
+
781
+ set "_cleared=0"
782
+ if exist "%_token_ml%" (
783
+ del /f /q "%_token_ml%" >nul 2>&1
784
+ if not exist "%_token_ml%" (
785
+ echo [OK] Removed %_token_ml%
786
+ set "_cleared=1"
787
+ ) else (
788
+ echo [WARN] Could not remove %_token_ml%
789
+ )
790
+ )
791
+
792
+ if exist "%_token_root%" (
793
+ del /f /q "%_token_root%" >nul 2>&1
794
+ if not exist "%_token_root%" (
795
+ echo [OK] Removed %_token_root%
796
+ set "_cleared=1"
797
+ ) else (
798
+ echo [WARN] Could not remove %_token_root%
799
+ )
800
+ )
801
+
802
+ if "%_cleared%"=="1" (
803
+ echo.
804
+ echo Gmail token cache cleared. Next Gmail action will prompt re-authorization.
805
+ ) else (
806
+ echo.
807
+ echo No Gmail token cache found to remove.
808
+ )
809
+ set "_ws="
810
+ set "_token_ml="
811
+ set "_token_root="
812
+ set "_cleared="
813
+ pause >nul
814
+ goto troubleshooting_menu
815
+
765
816
  ::: Open WinSCP Logs (download/upload)
766
817
  :open_winscp_logs
767
818
  echo Looking for WinSCP logs in %local_storage_path%...
@@ -19,7 +19,7 @@ Smart Import Integration:
19
19
  medibot_main = get_components('medibot_main')
20
20
  """
21
21
 
22
- __version__ = "0.251030.0"
22
+ __version__ = "0.251030.2"
23
23
  __author__ = "Daniel Vidaud"
24
24
  __email__ = "daniel@personalizedtransformation.com"
25
25
 
@@ -27,7 +27,7 @@ Smart Import System:
27
27
  api_suite = get_api_access()
28
28
  """
29
29
 
30
- __version__ = "0.251030.0"
30
+ __version__ = "0.251030.2"
31
31
  __author__ = "Daniel Vidaud"
32
32
  __email__ = "daniel@personalizedtransformation.com"
33
33
 
@@ -468,6 +468,17 @@ def initiate_link_retrieval(config):
468
468
  log("Opening GAS web app: {}".format(url_get))
469
469
  except Exception:
470
470
  pass
471
+ # Preflight probe to surface HTTP status/redirects before opening the browser
472
+ try:
473
+ probe_url = "https://script.google.com/macros/s/{}/exec".format(dep_id)
474
+ try:
475
+ resp = requests.get(probe_url, allow_redirects=False, timeout=8)
476
+ loc = resp.headers.get('Location')
477
+ log("Preflight probe: status={} location={}".format(resp.status_code, loc))
478
+ except Exception as probe_err:
479
+ log("Preflight probe failed: {}".format(probe_err))
480
+ except Exception:
481
+ pass
471
482
  open_browser_with_executable(url_get)
472
483
  log("Preparing POST call.")
473
484
  url = "https://script.google.com/macros/s/{}/exec".format(dep_id)
@@ -22,7 +22,7 @@ Smart Import Integration:
22
22
  datamgmt = get_components('medilink_datamgmt')
23
23
  """
24
24
 
25
- __version__ = "0.251030.0"
25
+ __version__ = "0.251030.2"
26
26
  __author__ = "Daniel Vidaud"
27
27
  __email__ = "daniel@personalizedtransformation.com"
28
28
 
@@ -173,6 +173,9 @@
173
173
  <span>⏳</span> Loading DOCX results...
174
174
  </div>
175
175
 
176
+ <div style="text-align:center; margin-top: 10px;">
177
+ <a id="diagLink" href="#" target="_blank" style="font-size: 0.9em; color: var(--espresso-dark); text-decoration: underline;">Open diagnostics</a>
178
+ </div>
176
179
 
177
180
  </main>
178
181
  <script>
@@ -184,6 +187,12 @@
184
187
  } catch (e) {
185
188
  console.log("Document ready, initializing flows...");
186
189
  }
190
+ try {
191
+ var base = window.location.origin + window.location.pathname;
192
+ var diagUrl = base + '?diag=1';
193
+ var a = document.getElementById('diagLink');
194
+ if (a) { a.href = diagUrl; }
195
+ } catch (e) {}
187
196
  // initializeEmailListFlow();
188
197
  initializeDocxEmailListFlow();
189
198
  });
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: medicafe
3
- Version: 0.251030.0
3
+ Version: 0.251030.2
4
4
  Summary: MediCafe
5
5
  Home-page: https://github.com/katanada2/MediCafe
6
6
  Author: Daniel Vidaud
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: medicafe
3
- Version: 0.251030.0
3
+ Version: 0.251030.2
4
4
  Summary: MediCafe
5
5
  Home-page: https://github.com/katanada2/MediCafe
6
6
  Author: Daniel Vidaud
@@ -54,7 +54,7 @@ if long_description_text is None:
54
54
 
55
55
  setup(
56
56
  name='medicafe',
57
- version="0.251030.0",
57
+ version="0.251030.2",
58
58
  description='MediCafe',
59
59
  long_description=long_description_text,
60
60
  long_description_content_type='text/markdown',
File without changes
File without changes
File without changes
File without changes