Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
MBetterc
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Mbetter
MBetterc
Commits
6d3020e3
Commit
6d3020e3
authored
Mar 25, 2026
by
Your Name
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update to r29
parent
f2058d85
Changes
10
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
412 additions
and
483 deletions
+412
-483
build.py
build.py
+1
-1
main.py
main.py
+1
-1
__init__.py
mbetterclient/__init__.py
+1
-1
settings.py
mbetterclient/config/settings.py
+2
-2
games_thread.py
mbetterclient/core/games_thread.py
+293
-433
player.py
mbetterclient/qt_player/player.py
+17
-1
app.py
mbetterclient/web_dashboard/app.py
+1
-1
MbetterClient-10.0.22-linux-x86_64-README.txt
packages/MbetterClient-10.0.22-linux-x86_64-README.txt
+0
-43
MbetterClient-10.0.22-linux-x86_64.tar.gz
packages/MbetterClient-10.0.22-linux-x86_64.tar.gz
+0
-0
test_extract_match_updated.py
test_extract_match_updated.py
+96
-0
No files found.
build.py
View file @
6d3020e3
...
...
@@ -14,7 +14,7 @@ from typing import List, Dict, Any
# Build configuration
BUILD_CONFIG
=
{
'app_name'
:
'MbetterClient'
,
'app_version'
:
'10.0.2
3
'
,
'app_version'
:
'10.0.2
9
'
,
'description'
:
'Cross-platform multimedia client application'
,
'author'
:
'MBetter Team'
,
'entry_point'
:
'main.py'
,
...
...
main.py
View file @
6d3020e3
...
...
@@ -217,7 +217,7 @@ Examples:
parser
.
add_argument
(
'--version'
,
action
=
'version'
,
version
=
'MbetterClient 10.0.2
3
'
version
=
'MbetterClient 10.0.2
9
'
)
# Timer options
...
...
mbetterclient/__init__.py
View file @
6d3020e3
...
...
@@ -4,7 +4,7 @@ MbetterClient - Cross-platform multimedia client application
A multi-threaded application with video playback, web dashboard, and REST API integration.
"""
__version__
=
"10.0.2
3
"
__version__
=
"10.0.2
9
"
__author__
=
"MBetter Project"
__email__
=
"dev@mbetter.net"
__description__
=
"Cross-platform multimedia client with video overlay and web dashboard"
...
...
mbetterclient/config/settings.py
View file @
6d3020e3
...
...
@@ -262,7 +262,7 @@ class ApiConfig:
# Request settings
verify_ssl
:
bool
=
True
user_agent
:
str
=
"MbetterClient/10.0r2
3
"
user_agent
:
str
=
"MbetterClient/10.0r2
9
"
max_response_size_mb
:
int
=
100
# Additional API client settings
...
...
@@ -403,7 +403,7 @@ class AppSettings:
timer
:
TimerConfig
=
field
(
default_factory
=
TimerConfig
)
# Application settings
version
:
str
=
"10.0.2
3
"
version
:
str
=
"10.0.2
9
"
debug_mode
:
bool
=
False
dev_message
:
bool
=
False
# Enable debug mode showing only message bus messages
debug_messages
:
bool
=
False
# Show all messages passing through the message bus on screen
...
...
mbetterclient/core/games_thread.py
View file @
6d3020e3
This diff is collapsed.
Click to expand it.
mbetterclient/qt_player/player.py
View file @
6d3020e3
...
...
@@ -5179,9 +5179,25 @@ class QtVideoPlayer(QObject):
"""
try
:
from
..database.models
import
GameConfigModel
from
..database.manager
import
DatabaseManager
import
json
from
pathlib
import
Path
from
..config.settings
import
get_user_data_dir
session
=
self
.
db_manager
.
get_session
()
# Try to get db_manager, create one if not available
db_manager
=
getattr
(
self
,
'db_manager'
,
None
)
if
not
db_manager
:
logger
.
debug
(
"No db_manager available, creating one temporarily"
)
db_path
=
get_user_data_dir
()
/
"mbetterclient.db"
db_manager
=
DatabaseManager
(
str
(
db_path
))
if
not
db_manager
.
initialize
():
logger
.
warning
(
"Failed to initialize temporary database manager"
)
# Return default based on outcome type
if
outcome
in
[
'UNDER'
,
'OVER'
]:
return
"match_video.html"
return
"results.html"
session
=
db_manager
.
get_session
()
try
:
# Get outcome template assignments from config
assignments_config
=
session
.
query
(
GameConfigModel
)
.
filter_by
(
...
...
mbetterclient/web_dashboard/app.py
View file @
6d3020e3
...
...
@@ -230,7 +230,7 @@ class WebDashboard(ThreadedComponent):
def
inject_globals
():
return
{
'app_name'
:
'MbetterClient'
,
'app_version'
:
'10.0.2
3
'
,
'app_version'
:
'10.0.2
9
'
,
'current_time'
:
time
.
time
(),
}
...
...
packages/MbetterClient-10.0.22-linux-x86_64-README.txt
deleted
100644 → 0
View file @
f2058d85
# MbetterClient v10.0.22
Cross-platform multimedia client application
## Installation
1. Extract this package to your desired location
2. Run the executable file
3. The application will create necessary configuration files on first run
## System Requirements
- **Operating System**: Linux 6.12.15-amd64
- **Architecture**: x86_64
- **Memory**: 512 MB RAM minimum, 1 GB recommended
- **Disk Space**: 100 MB free space
## Configuration
The application stores its configuration and database in:
- **Windows**: `%APPDATA%\MbetterClient`
- **macOS**: `~/Library/Application Support/MbetterClient`
- **Linux**: `~/.config/MbetterClient`
## Web Interface
By default, the web interface is available at: http://localhost:5001
Default login credentials:
- Username: admin
- Password: admin
**Please change the default password after first login.**
## Support
For support and documentation, please visit: https://git.nexlab.net/mbetter/mbetterc
## Version Information
- Version: 10.0.22
- Build Date: sissy
- Platform: Linux-6.12.15-amd64-x86_64-with-glibc2.42
packages/MbetterClient-10.0.22-linux-x86_64.tar.gz
deleted
100644 → 0
View file @
f2058d85
File deleted
test_extract_match_updated.py
0 → 100644
View file @
6d3020e3
#!/usr/bin/env python3
"""
Test script for the updated extract_match function with uopayin and mpayin parameters.
"""
import
sys
import
os
# Add the project root to the Python path
sys
.
path
.
insert
(
0
,
os
.
path
.
dirname
(
os
.
path
.
abspath
(
__file__
)))
from
mbetterclient.core.games_thread
import
extract_match
def
test_extract_match_updated
():
"""Test the updated extract_match function with separate uopayin and mpayin parameters."""
# Test data
balance
=
-
50.0
# Negative balance (over-redistribution)
uopayin
=
100.0
# UNDER + OVER bets total
mpayin
=
200.0
# All other bets total
match
=
1
cap
=
70.0
# 70% redistribution cap
payouts
=
{
"UNDER"
:
80.0
,
"OVER"
:
90.0
,
"RESULTS"
:
{
"KO1"
:
[
"WIN1"
,
150.0
],
"WIN1"
:
[
"WIN1"
,
180.0
]
}
}
odds
=
{
"UNDER"
:
2.0
,
"OVER"
:
1.8
,
"KO1"
:
3.0
,
"WIN1"
:
2.5
}
print
(
"Testing updated extract_match function..."
)
print
(
f
"Parameters: balance={balance}, uopayin={uopayin}, mpayin={mpayin}, match={match}, cap={cap}"
)
print
(
f
"Payouts: {payouts}"
)
print
(
f
"Odds: {odds}"
)
try
:
# Call the function
extract_match
(
balance
,
uopayin
,
mpayin
,
match
,
cap
,
payouts
,
odds
)
print
(
"✅ Function executed successfully!"
)
return
True
except
Exception
as
e
:
print
(
f
"❌ Function failed: {e}"
)
import
traceback
traceback
.
print_exc
()
return
False
def
test_parameter_validation
():
"""Test that the function properly handles the new parameters."""
# Test with zero values
balance
=
0.0
uopayin
=
0.0
mpayin
=
0.0
match
=
1
cap
=
50.0
payouts
=
{
"UNDER"
:
0.0
,
"OVER"
:
0.0
,
"RESULTS"
:
{}
}
odds
=
{
"UNDER"
:
1.0
,
"OVER"
:
1.0
}
print
(
"
\n
Testing with zero values..."
)
try
:
extract_match
(
balance
,
uopayin
,
mpayin
,
match
,
cap
,
payouts
,
odds
)
print
(
"✅ Zero values test passed!"
)
return
True
except
Exception
as
e
:
print
(
f
"❌ Zero values test failed: {e}"
)
return
False
if
__name__
==
"__main__"
:
print
(
"="
*
60
)
print
(
"TESTING UPDATED extract_match FUNCTION"
)
print
(
"="
*
60
)
success1
=
test_extract_match_updated
()
success2
=
test_parameter_validation
()
print
(
"
\n
"
+
"="
*
60
)
if
success1
and
success2
:
print
(
"🎉 ALL TESTS PASSED!"
)
sys
.
exit
(
0
)
else
:
print
(
"💥 SOME TESTS FAILED!"
)
sys
.
exit
(
1
)
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment