Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
| Total | |
0.00% |
0 / 71 |
|
0.00% |
0 / 4 |
CRAP | |
0.00% |
0 / 1 |
| Robot | |
0.00% |
0 / 71 |
|
0.00% |
0 / 4 |
156 | |
0.00% |
0 / 1 |
| __construct | |
0.00% |
0 / 6 |
|
0.00% |
0 / 1 |
6 | |||
| getLoyaltyStores | |
0.00% |
0 / 7 |
|
0.00% |
0 / 1 |
30 | |||
| getLoyaltyGroups | |
0.00% |
0 / 6 |
|
0.00% |
0 / 1 |
12 | |||
| filterMessage | |
0.00% |
0 / 52 |
|
0.00% |
0 / 1 |
6 | |||
| 1 | <?php |
| 2 | |
| 3 | namespace BuyerKiosk\Core\Robot; |
| 4 | |
| 5 | class Robot { |
| 6 | public $globalDB; |
| 7 | public $storeArray; |
| 8 | public $storeGroupArray; |
| 9 | |
| 10 | public function __construct() |
| 11 | { |
| 12 | global $db_user, $db_pass, $db_name; |
| 13 | try { |
| 14 | $this->globalDB = new \PDO('mysql:host=localhost;dbname=' . $db_name . ';charset=utf8', $db_user, $db_pass); |
| 15 | } catch (\PDOException $e) { |
| 16 | echo "ERROR COULD NOT CONNECT (ERROR CODE: 1002)"; |
| 17 | echo $e->getMessage(); |
| 18 | } |
| 19 | $this->getLoyaltyGroups(); |
| 20 | } |
| 21 | public function getLoyaltyStores() { |
| 22 | try { |
| 23 | $stmt = $this->globalDB->query("SELECT typeNum, dbName FROM stores WHERE loyaltySystem = 1"); |
| 24 | while($row = $stmt->fetch(\PDO::FETCH_ASSOC)) { |
| 25 | $storeArray[$row['typeNum']] = $row['dbName']; |
| 26 | } |
| 27 | if(isset($storeArray) && count($storeArray) > 1) { |
| 28 | return true; |
| 29 | } |
| 30 | } catch (\PDOException $e) { |
| 31 | |
| 32 | } |
| 33 | return false; |
| 34 | } |
| 35 | public function getLoyaltyGroups() { |
| 36 | $storeGroupArray = []; |
| 37 | try { |
| 38 | $stmt = $this->globalDB->query("SELECT DISTINCT(storeGroup) FROM loyaltyTriggers GROUP BY storeGroup"); |
| 39 | while($row = $stmt->fetch(\PDO::FETCH_ASSOC)) { |
| 40 | $storeGroupArray[] = $row['storeGroup']; |
| 41 | } |
| 42 | $this->storeGroupArray = $storeGroupArray; |
| 43 | } catch (\PDOException $e) { |
| 44 | |
| 45 | } |
| 46 | } |
| 47 | public function filterMessage($message, $origin, $vars = null) { |
| 48 | $store = new \Store(); |
| 49 | $store->createStore($origin); |
| 50 | foreach ($vars as $key => $value) { |
| 51 | $message = str_replace($key, $value, $message); |
| 52 | } |
| 53 | $replace = [ |
| 54 | '<' => '', '>' => '', ''' => '', '&' => '', '’' => '\'', |
| 55 | '"' => '', 'À' => 'A', 'Á' => 'A', 'Â' => 'A', 'Ã' => 'A', 'Ä' => 'Ae', |
| 56 | 'Ä' => 'A', 'Å' => 'A', 'Ā' => 'A', 'Ą' => 'A', 'Ă' => 'A', 'Æ' => 'Ae', |
| 57 | 'Ç' => 'C', 'Ć' => 'C', 'Č' => 'C', 'Ĉ' => 'C', 'Ċ' => 'C', 'Ď' => 'D', 'Đ' => 'D', |
| 58 | 'Ð' => 'D', 'È' => 'E', 'É' => 'E', 'Ê' => 'E', 'Ë' => 'E', 'Ē' => 'E', |
| 59 | 'Ę' => 'E', 'Ě' => 'E', 'Ĕ' => 'E', 'Ė' => 'E', 'Ĝ' => 'G', 'Ğ' => 'G', |
| 60 | 'Ġ' => 'G', 'Ģ' => 'G', 'Ĥ' => 'H', 'Ħ' => 'H', 'Ì' => 'I', 'Í' => 'I', |
| 61 | 'Î' => 'I', 'Ï' => 'I', 'Ī' => 'I', 'Ĩ' => 'I', 'Ĭ' => 'I', 'Į' => 'I', |
| 62 | 'İ' => 'I', 'IJ' => 'IJ', 'Ĵ' => 'J', 'Ķ' => 'K', 'Ł' => 'K', 'Ľ' => 'K', |
| 63 | 'Ĺ' => 'K', 'Ļ' => 'K', 'Ŀ' => 'K', 'Ñ' => 'N', 'Ń' => 'N', 'Ň' => 'N', |
| 64 | 'Ņ' => 'N', 'Ŋ' => 'N', 'Ò' => 'O', 'Ó' => 'O', 'Ô' => 'O', 'Õ' => 'O', |
| 65 | 'Ö' => 'Oe', 'Ö' => 'Oe', 'Ø' => 'O', 'Ō' => 'O', 'Ő' => 'O', 'Ŏ' => 'O', |
| 66 | 'Œ' => 'OE', 'Ŕ' => 'R', 'Ř' => 'R', 'Ŗ' => 'R', 'Ś' => 'S', 'Š' => 'S', |
| 67 | 'Ş' => 'S', 'Ŝ' => 'S', 'Ș' => 'S', 'Ť' => 'T', 'Ţ' => 'T', 'Ŧ' => 'T', |
| 68 | 'Ț' => 'T', 'Ù' => 'U', 'Ú' => 'U', 'Û' => 'U', 'Ü' => 'Ue', 'Ū' => 'U', |
| 69 | 'Ü' => 'Ue', 'Ů' => 'U', 'Ű' => 'U', 'Ŭ' => 'U', 'Ũ' => 'U', 'Ų' => 'U', |
| 70 | 'Ŵ' => 'W', 'Ý' => 'Y', 'Ŷ' => 'Y', 'Ÿ' => 'Y', 'Ź' => 'Z', 'Ž' => 'Z', |
| 71 | 'Ż' => 'Z', 'Þ' => 'T', 'à' => 'a', 'á' => 'a', 'â' => 'a', 'ã' => 'a', |
| 72 | 'ä' => 'ae', 'ä' => 'ae', 'å' => 'a', 'ā' => 'a', 'ą' => 'a', 'ă' => 'a', |
| 73 | 'æ' => 'ae', 'ç' => 'c', 'ć' => 'c', 'č' => 'c', 'ĉ' => 'c', 'ċ' => 'c', |
| 74 | 'ď' => 'd', 'đ' => 'd', 'ð' => 'd', 'è' => 'e', 'é' => 'e', 'ê' => 'e', |
| 75 | 'ë' => 'e', 'ē' => 'e', 'ę' => 'e', 'ě' => 'e', 'ĕ' => 'e', 'ė' => 'e', |
| 76 | 'ƒ' => 'f', 'ĝ' => 'g', 'ğ' => 'g', 'ġ' => 'g', 'ģ' => 'g', 'ĥ' => 'h', |
| 77 | 'ħ' => 'h', 'ì' => 'i', 'í' => 'i', 'î' => 'i', 'ï' => 'i', 'ī' => 'i', |
| 78 | 'ĩ' => 'i', 'ĭ' => 'i', 'į' => 'i', 'ı' => 'i', 'ij' => 'ij', 'ĵ' => 'j', |
| 79 | 'ķ' => 'k', 'ĸ' => 'k', 'ł' => 'l', 'ľ' => 'l', 'ĺ' => 'l', 'ļ' => 'l', |
| 80 | 'ŀ' => 'l', 'ñ' => 'n', 'ń' => 'n', 'ň' => 'n', 'ņ' => 'n', 'ʼn' => 'n', |
| 81 | 'ŋ' => 'n', 'ò' => 'o', 'ó' => 'o', 'ô' => 'o', 'õ' => 'o', 'ö' => 'oe', |
| 82 | 'ö' => 'oe', 'ø' => 'o', 'ō' => 'o', 'ő' => 'o', 'ŏ' => 'o', 'œ' => 'oe', |
| 83 | 'ŕ' => 'r', 'ř' => 'r', 'ŗ' => 'r', 'š' => 's', 'ù' => 'u', 'ú' => 'u', |
| 84 | 'û' => 'u', 'ü' => 'ue', 'ū' => 'u', 'ü' => 'ue', 'ů' => 'u', 'ű' => 'u', |
| 85 | 'ŭ' => 'u', 'ũ' => 'u', 'ų' => 'u', 'ŵ' => 'w', 'ý' => 'y', 'ÿ' => 'y', |
| 86 | 'ŷ' => 'y', 'ž' => 'z', 'ż' => 'z', 'ź' => 'z', 'þ' => 't', 'ß' => 'ss', |
| 87 | 'ſ' => 'ss', 'ый' => 'iy', 'А' => 'A', 'Б' => 'B', 'В' => 'V', 'Г' => 'G', |
| 88 | 'Д' => 'D', 'Е' => 'E', 'Ё' => 'YO', 'Ж' => 'ZH', 'З' => 'Z', 'И' => 'I', |
| 89 | 'Й' => 'Y', 'К' => 'K', 'Л' => 'L', 'М' => 'M', 'Н' => 'N', 'О' => 'O', |
| 90 | 'П' => 'P', 'Р' => 'R', 'С' => 'S', 'Т' => 'T', 'У' => 'U', 'Ф' => 'F', |
| 91 | 'Х' => 'H', 'Ц' => 'C', 'Ч' => 'CH', 'Ш' => 'SH', 'Щ' => 'SCH', 'Ъ' => '', |
| 92 | 'Ы' => 'Y', 'Ь' => '', 'Э' => 'E', 'Ю' => 'YU', 'Я' => 'YA', 'а' => 'a', |
| 93 | 'б' => 'b', 'в' => 'v', 'г' => 'g', 'д' => 'd', 'е' => 'e', 'ё' => 'yo', |
| 94 | 'ж' => 'zh', 'з' => 'z', 'и' => 'i', 'й' => 'y', 'к' => 'k', 'л' => 'l', |
| 95 | 'м' => 'm', 'н' => 'n', 'о' => 'o', 'п' => 'p', 'р' => 'r', 'с' => 's', |
| 96 | 'т' => 't', 'у' => 'u', 'ф' => 'f', 'х' => 'h', 'ц' => 'c', 'ч' => 'ch', |
| 97 | 'ш' => 'sh', 'щ' => 'sch', 'ъ' => '', 'ы' => 'y', 'ь' => '', 'э' => 'e', |
| 98 | 'ю' => 'yu', 'я' => 'ya' |
| 99 | ]; |
| 100 | return strip_tags(str_replace(array_keys($replace), $replace, $message)); |
| 101 | } |
| 102 | } |