<!doctype html>
<html>

<head>
  <meta charset="utf-8">
  <link rel="stylesheet" type="text/css" href="style.css" />
  <link href="favicon.png" rel="icon"  type="image/x-icon" />
  <title>Switch Payload Loader v1.3</title>

  <!-- JQuery: needed for some Bootstrap Components -->
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

  <!-- Bootstrap 3 framework -->
  <!-- Latest compiled and minified CSS -->
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
  <!-- Optional theme -->
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">
  <!-- Latest compiled and minified JavaScript -->
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>

</head>

<body class="container-fluid">
  <div class="row" id="title">
    <h1>Nintendo Switch Payload Lader</h1>
    <h4>Fusee Launcher portiert zu JavaScript mit der Hilfe von WebUSB.</h4>
  </div>

  <div class="row margin-top-md">
    <div class="col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3">
      <div class="btn-group" role="group" aria-label="...">
        <a class="btn btn-info disabled" href="#">English</a>
        <a class="btn btn-info" href="./it_IT/index.html">Italiano</a>
        <a class="btn btn-info" href="./pt_BR/index.html">Português</a>
        <a class="btn btn-info" href="./de_DE/index.html">Deutsch</a>
      </div>
    </div>
  </div>


  <div class="row margin-top-md" id="infodiv">
    <div class="col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3">
      
      <div class="alert alert-danger" role="alert">
        <p>Aus irgendeinem Grund funktionieren hochgeladene Payloads nicht. Ich versuche zurzeit dies zu reparieren.</p>
      </div>

      <div class="alert alert-danger" role="alert">
        <p>Es wurde einigermaßen getestet. Auch wenn bisher keine Fehler gefunden wurden, bin ich nicht schuldig, falls es zu Problemen kommt!</p>
      </div>

      <div class="alert alert-warning alert-dismissible" role="alert">
        <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
        <p>Dies funktioniert nicht auf Windows durch Probleme mit Chrome und WebUSB (und wahrscheinlich anderen Gründen!)</p>
      </div>

      <div class="alert alert-warning alert-dismissible" role="alert">
        <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
        <p>Dies funktioniert bisher mit keinem Browser AUßER Chrome! Das liegt daran, dass die anderen Browser WebUSB nicht supporten!</p>
      </div>

      <div class="alert alert-warning alert-dismissible" role="alert">
        <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
        <p>In Linux können Sie einen "Zugriff abgelehnt" Fehler bekommen! Falls Sie dieses Problem haben, können Sie eine Datei unter: <code>/etc/udev/rules.d/50-switch.rules</code>mit dem folgenden Inhalt:<br><code>SUBSYSTEM==\"usb\", ATTR{idVendor}==\"0955\", MODE=\"0664\", GROUP=\"plugdev\"</code>erstellen.</p>
      </div>

      <div class="alert alert-warning alert-dismissible" role="alert">
        <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
        <p>Tests ergeben, dass es zurzeit auf Linux, OSX, Android (unrooted) und Chromebooks funktioniert. Ihr Ergebnis kann variieren.</p>
      </div>

      <div class="alert alert-info" role="alert">
        <h4>Anleitung:</h4>
        <ul>
          <li>Setzen Sie die Switch in den RCM und verbinden Sie es mit ihrem Gerät.</li>
          <li>Wählen Sie entweder einer der vorliegenden Payloads oder laden Sie Ihr eigenes Payload hoch.</li>
          <li>Drücken Sie: "Payload senden"</li>
          <li>Auf dem Erlaubnisbildschirm müssen Sie "APX" auswählen und zustimmen.</li>
          <li>Falls alles richtig läuft, sollte das Payload gesendet sein!</li>
        </ul>
      </div>
    </div>
  </div>
  
  <div class="row">
    <div class="class=col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3">
        <h1>Konfiguration des Payloadversandes</h1>

        <form id="mainForm">
          <div class="row">
            <div class="col-xs-6">
              <h4>Wähle Payload:</h4>
            </div>

            <div class="col-xs-6">
              <select class="pull-right" id="payloadSelect" onchange="onSelectChange()">
                <option value="instaboot">Boote die CFW direkt (5.0.x)</option>
                <option value="hekate v5">Hekate für 5.0.x Switches</option>
                <option value="hekate v4">Hekate für 4.0.x Switches</option>
                <option value="fusee">(Re)Switched Test Payload (fusee)</option>
                <option value="uploaded">Eigenes Payload hochladen</option>
              </select>
            </div>
          </div>

          <div class="row" id="uploadContainer" style="display: none">
            <div class="row-xs-12">
              <input style="float: right" type="file" id="payloadUpload" accept=".bin"/>
            </div>
          </div>
          <div class="row divider-line"></div>

          <div class="row margin-top-md">
            <div class="col-xs-10">
              <h4>Erhalt Payload Byte-Array (nicht senden)</h4>
            </div>
            <div class="col-xs-2">
              <input class="pull-right" type="checkbox" name="shouldDebug" id="shouldDebug">
            </div>
          </div>
          <div class="row divider-line"></div>           
        </form>
  
        <div class="row margin-top-md">
          <div class="col-xs-12">
            <button class="btn btn-primary btn-lg pull-right" id="goButton">Sende Payload!</button>
          </div>
        </div>
        
    </div>
  </div>


  <div class="row">
    <div class="class=col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3">
        <h3>Protokoll:</h3>
        <div id="output"></div>
        <button class="btn btn-primary pull-right margin-top-md" id="clearlogsbutton" onclick="clearLog();">Clear Logs</button><br><br>      
    </div>
  </div>


  <script src="./payloads.js"></script>
  <script src="./main.js"></script>
</body>

<div class="row margin-top-md" id="page-footer">
  <div class="col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3">
      <div id="disclaimer">
          <p>Der Quellcode kann hier gefunden werden: <a href="https://github.com/ElijahZAwesome/web-cfw-loader/">GitHub</a> (oder indem man sich den Quellcode direkt ankuckt, da kein Backend existiert!).</p>
          <p>Portiert von <a href="https://github.com/reswitched/fusee-launcher">fusee-launcher</a>.</p>
          <p>Danke an ktemkin und ReSwitched, aber auch <br><a href="https://atlas44.s3-us-west-2.amazonaws.com/web-fusee-launcher/index.html">Atlas44 und seine Webseite</a>, als einen Startpunkt für dieses Projekt. </p>
          <p>Zuletzt danke an <a href="https://github.com/falquinho">falquinho</a> für sein Bootstraplayout und Übersetzung in Portugiesisch, <a href="https://github.com/Filo97">Filo97</a> für die italienische Übersetzung und <a href="https://github.com/tumGER"> tumGER </a>für seine deutsche Übersetzung!.</p>
      </div>
  </div>
</div>

</html>