!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/var/www/html/wincloud_gateway/node_modules/@buffetjs/core/node_modules/reactstrap/src/   drwxr-xr-x
Free 13.13 GB of 57.97 GB (22.65%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     CustomFileInput.js (2.72 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
import React from 'react';
import PropTypes from 'prop-types';
import classNames from 'classnames';
import { mapToCssModules } from './utils';

const propTypes = {
  className: PropTypes.string,
  id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,
  label: PropTypes.node,
  valid: PropTypes.bool,
  invalid: PropTypes.bool,
  bsSize: PropTypes.string,
  htmlFor: PropTypes.string,
  cssModule: PropTypes.object,
  onChange: PropTypes.func,
  children: PropTypes.oneOfType([
    PropTypes.node,
    PropTypes.array,
    PropTypes.func
  ]),
  innerRef: PropTypes.oneOfType([
    PropTypes.object,
    PropTypes.string,
    PropTypes.func
  ])
};

class CustomFileInput extends React.Component {
  constructor(props) {
    super(props);

    this.state = {
      files: null
    };

    this.onChange = this.onChange.bind(this);
  }

  onChange(e) {
    let input = e.target;
    let { onChange } = this.props;
    let files = this.getSelectedFiles(input);

    if (typeof onChange === "function") {
      onChange(...arguments);
    }

    this.setState({ files });
  }

  getSelectedFiles(input) {
    let { multiple } = this.props;

    if (multiple && input.files) {
      let files = [].slice.call(input.files);

      return files.map(file => file.name).join(", ");
    }

    if (input.value.indexOf("fakepath") !== -1) {
      let parts = input.value.split("\\");

      return parts[parts.length - 1];
    }

    return input.value;
  }

  render() {
    const {
      className,
      label,
      valid,
      invalid,
      cssModule,
      children,
      bsSize,
      innerRef,
      htmlFor,
      type,
      onChange,
      dataBrowse,
      hidden,
      ...attributes
    } = this.props;

    const customClass = mapToCssModules(
      classNames(className, `custom-file`),
      cssModule
    );

    const validationClassNames = mapToCssModules(
      classNames(invalid && "is-invalid", valid && "is-valid"),
      cssModule
    );

    const labelHtmlFor = htmlFor || attributes.id;
    const { files } = this.state;

    return (
      <div className={customClass} hidden={hidden || false}>
        <input
          type="file"
          {...attributes}
          ref={innerRef}
          aria-invalid={invalid}
          className={classNames(
            validationClassNames,
            mapToCssModules("custom-file-input", cssModule)
          )}
          onChange={this.onChange}
        />
        <label
          className={mapToCssModules("custom-file-label", cssModule)}
          htmlFor={labelHtmlFor}
          data-browse={dataBrowse}
        >
          {files || label || "Choose file"}
        </label>
        {children}
      </div>
    );
  }
}

CustomFileInput.propTypes = propTypes;

export default CustomFileInput;

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0343 ]--