blob: ea2e7e5bb474794a82630e86a7ac642817866efa [file] [log] [blame]
matheusfillipeabd513e2021-05-11 03:29:11 -03001<?php
matheusfillipe47cf90b2021-05-13 03:36:21 -03002function generateRandomString($length = 96)
3{
matheusfillipeabd513e2021-05-11 03:29:11 -03004 $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
5 $charactersLength = strlen($characters);
6 $randomString = '';
7 for ($i = 0; $i < $length; $i++) {
8 $randomString .= $characters[rand(0, $charactersLength - 1)];
9 }
10 return $randomString;
11}
12
matheusfillipe47cf90b2021-05-13 03:36:21 -030013function getClientIP(): string
matheusfillipeabd513e2021-05-11 03:29:11 -030014{
matheusfillipe47cf90b2021-05-13 03:36:21 -030015 $keys = array('HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'REMOTE_ADDR');
16 foreach ($keys as $k) {
17 if (!empty($_SERVER[$k]) && filter_var($_SERVER[$k], FILTER_VALIDATE_IP)) {
matheusfillipeabd513e2021-05-11 03:29:11 -030018 return $_SERVER[$k];
19 }
20 }
21 return false;
22}
matheusfillipe47cf90b2021-05-13 03:36:21 -030023
24function format(string $string, array $values)
25{
26 foreach ($values as $key => $value) {
27 $string = str_replace("{{{$key}}}", $value, $string);
28 }
29 return $string;
30}
matheusfillipec0ce7fa2021-05-13 05:15:37 -030031
32function template_path(string $lang_cc = null){
33 include "config.php";
34 if (isset($_SESSION["cc"]))
35 $lang_cc = $GLOBALS["cc"];
36 if (isset($GLOBALS["cc"]))
37 $lang_cc = $GLOBALS["cc"];
38 if ($lang_cc)
39 $INCLUDE_STRINGS_PATH = "templates_".$lang_cc;
40 else
41 $INCLUDE_STRINGS_PATH = "templates";
42
43 if (isset($lang_cc) && !empty($lang_cc)) $TEMPLATE = $INCLUDE_STRINGS_PATH."/";
44 else $TEMPLATE = "templates/";
45
46 include $TEMPLATE.'strings.php';
47
48 if(!isset($RUNTIME_ERROR)){
49 include_once 'templates/strings.php';
50 echo $RUNTIME_ERROR->not_found;
51 echo "<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>";
52 echo format($RUNTIME_ERROR->template_not_found, ["template"=>$INCLUDE_STRINGS_PATH, "langcc"=>$LANG_CC]);
53 die();
54 }
55
56 return $TEMPLATE;
57}