PluginProbe ʕ •ᴥ•ʔ
Brevo – Email, SMS, Web Push, Chat, and more. / 2.9.7
Brevo – Email, SMS, Web Push, Chat, and more. v2.9.7
2.9.13 2.9.14 2.9.15 2.9.16 2.9.17 2.9.18 2.9.4 2.9.5 2.9.6 2.9.7 2.9.8 2.9.9 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.9 3.1.0 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.2 3.1.20 3.1.21 3.1.22 3.1.23 3.1.24 3.1.25 3.1.26 3.1.27 3.1.28 3.1.29 3.1.3 3.1.30 3.1.31 3.1.32 3.1.33 3.1.34 3.1.35 3.1.36 3.1.37 3.1.38 3.1.39 3.1.4 3.1.40 3.1.41 3.1.42 3.1.43 3.1.44 3.1.45 3.1.46 3.1.47 3.1.48 3.1.49 3.1.5 3.1.50 3.1.51 3.1.52 3.1.53 3.1.54 3.1.55 3.1.56 3.1.57 3.1.58 3.1.59 3.1.6 3.1.60 3.1.61 3.1.62 3.1.63 3.1.64 3.1.65 3.1.66 3.1.67 3.1.68 3.1.69 3.1.7 3.1.70 3.1.71 3.1.72 3.1.73 3.1.74 3.1.75 3.1.76 3.1.77 3.1.78 3.1.79 3.1.8 3.1.80 3.1.81 3.1.82 3.1.83 3.1.84 3.1.85 3.1.86 3.1.87 3.1.88 3.1.89 3.1.9 3.1.90 3.1.91 3.1.92 3.1.93 3.1.94 3.1.95 3.1.96 3.1.97 3.1.98 3.2.0 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 trunk 1.0 1.5 2.0.8 2.9.10 2.9.11 2.9.12
mailin / model / model-lang.php
mailin / model Last commit date
index.php 11 years ago model-contacts.php 8 years ago model-forms.php 6 years ago model-lang.php 6 years ago model-users.php 6 years ago
model-lang.php
170 lines
1 <?php
2 /**
3 * Model class <i>SIB_Forms_Lang</i> represents forms language
4 *
5 * @package SIB_Model
6 */
7
8 if ( ! class_exists( 'SIB_Forms_Lang' ) ) {
9 /**
10 * Class SIB_Forms_Lang
11 */
12 class SIB_Forms_Lang {
13
14 /**
15 * Tab table name
16 */
17 const TABLE_NAME = 'sib_model_lang';
18
19 /** Create Table */
20 public static function createTable() {
21 global $wpdb;
22 // create list table.
23 $creation_query =
24 'CREATE TABLE IF NOT EXISTS ' . $wpdb->prefix . self::TABLE_NAME . ' (
25 `id` int(20) NOT NULL AUTO_INCREMENT,
26 `frmID` int(20) NOT NULL DEFAULT -1,
27 `pID` int(20) NOT NULL DEFAULT -1,
28 `lang` varchar(120),
29 PRIMARY KEY (`id`)
30 );';
31 require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
32 $wpdb->query($creation_query);
33 }
34
35 /**
36 * Remove table
37 */
38 public static function removeTable() {
39 global $wpdb;
40 $query = 'DROP TABLE IF EXISTS ' . $wpdb->prefix . self::TABLE_NAME . ';';
41 $wpdb->query( $query ); // db call ok; no-cache ok.
42 }
43
44 /**
45 * Get form ID by pid and language.
46 *
47 * @param int $pID - parent form ID.
48 * @param string $lang - language.
49 * @return null
50 */
51 public static function get_form_ID( $pID, $lang ) {
52 global $wpdb;
53 $query = "SHOW TABLES LIKE '" . $wpdb->prefix . self::TABLE_NAME . "'; ";
54 if ( $wpdb->get_var( $query ) == $wpdb->prefix . self::TABLE_NAME ) {
55 $sql = 'SELECT * FROM ' . $wpdb->prefix . self::TABLE_NAME . " WHERE pID ='" . $pID . "' AND lang='" . $lang . "'";
56 $results = $wpdb->get_row( $sql ); // db call ok; no-cache ok.
57 if ( ! empty( $results ) ) {
58 return $results->frmID;
59 } else {
60 return null;
61 }
62 } else {
63 return null;
64 }
65 }
66
67 /**
68 * Get form language by form id and parent id.
69 *
70 * @param int $frmID - form ID.
71 * @param int $pID - parent form ID.
72 * @return null
73 */
74 public static function get_lang( $frmID, $pID ) {
75 global $wpdb;
76 $query = "SHOW TABLES LIKE '" . $wpdb->prefix . self::TABLE_NAME . "'; ";
77 if ( $wpdb->get_var( $query ) == $wpdb->prefix . self::TABLE_NAME ) {
78 $sql = 'SELECT * FROM ' . $wpdb->prefix . self::TABLE_NAME . " WHERE frmID ='" . $frmID . "' AND pID='" . $pID . "'";
79 $results = $wpdb->get_row( $sql ); // db call ok; no-cache ok.
80 if ( ! empty( $results ) ) {
81 return $results->lang;
82 } else {
83 return null;
84 }
85 } else {
86 return null;
87 }
88 }
89
90 /**
91 * Add form
92 *
93 * @param int $frmID - form ID.
94 * @param int $pid - parent form ID.
95 * @param string $lang - language.
96 * @return null|string
97 */
98 public static function add_form_ID( $frmID, $pid, $lang ) {
99 // insert.
100 global $wpdb;
101 $query = 'INSERT INTO ' . $wpdb->prefix . self::TABLE_NAME . ' ';
102 $query .= '(frmID,pID,lang) ';
103 $query .= "VALUES ('{$frmID}','{$pid}','{$lang}')";
104 $wpdb->query( $query ); // db call ok; no-cache ok.
105 $index = $wpdb->get_var( 'SELECT LAST_INSERT_ID();' ); // db call ok; no-cache ok.
106 return $index;
107 }
108
109 /**
110 * Check if origin form or translated form
111 *
112 * @param int $frmID - form ID.
113 * @return bool
114 */
115 public static function check_form_trans( $frmID ) {
116 global $wpdb;
117 $query = "SHOW TABLES LIKE '" . $wpdb->prefix . self::TABLE_NAME . "'; ";
118 if ( $wpdb->get_var( $query ) == $wpdb->prefix . self::TABLE_NAME ) {
119 $sql = 'SELECT * FROM ' . $wpdb->prefix . self::TABLE_NAME . " WHERE frmID ='" . $frmID . "'";
120 $results = $wpdb->get_row( $sql ); // db call ok; no-cache ok.
121 if ( ! empty( $results ) ) {
122 return true;
123 } else {
124 return false;
125 }
126 } else {
127 return false;
128 }
129
130 }
131
132 /**
133 * Remove forms
134 *
135 * @param int $pID - parent form ID.
136 */
137 public static function remove_trans( $pID ) {
138 global $wpdb;
139 $query = "SHOW TABLES LIKE '" . $wpdb->prefix . self::TABLE_NAME . "'; ";
140 if ( $wpdb->get_var( $query ) == $wpdb->prefix . self::TABLE_NAME ) {
141 $query_forms = 'SELECT * FROM ' . $wpdb->prefix . self::TABLE_NAME . " WHERE pID='" . $pID . "'";
142 $trans = $wpdb->get_results( $query_forms ); // db call ok; no-cache ok.
143 if ( $trans ) {
144 foreach ( $trans as $tran ) {
145 SIB_Forms::deleteForm( $tran->frmID );
146 }
147 }
148 $wpdb->delete(
149 $wpdb->prefix . self::TABLE_NAME,
150 array(
151 'pID' => $pID,
152 )
153 );
154 }
155
156 }
157
158 /**
159 * Remove all translated forms
160 */
161 public static function remove_all_trans() {
162 global $wpdb;
163 $query = "SHOW TABLES LIKE '" . $wpdb->prefix . self::TABLE_NAME . "'; ";
164 if ( $wpdb->get_var( $query ) == $wpdb->prefix . self::TABLE_NAME ) {
165 $wpdb->query( 'TRUNCATE TABLE ' . $wpdb->prefix . self::TABLE_NAME );
166 }
167 }
168 }
169 }
170