Envato Elements Requests

by Daniel Gualberto

HTML

<script src="https://code.jquery.com/jquery-3.4.1.slim.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css">
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css">
<div class="container-fluid">
  <div class="input-group input-group-sm my-1">
    <span class="input-group-text"><i class="fas fa-spell-check"></i></span>
    <textarea class="form-control" id="output" rows="1"></textarea>
    <button class="btn btn-outline-danger" type="button" onclick="field_del('output')"><i class="fas fa-backspace"></i></button>
  </div>
</div>

<hr>

<div class="container-fluid" id="container_requests">
  <div class="btn-group d-flex mb-1">
    <button type="button" class="btn btn-outline-primary btn-sm" onclick="add_card()"><i class="fas fa-plus"></i></button>
  </div>
</div>

<div class="container-fluid w-50 mb-5">
  <div class="btn-group d-flex mb-1">
    <button type="button" class="btn btn-outline-primary btn-sm" onclick="add_card()"><i class="fas fa-plus"></i></button>
  </div>
</div>

JavaScript

function field_del(field) {
  document.getElementById(field).value = "";
}

function field_copy(field) {
  var output = document.getElementById("output");
  output.value = document.getElementById(field).value;
  output.select(), document.execCommand("copy");
}

function external_link(field) {
  var link = document.getElementById(field).value;
  window.open(link, "_blank");
}

function user_introduction(field) {
  var link = document.getElementById(field).value;
  var starter_id = link.substr(link.lastIndexOf('.') + 1).replace('/', '');
  window.open("https://babiato.co/forums/introductions.26/?starter_id=" + starter_id, "_blank");
	$('#a_' + field).addClass('bg-warning');
}

function at_user(hash) {
  var link = $('#user_' + hash).val();
  var regex = /\/members\/(.*)\./;
  document.getElementById('username_' + hash).innerHTML = regex.exec(link)[1];
}

function add_card() {
  var hashdata = Date.now();
  var card = '<div class="card my-3 border border-secondary shadow" id="card_request_' + hashdata + '" name="card_request_' + hashdata + '" data-name="' + hashdata + '">' +
    '<div class="card-header bg-secondary text-white">' +
    '<i class="fas fa-at"></i>' +
    '<b><em id="username_' + hashdata + '"></em></b>' +
    '<button type="button" class="btn-close btn-sm float-end" aria-label="Close" onclick="del_requests(\'card_request_' + hashdata + '\')"></button>' +
    '</div>' +
    '<div class="container-fluid">' +
    '<div class="input-group input-group-sm my-1">' +
    '<span class="input-group-text" id="a_user_' + hashdata + '"><i class="fas fa-user"></i></span>' +
    '<input type="text" class="form-control" id="user_' + hashdata + '" data-user="username_' + hashdata + '" name="user_' + hashdata + '" onblur="at_user(\'' + hashdata + '\')">' +
    '<button class="btn btn-danger" type="button" onclick="field_del(\'user_' + hashdata + '\')"><i class="fas fa-backspace"></i></button>' +
    '<button class="btn btn-secondary" type="button"...