Commit graph

148 commits

Author SHA1 Message Date
Kumi
83a23fc66e
feat(build): optimize output with minification and compression
Switched to 'production' mode in webpack to enable optimizations. Integrated 'css-minimizer-webpack-plugin' and 'terser-webpack-plugin' for CSS and JS minification, respectively. Updated 'mini-css-extract-plugin' and added various dev dependencies to support new build processes. Adjusted output filenames and resolved dependencies to latest versions.

These changes reduce the bundle size and improve load times, enhancing overall performance.
2024-09-04 08:07:58 +02:00
Kumi
035da04bf8
chore: optimize CSS imports and PurgeCSS config
Switched to non-minified Bootstrap CSS for improved readability during development. Updated Webpack MiniCssExtractPlugin filename pattern to handle multiple CSS outputs more gracefully. Enhanced PurgeCSSPlugin configuration by incorporating JS paths and limiting removal to specific Bootstrap classes to avoid issues with dynamic class usage.
2024-09-04 08:03:45 +02:00
Kumi
ab4e1ad044
Merge remote-tracking branch 'upstream/main' 2024-08-30 10:23:27 +02:00
Kumi
7a8b1f21cf
refactor: move HTML to template file
Separated HTML content from index.php into templates/index.php for improved organization and maintainability. This change helps to keep business logic and presentation code separate, making the codebase easier to navigate and modify.
2024-08-30 10:14:56 +02:00
Kumi
aa9cdf8a8a
feat(ui): add custom behavior to fiat buttons
Enhanced the fiat currency buttons to include event listeners. When a button is clicked, it now updates the select box value and triggers the appropriate conversion function (XMR to Fiat or Fiat to XMR). The browser's address bar is also updated to reflect the selected currency. This improves the user experience by making currency selection more intuitive and dynamic.
2024-08-30 09:38:34 +02:00
Kumi
0f891ba6ea
refactor: streamline language file loading
Simplified the logic for loading language files by consolidating into a single loop. Now, the base English file and potential browser language files are loaded in sequence, ensuring a more efficient and clearer process. Removed redundant checks and code for language alias handling.
2024-08-30 09:18:56 +02:00
Kumi
38586826e2
feat(language): improve language detection and file loading
Simplify and enhance language detection and file loading mechanism:
- Parse primary language from browser settings more accurately.
- Remove redundant scanning of language files.
- Load default English language file as a base.
- Add support for region-specific language files if available.
- Remove unused language strings from various translation files.

These changes enhance the robustness and efficiency of language handling, ensuring better support for user language preferences.
2024-08-30 09:16:07 +02:00
Kumi
25f6bb423e
feat: improve language recognition and alias handling
Updated browser language detection to handle full locale strings and
mapped various Chinese variants to simplified or traditional Chinese.
Renamed language files for consistency with the new alias system.

This improves support for a wider array of language settings, ensuring
users receive content in their preferred language variant when possible.
2024-08-30 08:28:20 +02:00
Luke
289da3d30b
Add files via upload 2024-08-29 15:12:58 +02:00
Luke
1a3832a343
rtl support 2024-08-29 12:59:38 +02:00
Kumi
d18fcd803c
fix(config): update default GitHub URL to new repository
Updated the default GitHub URL in the configuration to point to the new repository at git.private.coffee. Ensures users are directed to the correct project location for up-to-date resources and issue tracking.
2024-08-28 15:21:36 +02:00
Kumi
90f6f6ce3e
feat: auto-generate coingecko.json on first run
Added logic to check for the existence of 'coingecko.json' and generate it by executing 'coingecko.php' if it doesn't exist. This ensures that the necessary data file is available on first run, preventing potential errors or missing data.
2024-08-28 15:20:33 +02:00
Kumi
57a7bca599
docs: update currency conversion URLs
Updated the currency conversion URLs to the new `monerooo.private.coffee` site. This change ensures users are directed to the current and actively maintained service. Updated examples maintain consistency and improve user experience.
2024-08-28 15:09:49 +02:00
Kumi
fa78a41944
docs: extensively update and reorganize README
Expanded README with detailed sections including usage, features, installation, configuration, and contribution guidelines. Enhanced documentation provides clarity on converting XMR to/from fiat, office application integrations, and new project enhancements. This makes the project more accessible for users and contributors.
2024-08-28 12:31:41 +02:00
Kumi
a0978f4f04
fix(lang): make GitHub URL dynamic in Polish translation
Replaced the hardcoded GitHub URL with a dynamic variable in the Polish translation file. This change improves maintainability by ensuring the URL is consistent and easier to update globally.
2024-08-28 09:44:56 +02:00
Kumi
87e1d90c38
feat: localize content to Czech, Greek, Persian, and Dutch
Localized various strings and metadata in the application to Czech, Greek, Persian, and Dutch languages. Updated translations for currency names, descriptions, and web elements to improve user experience for non-English speakers.
2024-08-28 09:42:30 +02:00
Kumi
dc55109d0d
fix: update exchange rate refresh interval to 1 minute
Updated the exchange rate refresh interval from every 5 seconds to approximately once per minute in Czech, Persian, and Polish language files.
2024-08-28 09:22:23 +02:00
Kumi
d981649d2d
Merge remote-tracking branch 'upstream/main' 2024-08-28 09:18:16 +02:00
Luke
d378f3eead
Update custom.css 2024-08-27 10:57:26 +02:00
Luke
bbf00f1651
Update custom.css 2024-08-27 10:27:13 +02:00
Luke
aac024d0d1
Update index.php 2024-08-26 16:08:34 +02:00
Luke
39cf9f728a
Added Farsi 2024-08-26 15:30:42 +02:00
Luke
d360b1ea71
Update index.php 2024-08-25 10:57:46 +02:00
Luke
5a007aaeed
Czech added 2024-08-25 10:54:01 +02:00
Luke
8a255709b8
Merge pull request #7 from Chall-T/polish-translation
Polish translation
2024-08-24 18:15:32 +02:00
Chall-T
9adecc95a4 urls correction 2024-08-24 18:13:41 +02:00
Chall-T
f78d28304e correction 2024-08-24 14:59:01 +02:00
Chall-T
00321b448c polish translation 2024-08-24 14:57:18 +02:00
Luke
e155d17df7
Swedish Krona Fix
Spelling error/issue#6
2024-08-20 22:04:52 +02:00
Kumi
fdebb16a85
fix: remove inline script and improve noscript message
Refactored inline exchangeRates script to main.js for better practice and maintainability. Enhanced the noscript warning message's readability by replacing paragraph tags with line breaks, ensuring clearer instructions for users without JavaScript.
2024-08-10 16:49:33 +02:00
Kumi
227d56a2bd
feat: enhance accessibility and UI feedback
Added a noscript alert message for users with JavaScript disabled, informing them about the limitations and manual controls available. Improved UI spacing with an additional margin in the conversion button section. Adjusted CSS padding for better visual alignment. Expanded Webpack safelist to include alert classes for proper styling.
2024-08-10 16:43:57 +02:00
Kumi
77c41c08c2
fix(js): hide conversion buttons if JavaScript enabled
Removed event listeners on conversion buttons and instead
hide them when JavaScript is enabled. This aims to improve
the user experience by preventing redundant UI interactions
that are handled dynamically.
2024-08-10 16:34:42 +02:00
Kumi
e97805d379
feat: add bidirectional XMR to fiat conversion
Introduced bidirectional conversion functionality for XMR to fiat calculations. Added form elements and event listeners to handle user inputs and conversion direction. Enhanced URL and metadata processing to be dynamic based on protocol. Updated UI with conversion buttons for a better user experience. Safelisted new CSS classes in webpack configuration.
2024-08-10 16:23:52 +02:00
Kumi
5747f73c68
refactor(index.php): move config setup to top of the file
Relocated the configuration setup to the top of index.php to improve code clarity and maintainability. This ensures configuration settings are initialized before any other operations, reducing potential for unexpected behaviors and making the code easier to follow.

No functional changes introduced.
2024-08-09 16:03:30 +02:00
Kumi
49be7374b1
feat: add dynamic GitHub URL support in configuration
Enhanced configuration by introducing a dynamic GitHub URL. This change ensures the GitHub link in all language files is consistently updated based on the configuration, increasing maintainability and consistency across translations.
2024-08-09 16:01:37 +02:00
Kumi
bc4761ac46
feat: Add preferred currencies ordering support
Enhanced the configuration and display logic to allow specifying preferred currencies, which are now ordered at the top of the list. This improves user experience by prioritizing commonly used currencies.

This also eliminates duplicate entries for the currently selected currency in the drop-down.
2024-08-09 15:03:44 +02:00
Kumi
bd29ffd43c
feat: add custom footer links to configuration
Introduced a new 'footer_links' configuration option allowing users to specify custom links to display in the footer. Each link includes 'text' and 'url'. This enhances the flexibility of the footer content, making it adaptable to various use cases.

Updated the index.php to dynamically generate these footer links if they are set in the configuration, ensuring they are rendered appropriately along with existing links.
2024-08-09 12:05:51 +02:00
Kumi
04cadac205
fix: increase precision of fiat conversion result
Extended the decimal precision of the converted XMR value from 8 to 12 places. This ensures more accurate representation of conversion rates, especially critical for high-precision financial calculations.
2024-08-09 08:33:06 +02:00
Kumi
acb18fd17e
fix: standardize decimal places for cryptocurrency conversion
Unified the decimal places to 8 for all cryptocurrency conversions in
fiatConvert function. This simplifies the logic and ensures consistent
precision across all supported cryptocurrencies.
2024-08-09 08:31:15 +02:00
Kumi
a1ccf0b43b
feat: fetch exchange rates immediately on startup
Start fetching exchange rates immediately upon initialization, ensuring the most current data is available from the outset. This prevents potential inaccuracies during initial use if rates are only fetched after the interval delay.
2024-08-09 08:12:58 +02:00
Kumi
31cadc232b
feat: add support for additional cryptocurrencies
Added translations for new currencies including Bitcoin Cash, Binance Coin, EOS.IO, Ripple, Stellar Lumens, Chainlink, Polkadot, Yearn.Finance, Georgian Lari, and Special Drawing Rights across multiple languages. This enhances the platform's comprehensive support for various cryptocurrencies, making it more accessible and informative for international users.
2024-08-09 07:59:26 +02:00
Kumi
fae1336444
feat: refactor input handling and copy button functionality
Refactored event listeners for XMR and fiat input fields, consolidating common logic and improving maintainability. Introduced explicit copy button IDs and enhanced their functionality by moving inline click handlers to addEventListener. These changes streamline form control interactions and ensure consistent behavior across different user inputs.

Additionally, removed redundant onchange handlers from the PHP file to simplify code and mitigate potential conflicts.
2024-08-08 16:34:03 +02:00
Kumi
5f0a0abff9
chore: update .gitignore for clarity and consistency
- Added config.php to ignore list for security reasons
- Clarified comments for NodeJS dependencies and Coingecko export data
- Ensured consistent use of leading slashes for ignored paths
2024-08-08 16:07:32 +02:00
Kumi
2e77cc58ab
fix: correct info text alignment in multiple languages
Aligned info text more consistently by removing the unnecessary "clock" word in the time displays across different language files. This enhances readability and maintains uniformity in the presentation of exchange rate update times. No functional changes were made.
2024-08-08 15:57:18 +02:00
Kumi
70edeaa283
fix: update exchange rate refresh interval to 1 minute
Changed the update frequency for exchange rates displayed on the site from every 5 seconds to approximately once per minute for all supported languages. This reflects the actual achievable update frequency given CoinGecko's rate limits.

No user-facing functionality is affected.
2024-08-08 15:55:01 +02:00
Kumi
d249139901
fix(lang): add missing semicolon in German translation file
Added a missing semicolon to maintain consistent syntax and prevent potential issues in the German language translation file. This change ensures the proper functionality of the affected code.
2024-08-08 15:47:29 +02:00
Kumi
85d30389b1
feat: add optional attribution and servers' info display
Introduced a new configuration file allowing optional attribution
content and conditional display of the "Servers Guru" attribution
link. This enhances customizability and control over displayed
attributions.

The changes include:
- Adding a config.dist.php for default configurations.
- Modifying index.php to load and utilize the new configuration
  options.
- Updating multiple language files to support the new attribution
  and link display.

These modifications will enable users to have a more tailored
display of attributions on the website.
2024-08-08 15:45:25 +02:00
Kumi
061892fa04
feat: improve API error handling & add exchange rate updates
- Switched to using cURL for fetching data from CoinGecko API, with added error handling for failed requests. This reduces the chances of runtime errors and ensures fallback to previous data.
- Implemented periodic updates to exchange rates every 5 seconds in `main.js` to keep the rates current.
- Added OpenGraph meta tags on `index.php` for better social media integration.
- Minor CSS adjustments for better table rendering.
- Moved `import` statements for Bootstrap CSS and JS to the top in `main.js`.
2024-08-08 14:55:47 +02:00
Kumi
91dd6df3dd
fix: correct spelling errors in English translations
Corrected spelling mistakes in the English translation file for "Tooltip Title" and "Swedish Krona" to improve accuracy and readability. These corrections ensure that the language used in the application is correct and professional, enhancing user experience.
2024-08-08 13:18:49 +02:00
Kumi
73222b3f94
feat: Enhance currency tooltip descriptions
Updated the tooltip descriptions for currency links to display full currency names where available, improving user clarity and interface usability. If a full name is not available, the currency code is still shown. This enhances the experience by making the tooltips more informative.
2024-08-08 13:17:36 +02:00