ShellBanner
System:Linux MiraNet 3.0.0-14-generic-pae #23-Ubuntu SMP Mon Nov 21 22:07:10 UTC 2011 i686
Software:Apache. PHP/5.3.6-13ubuntu3.10
ID:uid=65534(nobody) gid=65534(nogroup) groups=65534(nogroup)
Safe Mode:OFF
Open_Basedir:OFF
Freespace:24.17 GB of 70.42 GB (34.32%)
MySQL: ON MSSQL: OFF Oracle: OFF PostgreSQL: OFF Curl: OFF Sockets: ON Fetch: OFF Wget: ON Perl: ON
Disabled Functions: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,

/ distr/ Shinobi/ web/ libs/ js/ - drwxr-xr-x

Directory:
Viewing file:     super.configEditor.js (9.29 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
$(document).ready(function(){
    var schema = {
      "title": "Shinobi Configuration",
      "type": "object",
      "properties": {
          "debugLog": {
            "type": "boolean",
            "default": false
          },
          "subscriptionId": {
            "type": "string",
          },
        "port": {
          "type": "integer",
          "default": 8080
        },
        "passwordType": {
          "type": "string",
          "enum": [
            "sha256",
            "sha512",
            "md5"
          ],
          "default": "sha256"
        },
        "addStorage": {
          "type": "array",
          "format": "table",
          "title": "Additional Storage",
          "description": "Separate storage locations that can be set for different monitors.",
          "uniqueItems": true,
          "items": {
            "type": "object",
            "title": "Storage Array",
            "properties": {
              "name": {
                "type": "string",
              },
              "path": {
                "type": "string",
                "default": "__DIR__/videos2"
              }
            }
          },
          "default": [
              {
                  "name": "second",
                  "path": "__DIR__/videos2"
              }
          ]
        },
        "plugins": {
          "type": "array",
          "format": "table",
          "title": "Plugins",
          "descripton": "Elaborate Plugin connection settings.",
          "uniqueItems": true,
          "items": {
            "type": "object",
            "title": "Plugin",
            "properties": {
              "plug": {
                "type": "string",
                "default": "pluginName"
              },
              "key": {
                "type": "string"
              },
              "mode": {
                "type": "string",
                "enum": [
                    "host",
                    "client"
                ],
                "default": "client"
              },
              "https": {
                "type": "boolean",
                "descripton": "Only for Host mode.",
                "default": false
              },
              "host": {
                "type": "string",
                "descripton": "Only for Host mode.",
                "default": "localhost"
              },
              "port": {
                "type": "integer",
                "descripton": "Only for Host mode.",
                "default": 8082
              },
              "type": {
                "type": "string",
                "default": "detector"
              }
            }
          },
          "default": [
              {
                  "name": "second",
                  "path": "__DIR__/videos2"
              }
          ]
        },
        "pluginKeys": {
          "type": "object",
          "format": "table",
          "title": "Plugin Keys",
          "description": "Quick client connection setup for plugins. Just add the plugin key to make it ready for incoming connections.",
          "uniqueItems": true,
          "items": {
            "type": "object",
            "title": "Plugin Key",
            "properties": {}
          }
        },
          "db": {
            "type": "object",
            "format": "table",
            "title": "Database Options",
            "description": "Credentials to connect to where detailed information is stored.",
            "properties": {
              "host": {
                "type": "string",
                "default": "127.0.0.1"
              },
              "user": {
                "type": "string",
                "default": "majesticflame"
              },
              "password": {
                "type": "string",
                "default": ""
              },
              "database": {
                "type": "string",
                "default": "ccio"
              },
              "port": {
                "type": "integer",
                "default": 3306
              }
            },
            "default": {
              "host": "127.0.0.1",
              "user": "majesticflame",
              "password": "",
              "database": "ccio",
              "port":3306
            }
        },
          "cron": {
            "type": "object",
            "format": "table",
            "title": "CRON Options",
            "properties": {
              "key": {
                "type": "string",
              },
              "deleteOld": {
                "type": "boolean",
                "description": "cron will delete videos older than Max Number of Days per account.",
                "default": true
              },
              "deleteNoVideo": {
                "type": "boolean",
                "description": "cron will delete SQL rows that it thinks have no video files.",
                "default": true
              },
              "deleteOverMax": {
                "type": "boolean",
                "description": "cron will delete files that are over the set maximum storage per account.",
                "default": true
              },
            }
        },
          "mail": {
            "type": "object",
            "format": "table",
            "title": "Email Options",
            "properties": {
              "service": {
                "type": "string",
              },
              "host": {
                "type": "string",
              },
              "auth": {
                "type": "object",
                "properties": {
                    "user": {
                      "type": "string",
                    },
                    "pass": {
                      "type": "string",
                    },
                },
              },
              "secure": {
                "type": "boolean",
                "default": false
              },
              "ignoreTLS": {
                "type": "boolean",
              },
              "requireTLS": {
                "type": "boolean",
              },
              "port": {
                "type": "integer",
              }
            }
        },
        "detectorMergePamRegionTriggers": {
          "type": "boolean",
          "default": true
        },
        "doSnapshot": {
          "type": "boolean",
          "default": true
        },
        "discordBot": {
          "type": "boolean",
          "default": false
        },
        "dropInEventServer": {
          "type": "boolean",
          "default": false
        },
        "ftpServer": {
          "type": "boolean",
          "default": false
        },
        "oldPowerVideo": {
          "type": "boolean",
          "default": false
        },
        "wallClockTimestampAsDefault": {
          "type": "boolean",
          "default": true
        },
        "defaultMjpeg": {
          "type": "string",
        },
        "streamDir": {
          "type": "string",
        },
        "videosDir": {
          "type": "string",
        },
        "windowsTempDir": {
          "type": "string",
        }
      }
    };

    var configurationTab = $('#config')
    var configurationForm = configurationTab.find('form')

    // Set default options
    JSONEditor.defaults.options.theme = 'bootstrap3';
    JSONEditor.defaults.options.iconlib = 'fontawesome4';

    // Initialize the editor
    var configurationEditor = new JSONEditor(document.getElementById("configForHumans"),{
      theme: 'bootstrap3',
      schema: schema
    });

    function loadConfiguationIntoEditor(){
        $.get(superApiPrefix + $user.sessionKey + '/system/configure',function(data){
            configurationEditor.setValue(data.config);
        })
    }
    // configurationEditor.on("change",  function() {
    //   // Do something...
    // });
    var submitConfiguration = function(){
        var errors = configurationEditor.validate();
        console.log(errors.length)
        console.log(errors)
        if(errors.length === 0) {
            var newConfiguration = JSON.stringify(configurationEditor.getValue(),null,3)
            var html = '<p>This is a change being applied to the configuration file (conf.json). Are you sure you want to do this? You must restart Shinobi for these changes to take effect. <b>The JSON below is what you are about to save.</b></p>'
            html += `<pre>${newConfiguration}</pre>`
            $.confirm.create({
                title: 'Save Configuration',
                body: html,
                clickOptions: {
                    class: 'btn-success',
                    title: lang.Save,
                },
                clickCallback: function(){
                    $.post(superApiPrefix + $user.sessionKey + '/system/configure',{
                        data: newConfiguration
                    },function(data){
                        // console.log(data)
                    })
                }
            })
        }else{
            new PNotify({text:'Invalid JSON Syntax, Cannot Save.',type:'error'})
        }
    }
    configurationTab.find('.submit').click(function(){
        submitConfiguration()
    })
    configurationForm.submit(function(e){
        e.preventDefault()
        submitConfiguration()
        return false;
    })
    $.ccio.ws.on('f',function(d){
        switch(d.f){
            case'init_success':
                loadConfiguationIntoEditor()
            break;
        }
    })
    window.configurationEditor = configurationEditor
})
Command:
Quick Commands:
Upload:
[Read-Only] Max size: 100MB
PHP Filesystem: <@ Ú
Search File:
regexp
Create File:
Overwrite [Read-Only]
View File:
Mass Defacement:
[+] Main Directory: [+] Defacement Url:
LmfaoX Shell - Private Build [BETA] - v0.1 -; Generated: 0.3521 seconds