Commit graph

9 commits

Author SHA1 Message Date
Justin Grimes
cdf29e16fd
v3.1.2 - Improve image support. $AllowStreams config entry, bump JQuery, add some icons.
-v3.1.2.
-Improve Installation_Instructions.txt.
-Revise 3D Model support, Vector file support, Image support, Iso support.
-Improve securePath function comments, add URL support.
-Trying to automate the translation into other languages.
-Add rc-local.service template file for systems where it is missing and needs to be installed.
2023-01-12 02:19:54 -05:00
Justin Grimes
ba47d6e3ba
v3.1.1 - Improve image support. $AllowStreams config entry, bump JQuery, add some icons.
-v3.1.1.
-Add code to prevent stream related UI elements from displaying when the $AllowStreams config entry is set to FALSE.
-Update JQuery from v3.6.0.min to v3.6.3.min.
-Checked for Dropzone.js updates, already at latest version.
-Minor comment changes in config.php.
-Translate index files of language packs into the language of the pack.
-Add comments section containing file & application information to GUI-related files.
-Clean up array declarations, improve readibility, scalability, debugging.
-Vastly improve image support for both input and output operations.
-Added support for Heic files.
-Added support for several misc image files.
-Bumped format support count to 79 file formats.
-Adjust icons for media, videos to be unique from streams.
-Add mkisofs as a dependency, fix iso creation.
-Revise verbiage of UI elements.
2023-01-11 01:36:01 -05:00
Justin Grimes
fde78e6ff2 v2.9.3 - Update docs, ERRO_DESCRIPTIONS.txt, add application information header to important files.
-v2.9.3.
-Improve documentation.
2022-04-28 02:29:43 -04:00
Justin Grimes
eceaefaef8 v2.8.9 - Added Share File button, option to disable in config.php.
-v2.8.9.
-Added a "Share File" button to convertGui2.php for creating & copying a link to the file.
-Allows users to generate shareable URLs.
-Added $AllowUserShare in conig.php for disabling the share file feature.
-Currently the Share file feature is only avaialble in the English language pack.
-I expect to have all the language packs caught up in the next update.
2022-04-21 17:44:10 -04:00
Justin Grimes
c553de9036 v2.8.2 - Adding documentation, polishing edges.
-v2.8.2.
-"Polishing the edges" of the repo, so to speak.
-Cleaning up directory structure.
  -Added Documentation directory.
  -Moved Documentation to the documentation directory.
  -Added ERROR_DESCRIPTIONS with detailed descriptions of every error message produced in the logs.
    -Still need to add more messages.
  -Renamed How_To_Install_HRConvert.txt to INSTALLATION_INSTRUCTIONS.txt & moved to Documentation directory.
  -Moved ICON_CREDITS.txt to Documentation directory.
  -Cleaned up the comment intro section to all PHP files to have the same basic formatting & structure.
  -Polish the README some more.
  -Make logs respect the $ApplicationName variable as soon as it becomes available.
    -No more hardcoded "HRConvert2" in log entries.
  -Moved styleCore.php to Resources directory, since it only contains 4 front-end related variables and no logic of its own.
  -The goal is to cleanup the root of the repo to make it more presentable & approacable for newbies.
    -All the important files related to logic are in the root of the repo.
    -Makes the repo more modular as well.
-Make $_GET['language'] codes language case-insensitive.
-Log files are now named after the $ApplicationName variable set in config.php rather than using HRConvert2 in the filename.
-Reordered some logic.
-Disable GUI compilation when responding to a file operation request.
  -The front end doesn't use output from the core anyway.
  -This clears the way to enable such functionality by controlling the when GUI elements are actually needed.
-No longer throws 404 errors when a file conversion fails.
-No longer opens compatible files in the browser but starts a download instead.
-No more HTML undefined errors when requesitng a download.
-Added a check to verifySessionHash() function to make sure the $Salts variables are formatted as strings.
2022-04-18 04:57:47 -04:00
Justin Grimes
7f6c454e02 -v2.8. -Refactor the core. -The original codebase was developed more than 4 years ago. -The first unpublished experiments began in 2014. -The "generation" of the HRConvert2 codebase until today was "Valkyrie". -HonestRepair server side software comes in 3 generations. -The first generation is unsafe to use. It is part of the "zelon88/HRToolkitTools" repo. -It was called the "Genesis" engine because it was a proof-of-concept design. -Hence the name "Genesis". -The second generation is performant & safe to use but hard to maintain. -It is called the "Valkyrie" engine because the runtime environment is "dynamically constructed". -The "Valkyrie" in Norse mythology is any of a group of maidens who serves the god Odin. -Valkyrie's were also the "Choosers of the slain" and decided who would die on the battlefield. -Because the "Valkyrie" codebase is made up of one main core served by smaller cores that dynamically call dependencies. -Hence the name "Valkyrie" is very fitting. -The third and current generation is called "Diablo". It is secure, performant, & modular. -"Diablo" is Spanish for Devil. -The coding convention was introduced in the "Zelon88/HRCloud3" alpha repo and is currently under active development. -If you're a major Cloud provider you should fear Diablo. -Removes most core output except from log files or when logs cannot be reached. -Uses a more consistent logging/error catching mechanism. -Makes the core extremely modular and easy to work on. -Adding new features is easier because logging and error functions are repeatable & consistent. -Output is consistent. -Logic flow is capable of withstanding non-fatal errors. -Before we stopped execution for a lot more things. -Logic behavior is more intuitive. -Errors produced use incremental error numbers that can be easily adjusted or documented. -Log generation happens earlier during execution, meaning more logs can be captured. -More logs means problems are easier to identify & debug. -Switching to a modern design will mean more interoperability of functions between applications. -It becomes easier to apply simiilar patches to other products. -I don't have to look at my old code anymore. -Programmers grow. Programming styles change. -I am a better programmer now than I was when I first wrote this. -There will probably be bugs introduced and regressions but at least I'll enjoy working on the codebase again. -This work needed to get done eventually anyway considering it will be needed for HRCloud3. -Added $Verbose config entry for controlling the amount of logging performed. -If $Verbose is set to TRUE every significant operation will create a log entry. -If $Verbose is set to FALSE only errors will create a log entry. -$VirusScan config entry now only accepts boolean values. -Improve formatting of config.php file for readability. -All conversions except archive conversions now receive 5 conversion attempts. -Previously it was only for documents and the threshold was 10 attempts. -Reworked the way the document conversion engine is started and verified. -Removed a lot of unused variables. -Started using the same capitalization scheme as HRCloud3 (Diablo style). -Lower case first letter variables denote highly limited scope. -Upper case first letter variables denote very wide (almost global) scope. -I know that PHP takes care of memory cleanup, and I know how variable scope works in functions. -I also don't care. -Doing the capitalization scheme and manually NULL'ing + unsetting variables helps me keep track of variables. -I came up with this scheme exactly because I kept seeing dead variables in my code and I wanted it to stop. -This forces accountability for all variables and puts visiblity on most of them. -So when one of them isn't used anywhere it kind of stands out. -Refactored Javascript a tiny bit. -Now the core will remember when you leave and come back for a short while. -Added unique identifier for logs. -Makes searching logs much easier because requests group together. -Core now captures the stdout of it's dependencies. -Writes to log if $Verbose is set to TRUE. -Changed extraction behaviour for archive conversions. -Archive conversions where the destination folder already exists will have the new contents ADDED to the original archive instead of replacing them. -You can now build archives in this fashion, admittedly it is not for the faint of heart. -Remove sanitizeCore.php. -This has been replaced by the verifyGlobals() function in convertCore.php. -This was a suggestion made about 5 years ago on Reddit. It finally happened! -I worked on this commit for 30 hours straight with no sleep. -With only one consecutive 90 minute break to take a phone call. -Then I took a 3 hour nap and finished the rest, over the next 8 hours. -I am recovering from a broken leg and surgery to fix it and I still have a couple more weeks to go. -Send halp!
-v2.8.
-Refactor the core.
  -The original codebase was developed more than 4 years ago.
    -The first unpublished experiments began in 2014.
  -The "generation" of the HRConvert2 codebase until today was "Valkyrie".
    -HonestRepair server side software comes in 3 generations.
    -The first generation is unsafe to use. It is part of the "zelon88/HRToolkitTools" repo.
      -It was called the "Genesis" engine because it was a proof-of-concept design.
      -Hence the name "Genesis".
    -The second generation is performant & safe to use but hard to maintain.
      -It is called the "Valkyrie" engine because the runtime environment is "dynamically constructed".
      -The "Valkyrie" in Norse mythology is any of a group of maidens who serves the god Odin.
      -Valkyrie's were also the "Choosers of the slain" and decided who would die on the battlefield.
      -Because the "Valkyrie" codebase is made up of one main core served by smaller cores that dynamically call dependencies.
      -Hence the name "Valkyrie" is very fitting.
    -The third and current generation is called "Diablo". It is secure, performant, & modular.
      -"Diablo" is Spanish for Devil.
      -The coding convention was introduced in the "Zelon88/HRCloud3" alpha repo and is currently under active development.
      -If you're a major Cloud provider you should fear Diablo.
  -Removes most core output except from log files or when logs cannot be reached.
  -Uses a more consistent logging/error catching mechanism.
  -Makes the core extremely modular and easy to work on.
  -Adding new features is easier because logging and error functions are repeatable & consistent.
  -Output is consistent.
  -Logic flow is capable of withstanding non-fatal errors.
    -Before we stopped execution for a lot more things.
    -Logic behavior is more intuitive.
  -Errors produced use incremental error numbers that can be easily adjusted or documented.
  -Log generation happens earlier during execution, meaning more logs can be captured.
    -More logs means problems are easier to identify & debug.
  -Switching to a modern design will mean more interoperability of functions between applications.
    -It becomes easier to apply simiilar patches to other products.
  -I don't have to look at my old code anymore.
    -Programmers grow. Programming styles change.
    -I am a better programmer now than I was when I first wrote this.
    -There will probably be bugs introduced and regressions but at least I'll enjoy working on the codebase again.
    -This work needed to get done eventually anyway considering it will be needed for HRCloud3.
-Added $Verbose config entry for controlling the amount of logging performed.
  -If $Verbose is set to TRUE every significant operation will create a log entry.
  -If $Verbose is set to FALSE only errors will create a log entry.
-$VirusScan config entry now only accepts boolean values.
-Improve formatting of config.php file for readability.
-All conversions except archive conversions now receive 5 conversion attempts.
  -Previously it was only for documents and the threshold was 10 attempts.
-Reworked the way the document conversion engine is started and verified.
-Removed a lot of unused variables.
-Started using the same capitalization scheme as HRCloud3 (Diablo style).
  -Lower case first letter variables denote highly limited scope.
  -Upper case first letter variables denote very wide (almost global) scope.
  -I know that PHP takes care of memory cleanup, and I know how variable scope works in functions.
    -I also don't care.
    -Doing the capitalization scheme and manually NULL'ing + unsetting variables helps me keep track of variables.
    -I came up with this scheme exactly because I kept seeing dead variables in my code and I wanted it to stop.
    -This forces accountability for all variables and puts visiblity on most of them.
    -So when one of them isn't used anywhere it kind of stands out.
-Refactored Javascript a tiny bit.
-Now the core will remember when you leave and come back for a short while.
-Added unique identifier for logs.
  -Makes searching logs much easier because requests group together.
-Core now captures the stdout of it's dependencies.
  -Writes to log if $Verbose is set to TRUE.
-Changed extraction behaviour for archive conversions.
  -Archive conversions where the destination folder already exists will have the new contents ADDED to the original archive instead of replacing them.
  -You can now build archives in this fashion, admittedly it is not for the faint of heart.
-Remove sanitizeCore.php.
  -This has been replaced by the verifyGlobals() function in convertCore.php.
  -This was a suggestion made about 5 years ago on Reddit. It finally happened!
-I worked on this commit for 30 hours straight with no sleep.
  -With only one consecutive 90 minute break to take a phone call.
  -Then I took a 3 hour nap and finished the rest, over the next 8 hours.
  -I am recovering from a broken leg and surgery to fix it and I still have a couple more weeks to go.
  -Send halp!
2022-04-17 03:24:22 -04:00
Justin Grimes
dd7e3b00b6 v2.7.3 - Added multiple color schemes, French language translation, & dynamic language selection.
-v2.7.3.
-Remove winetrics dependency from installation instructions.
-Add gnuplot dependency to installation instructions.
-Consolidated some of the installation instructions.
-Added the ability to control button color via config.php.
  -Set $ButtonStyles to one of the approved options listed in config.php.
  -If the config entry is not defined a default will be used instead (grey).
  -Supports RED, GREEN, BLUE, and GREY.
-Updated index.html files in subdirectories to the latest version from root directory.
-Moved the UI to the Languages subdirectory.
-Added French language UI.
-Added the ability to easily add more language packs.
-Added ability to control language display via $_GET request.
-Added ability to disable $_GET request language selection in config.php.
-Reworked the way the GUI is assembled to make it compatible with multiple language packs.
2022-04-13 19:26:14 -04:00
zelon88
adafced90b
v0.8.2 - Update GUI, Fix bugs, prep for uploading.
-v0.8.2.
-Update GUI to properly show more info.
-Update CSS to properly display buttons.
-Tweak logic.
-Preparing for uploading files.
2018-02-25 01:06:32 -05:00
zelon88
d7e6c0aad1
v0.8 - Initial commit.
-v0.8.
-Back-end alpha based on previously stable code is in the testing phase.
-Front-end is still under-development.
-Not fully functional yet.
-Logging works.
-Delete timers aren't using config.php parameters yet.
-No stylesheets yet.
-Drag-and-drop works courtesy of dropzone.js (https://github.com/enyo/dropzone).
2018-02-24 00:57:12 -05:00