Break

  • Purpose: Exits a loop (like _For or _While) or terminates a _Select or _Switch control structure prematurely. It allows you to jump out of the current code block based on a condition.

  • Example:

    _For i = 0 to 10
       If i = 5 Then
          _Break  ' Exit the loop if i reaches 5
       End If
    _Next i 

    Case

  • Purpose: Forms part of a _Select Case..._End Select statement, which is similar to a switch statement in other languages. It provides a way to execute different code blocks depending on the value of an expression.

  • Example:

    __Select score
        __Case 90 to 100
            grade = "A"
        __Case 80 to 89
            grade = "B"
        __Case_Else
            grade = "Fail"
    __End Select

    Case_Else

  • Purpose: Used within a _Select Case..._End Select structure to define the code to be executed if none of the other _Case conditions are met. It's the "default" case.

  • Example (continued):

    __Select month
        __Case "January"
            days = 31
        __Case "February"
            days = 28 ' Or 29 in a leap year
        __Case_Else
            days = -1 ' Invalid month
    __End Select

    CgiVars

  • Purpose: This seems to indicate a set of variables that hold information about the current web request. It's likely related to processing web forms or dynamic content using the Common Gateway Interface (CGI).

  • Typical Variables and Uses:

    • REQUEST_METHOD: HTTP method (e.g., GET, POST)

    • QUERY_STRING: Data passed in the URL (after the '?')

    • HTTP_USER_AGENT: The type of web browser the user is using

    • REMOTE_ADDR: IP address of the client making the request

    ClearResult

  • Purpose: Likely serves to reset or clear a variable or data structure that holds the results of a previous calculation, script, or process. Without more context, its exact function is hard to determine.

    Create_Stat_Cols_Rows_Graph(...)

  • Purpose: This command seems designed to generate sophisticated dynamic statistical graphs based on data provided in columns and rows. It's highly likely that it integrates with a graphing library like Google Charts.

  • Potential Parameters (refer to Google Charts documentation for detailed explanations)

    • GraphType: Type of graph to create (e.g., PieChart, BarChart, LineChart)

    • dx, dy: Displacement/position of the graph on the page.

    • Width, Height: Graph dimensions.

    • Cols_Information, Rows_Information: Data to be visualized.

    • Stat_Options: String containing customizations (colors, labels, etc.).

  • Base64 Encoding/Decoding

  • _Dec_base64(...)

    • Purpose: Decodes data encoded using the Base64 format. Base64 is commonly used to represent binary data (images, files, etc.) as text, often for transmission over the internet.

    • Syntax: _Dec_base64(binary_data)

    • Example:

      encoded_message = "VGhpcyBpcyBhIHRlc3Qu" 
      plain_text = _Dec_base64(encoded_message)  
  • _Dec_base64_ASCII(...)

    • Purpose: Similar to _Dec_base64 but specifically tailored for decoding ASCII text that has been Base64 encoded.

    • Syntax: _Dec_base64_ASCII(plain_text)

  • _Enc_base64(...)

    • Purpose: Encodes binary data into a Base64 representation.

    • Syntax: _Enc_base64(binary_data)

  • _Enc_base64_ASCII(...)

    • Purpose: Encodes plain ASCII text into a Base64 representation.

    • Syntax: _Enc_base64_ASCII(plain_text)

    Output Control

  • _Disable_Write_Output()

    • Purpose: Seems to change the output mode so that standard output commands (perhaps something like Print or Write) are unavailable or redirected. I'd need more context on the language to be certain.

  • _Enable_Write_Output()

    • Purpose: Likely restores normal output behavior after _Disable_Write_Output() has been called. It might involve enabling standard output to the console or a log file.

    Looping

  • _Do... _End_While

    • Purpose: Implements a standard Do...While loop structure. The code within the loop executes repeatedly as long as the specified condition at the end remains true.

    • Syntax:

      _Do
         [code to be repeated]
      _End_While <condition>
    • Example

      _Let i = 0
      _Do
         _Let i = i + 1
      _End_While i <= 10 

    Conditional Logic

  • _If..._Then..._Else..._End_If

    • Purpose: A standard conditional branching structure, allowing different code blocks to execute based on whether a condition is true or false.

    • Syntax:

      _If <condition> _Then
         [code to execute if true]
      _Else
         [code to execute if false]
      _End_If
  • _Else_Goto

    • Purpose: This seems like a non-standard addition. It likely works in conjunction with a _THEN_GOTO (not provided) to implement conditional jumps within the code. This type of construct can lead to less readable 'spaghetti code'.

  • File Manipulation

  • _File

    • Purpose: Designates a file to be included during some deployment or packaging process. It's likely related to creating web applications or software installers.

    • Syntax:

      _File "Source_File", "Target_File"
    • Parameters:

      • Source_File: The path to the file in your development resources.

      • Target_File: The desired path/filename on the server or in the deployed package.

    • Important:

      • Requires a _Website_Files and _Website_Files_End block (not in your examples) to define the context of the file transfer.

      • The target server folder needs appropriate permissions.

    Looping

  • _For...Next

    • Purpose: Implements a standard counted loop. Code within the loop repeats a specified number of times.

    • Syntax:

      _For counter = start_value to end_value [Step increment]
           [code to repeat]
      _Next [counter] 
    • Example:

      _For i = 0 to 5 Step 0.5
          'Code executed with i = 0, 0.5, 1, 1.5... up to 5
      _Next
  • _End_While

    • Purpose: Marks the end of a Do..._End_While loop structure (the matching _Do is missing from your examples).

    Control Flow

  • _Full_Break

    • Purpose: Terminates the execution of the entire script (or script hierarchy if called from within another script). Use this cautiously!

  • _Goto

    • Purpose: Implements an unconditional jump to a specified line label within the code. While functional, excessive use of _Goto often leads to spaghetti code that's hard to read and debug.

    • Syntax: _Goto <line_label>

  • _If..._Then_Goto..._Else_Goto

    • Purpose: Conditionally jumps to different line labels based on the evaluation of an expression. It's a non-standard way to implement conditional branching.

    • Syntax: _If <condition> _Then_Goto <line_label> _Else_Goto <line_label>

  • _If..._Then..._Else..._End_If

    • Purpose: Classic conditional branching structure. Different code blocks execute depending on whether a condition evaluates to true or false.

  • Variable Manipulation

  • _Let

    • Purpose: The fundamental way to assign values to variables. Variables play a crucial role in storing data and intermediate results.

    • Syntax: _Let variable_name = value_or_expression

    Control Flow

  • _Line_Label

    • Purpose: Creates a marker within the code, often used as a target for _Goto statements. While this works, its use is discouraged in modern programming due to potential readability issues.

    • Syntax: _Line_Label <label_name>

  • _Next

    • Purpose: Marks the end of a _For...Next loop and signals that the loop should iterate to the next value.

  • _Repeat..._Until

    • Purpose: Implements a loop that continues executing code until a specified condition becomes true.

    • Syntax:

      _Repeat
         [code to repeat]
      _Until <condition>

    Output and Data Manipulation

  • _Operators

    • Purpose: Not a standalone command, but this section outlines the essential operators provided by the language:

      • Concatenation: .. (used to join strings)

      • Math: +, -, /, * , ^ (exponentiation), ~ (modulo)

      • Logical: || (OR), && (AND), comparison operators (>, <, <=, >=, ==, <>)

  • _ReplaceResult

    • Purpose: Modifies the output that will be sent to the user's web browser before transmission. Useful for dynamic text replacements.

    • Syntax: _ReplaceResult("Text_to_Find", "Replacement_Text")

    Script/Page Execution

  • _Page

    • Purpose: Defines a webpage within your system. It controls access permissions based on IP address.

    • Syntax: _Page "Page_Name", "Authorized_IPs"

    • Important:

      • Pages without extensions seem to be stored in a database.

      • IP authorization works differently for pages with extensions.

  • _Run

    • Purpose: Executes another page/script within the current one.

    • Syntax: _Run("Page_to_Run")

    Web/System Interaction

  • _Print_Console

    • Purpose: Stores a message in a console that can be retrieved from a special URL. Likely used for debugging or logging.

    • Syntax: _Print_Console("code", "message")

  • _Record_Operations..._End_Record_Operations

    • Purpose: Creates a code block that only executes when some record is present (the exact meaning of "record" depends on the language's database integration).

  • Conditional Logic

  • _Select...Case...End_Select

    • Purpose: Implements a multi-way branching structure similar to a switch statement in other languages. Makes decisions based on the value of an expression.

    • Syntax:

      _Select Variable_Or_Expression
          _Case Value1
              [code to execute if match]
          _Case Value2 
              [code to execute if match]
          ...
          _Case_Else
              [default code] 
      _End_Select
  • _Then

    • Purpose: Used within an _If...Then...Else...End_If structure to mark the block of code to execute if the condition evaluates to true.

  • _Then_Goto

    • Purpose: Used within the non-standard IF..._Then_Goto..._Else_Goto construction to conditionally jump to a specified _Line_Label

    Hashing

  • _Sha256(...)

    • Purpose: Calculates the SHA-256 cryptographic hash of a given text input. Typically used for secure password storage or data integrity checks.

  • _Sha512(...)

    • Purpose: Calculates the SHA-512 cryptographic hash of the provided text. Offers a potentially higher level of security than _SHA256 for very sensitive applications.

    System Interaction

  • _Shell(...)

    • Purpose: Executes an external program on the server where the script is running. This has security implications and likely requires special server configuration.

    • Important Note: Use with caution due to potential security risks if not configured properly!

    Looping

  • _Step

    • Purpose: Defines the increment or decrement value for the loop counter in a _For...Next loop.

  • _Until

    • Purpose: Marks the end of a _Repeat..._Until loop, which continues until a specified condition becomes true.

  • _While..._End_While

    • Purpose: Implements a standard while loop, executing code repeatedly as long as a condition holds true.

    Timeout

  • _TimeOut(...)

    • Purpose: Sets a maximum execution time (in milliseconds) for the script or a code block. Helps prevent infinite loops or overly long-running processes.

    Variable Manipulation and Metaprogramming

  • _Variable_Name(...)

    • Purpose: Retrieves the name of a variable given its index within the current variable collection. This is a metaprogramming feature (code that manipulates code).

  • _Variable_Value(...)

    • Purpose: Retrieves the value of a variable given its index within the current variable collection.

    Web and File Management

  • _Website_Files..._Website_Files_End

    • Purpose: Defines a block for specifying files to be deployed from your development resources to a target web server environment.

    • Requires: _File entries within the block to describe source and destination locations.

  • _Website_Pages..._Website_Pages_End

    • Purpose: Defines a block where you specify individual web pages, their access restrictions (by IP address), and the content of those pages.

    • Requires: _Page entries within the block.

    • Integration: Can include both HTML and ASP code within the _Page sections.

  • Output Commands

  • _Write(Data_to_Output)

    • Purpose: Sends the specified data directly to the output console or log. This is a fundamental way to display text results during script execution.

  • _Write_CRLF(Data_to_Output)

    • Purpose: Outputs the data and appends a "Carriage Return, Line Feed" (\r\n in many systems). This creates a new line in the output.

  • _Write_LF(Data_to_Output)

    • Purpose: Outputs the data and appends a "Line Feed" (\n on Unix-like systems). Also creates a new line in the output.

    Menu Creation

  • _SubMenu(Sub_Menu_Name, Sub_Menu_Options)

    • Purpose: Seems to be designed for creating administrative submenus. It likely has some visual display component and might interact with a permission system based on the _Permisos variable.

    • Parameters:

      • Sub_Menu_Name: The title of the submenu.

      • Sub_Menu_Options: A string containing menu options, likely in a specific format, possibly using icons from a font library like Font Awesome ("fa fa-files-o", etc.).