Quick Adsense - Version 2.6

Version Description

  • Vi Integration Removed
  • Plugin Ownership Change
  • Bring plugin opto date with latest Wordpress
Download this release

Release Info

Developer namith.jawahar
Plugin Icon 128x128 Quick Adsense
Version 2.6
Comparing to
See all releases

Code changes from version 2.5 to 2.6

includes/adsense.php CHANGED
@@ -74,7 +74,6 @@ function quick_adsense_adstxt_adsense_admin_notice_check() {
74
  if(isset($adminNotice) && ($adminNotice != '')) {
75
  echo '###SUCCESS###';
76
  echo $adminNotice;
77
- echo quick_adsense_vi_admin_notice_admin_footer();
78
  }
79
  die();
80
  }
74
  if(isset($adminNotice) && ($adminNotice != '')) {
75
  echo '###SUCCESS###';
76
  echo $adminNotice;
 
77
  }
78
  die();
79
  }
includes/api/vi-constants.php DELETED
@@ -1,444 +0,0 @@
1
- <?php
2
- function quick_adsense_vi_get_constant_fonts() {
3
- return array(
4
- array('text' => 'Select font family', 'value' => 'select'),
5
- array('text' => 'Georgia', 'value' => 'Georgia'),
6
- array('text' => 'Palatino Linotype', 'value' => 'Palatino Linotype'),
7
- array('text' => 'Times New Roman', 'value' => 'Times New Roman'),
8
- array('text' => 'Arial', 'value' => 'Arial'),
9
- array('text' => 'Arial Black', 'value' => 'Arial Black'),
10
- array('text' => 'Comic Sans MS', 'value' => 'Comic Sans MS'),
11
- array('text' => 'Impact', 'value' => 'Impact'),
12
- array('text' => 'Lucida Sans Unicode', 'value' => 'Lucida Sans Unicode'),
13
- array('text' => 'Tahoma', 'value' => 'Tahoma'),
14
- array('text' => 'Trebuchet MS', 'value' => 'Trebuchet MS'),
15
- array('text' => 'Verdana', 'value' => 'Verdana'),
16
- array('text' => 'Courier New', 'value' => 'Courier New'),
17
- array('text' => 'Lucida Console', 'value' => 'Lucida Console')
18
- );
19
- }
20
-
21
- function quick_adsense_vi_get_constant_font_sizes() {
22
- return array(
23
- array('text' => 'Select', 'value' => 'select'),
24
- array('text' => '8px', 'value' => '8'),
25
- array('text' => '9px', 'value' => '9'),
26
- array('text' => '10px', 'value' => '10'),
27
- array('text' => '11px', 'value' => '11'),
28
- array('text' => '12px', 'value' => '12'),
29
- array('text' => '14px', 'value' => '14'),
30
- array('text' => '16px', 'value' => '16'),
31
- array('text' => '18px', 'value' => '18'),
32
- array('text' => '20px', 'value' => '20'),
33
- array('text' => '22px', 'value' => '22'),
34
- array('text' => '24px', 'value' => '24'),
35
- array('text' => '26px', 'value' => '26'),
36
- array('text' => '28px', 'value' => '28'),
37
- array('text' => '36px', 'value' => '36')
38
- );
39
- }
40
-
41
- function quick_adsense_vi_get_constant_iab_parent_categories() {
42
- return array(
43
- array('text' => 'Select tier 1 category', 'value' => 'select'),
44
- array('text' => 'Arts & Entertainment', 'value' => 'IAB1'),
45
- array('text' => 'Automotive', 'value' => 'IAB2'),
46
- array('text' => 'Business', 'value' => 'IAB3'),
47
- array('text' => 'Careers', 'value' => 'IAB4'),
48
- array('text' => 'Education', 'value' => 'IAB5'),
49
- array('text' => 'Family & Parenting', 'value' => 'IAB6'),
50
- array('text' => 'Health & Fitness', 'value' => 'IAB7'),
51
- array('text' => 'Food & Drink', 'value' => 'IAB8'),
52
- array('text' => 'Hobbies & Interests', 'value' => 'IAB9'),
53
- array('text' => 'Home & Garden', 'value' => 'IAB10'),
54
- array('text' => 'Law, Gov’t & Politics', 'value' => 'IAB11'),
55
- array('text' => 'News', 'value' => 'IAB12'),
56
- array('text' => 'Personal Finance', 'value' => 'IAB13'),
57
- array('text' => 'Society', 'value' => 'IAB14'),
58
- array('text' => 'Science', 'value' => 'IAB15'),
59
- array('text' => 'Pets', 'value' => 'IAB16'),
60
- array('text' => 'Sports', 'value' => 'IAB17'),
61
- array('text' => 'Style & Fashion', 'value' => 'IAB18'),
62
- array('text' => 'Technology & Computing', 'value' => 'IAB19'),
63
- array('text' => 'Travel', 'value' => 'IAB20'),
64
- array('text' => 'Real Estate', 'value' => 'IAB21'),
65
- array('text' => 'Shopping', 'value' => 'IAB22'),
66
- array('text' => 'Religion & Spirituality', 'value' => 'IAB23'),
67
- array('text' => 'Uncategorized', 'value' => 'IAB24'),
68
- array('text' => 'Non-Standard Content', 'value' => 'IAB25'),
69
- array('text' => 'Illegal Content', 'value' => 'IAB26')
70
- );
71
- }
72
-
73
- function quick_adsense_vi_get_constant_iab_child_categories() {
74
- return array(
75
- array('text' => 'Select tier 2 category', 'value' => 'select'),
76
- array('text' => 'Books & Literature', 'value' => 'IAB1-1', 'metadata' => array('parent' => 'IAB1')),
77
- array('text' => 'Celebrity Fan/Gossip', 'value' => 'IAB1-2', 'metadata' => array('parent' => 'IAB1')),
78
- array('text' => 'Fine Art', 'value' => 'IAB1-3', 'metadata' => array('parent' => 'IAB1')),
79
- array('text' => 'Humor', 'value' => 'IAB1-4', 'metadata' => array('parent' => 'IAB1')),
80
- array('text' => 'Movies', 'value' => 'IAB1-5', 'metadata' => array('parent' => 'IAB1')),
81
- array('text' => 'Music', 'value' => 'IAB1-6', 'metadata' => array('parent' => 'IAB1')),
82
- array('text' => 'Television', 'value' => 'IAB1-7', 'metadata' => array('parent' => 'IAB1')),
83
- array('text' => 'Auto Parts', 'value' => 'IAB2-1', 'metadata' => array('parent' => 'IAB2')),
84
- array('text' => 'Auto Repair', 'value' => 'IAB2-2', 'metadata' => array('parent' => 'IAB2')),
85
- array('text' => 'Buying/Selling Cars', 'value' => 'IAB2-3', 'metadata' => array('parent' => 'IAB2')),
86
- array('text' => 'Car Culture', 'value' => 'IAB2-4', 'metadata' => array('parent' => 'IAB2')),
87
- array('text' => 'Certified Pre-Owned', 'value' => 'IAB2-5', 'metadata' => array('parent' => 'IAB2')),
88
- array('text' => 'Convertible', 'value' => 'IAB2-6', 'metadata' => array('parent' => 'IAB2')),
89
- array('text' => 'Coupe', 'value' => 'IAB2-7', 'metadata' => array('parent' => 'IAB2')),
90
- array('text' => 'Crossover', 'value' => 'IAB2-8', 'metadata' => array('parent' => 'IAB2')),
91
- array('text' => 'Diesel', 'value' => 'IAB2-9', 'metadata' => array('parent' => 'IAB2')),
92
- array('text' => 'Electric Vehicle', 'value' => 'IAB2-10', 'metadata' => array('parent' => 'IAB2')),
93
- array('text' => 'Hatchback', 'value' => 'IAB2-11', 'metadata' => array('parent' => 'IAB2')),
94
- array('text' => 'Hybrid', 'value' => 'IAB2-12', 'metadata' => array('parent' => 'IAB2')),
95
- array('text' => 'Luxury', 'value' => 'IAB2-13', 'metadata' => array('parent' => 'IAB2')),
96
- array('text' => 'MiniVan', 'value' => 'IAB2-14', 'metadata' => array('parent' => 'IAB2')),
97
- array('text' => 'Mororcycles', 'value' => 'IAB2-15', 'metadata' => array('parent' => 'IAB2')),
98
- array('text' => 'Off-Road Vehicles', 'value' => 'IAB2-16', 'metadata' => array('parent' => 'IAB2')),
99
- array('text' => 'Performance Vehicles', 'value' => 'IAB2-17', 'metadata' => array('parent' => 'IAB2')),
100
- array('text' => 'Pickup', 'value' => 'IAB2-18', 'metadata' => array('parent' => 'IAB2')),
101
- array('text' => 'Road-Side Assistance', 'value' => 'IAB2-19', 'metadata' => array('parent' => 'IAB2')),
102
- array('text' => 'Sedan', 'value' => 'IAB2-20', 'metadata' => array('parent' => 'IAB2')),
103
- array('text' => 'Trucks & Accessories', 'value' => 'IAB2-21', 'metadata' => array('parent' => 'IAB2')),
104
- array('text' => 'Vintage Cars', 'value' => 'IAB2-22', 'metadata' => array('parent' => 'IAB2')),
105
- array('text' => 'Wagon', 'value' => 'IAB2-23', 'metadata' => array('parent' => 'IAB2')),
106
- array('text' => 'Advertising', 'value' => 'IAB3-1', 'metadata' => array('parent' => 'IAB3')),
107
- array('text' => 'Agriculture', 'value' => 'IAB3-2', 'metadata' => array('parent' => 'IAB3')),
108
- array('text' => 'Biotech/Biomedical', 'value' => 'IAB3-3', 'metadata' => array('parent' => 'IAB3')),
109
- array('text' => 'Business Software', 'value' => 'IAB3-4', 'metadata' => array('parent' => 'IAB3')),
110
- array('text' => 'Construction', 'value' => 'IAB3-5', 'metadata' => array('parent' => 'IAB3')),
111
- array('text' => 'Forestry', 'value' => 'IAB3-6', 'metadata' => array('parent' => 'IAB3')),
112
- array('text' => 'Government', 'value' => 'IAB3-7', 'metadata' => array('parent' => 'IAB3')),
113
- array('text' => 'Green Solutions', 'value' => 'IAB3-8', 'metadata' => array('parent' => 'IAB3')),
114
- array('text' => 'Human Resources', 'value' => 'IAB3-9', 'metadata' => array('parent' => 'IAB3')),
115
- array('text' => 'Logistics', 'value' => 'IAB3-10', 'metadata' => array('parent' => 'IAB3')),
116
- array('text' => 'Marketing', 'value' => 'IAB3-11', 'metadata' => array('parent' => 'IAB3')),
117
- array('text' => 'Metals', 'value' => 'IAB3-12', 'metadata' => array('parent' => 'IAB3')),
118
- array('text' => 'Career Planning', 'value' => 'IAB4-1', 'metadata' => array('parent' => 'IAB4')),
119
- array('text' => 'College', 'value' => 'IAB4-2', 'metadata' => array('parent' => 'IAB4')),
120
- array('text' => 'Financial Aid', 'value' => 'IAB4-3', 'metadata' => array('parent' => 'IAB4')),
121
- array('text' => 'Job Fairs', 'value' => 'IAB4-4', 'metadata' => array('parent' => 'IAB4')),
122
- array('text' => 'Job Search', 'value' => 'IAB4-5', 'metadata' => array('parent' => 'IAB4')),
123
- array('text' => 'Resume Writing/Advice', 'value' => 'IAB4-6', 'metadata' => array('parent' => 'IAB4')),
124
- array('text' => 'Nursing', 'value' => 'IAB4-7', 'metadata' => array('parent' => 'IAB4')),
125
- array('text' => 'Scholarships', 'value' => 'IAB4-8', 'metadata' => array('parent' => 'IAB4')),
126
- array('text' => 'Telecommuting', 'value' => 'IAB4-9', 'metadata' => array('parent' => 'IAB4')),
127
- array('text' => 'U.S. Military', 'value' => 'IAB4-10', 'metadata' => array('parent' => 'IAB4')),
128
- array('text' => 'Career Advice', 'value' => 'IAB4-11', 'metadata' => array('parent' => 'IAB4')),
129
- array('text' => '7-12 Education', 'value' => 'IAB5-1', 'metadata' => array('parent' => 'IAB5')),
130
- array('text' => 'Adult Education', 'value' => 'IAB5-2', 'metadata' => array('parent' => 'IAB5')),
131
- array('text' => 'Art History', 'value' => 'IAB5-3', 'metadata' => array('parent' => 'IAB5')),
132
- array('text' => 'Colledge Administration', 'value' => 'IAB5-4', 'metadata' => array('parent' => 'IAB5')),
133
- array('text' => 'College Life', 'value' => 'IAB5-5', 'metadata' => array('parent' => 'IAB5')),
134
- array('text' => 'Distance Learning', 'value' => 'IAB5-6', 'metadata' => array('parent' => 'IAB5')),
135
- array('text' => 'English as a 2nd Language', 'value' => 'IAB5-7', 'metadata' => array('parent' => 'IAB5')),
136
- array('text' => 'Language Learning', 'value' => 'IAB5-8', 'metadata' => array('parent' => 'IAB5')),
137
- array('text' => 'Graduate School', 'value' => 'IAB5-9', 'metadata' => array('parent' => 'IAB5')),
138
- array('text' => 'Homeschooling', 'value' => 'IAB5-10', 'metadata' => array('parent' => 'IAB5')),
139
- array('text' => 'Homework/Study Tips', 'value' => 'IAB5-11', 'metadata' => array('parent' => 'IAB5')),
140
- array('text' => 'K-6 Educators', 'value' => 'IAB5-12', 'metadata' => array('parent' => 'IAB5')),
141
- array('text' => 'Private School', 'value' => 'IAB5-13', 'metadata' => array('parent' => 'IAB5')),
142
- array('text' => 'Special Education', 'value' => 'IAB5-14', 'metadata' => array('parent' => 'IAB5')),
143
- array('text' => 'Studying Business', 'value' => 'IAB5-15', 'metadata' => array('parent' => 'IAB5')),
144
- array('text' => 'Adoption', 'value' => 'IAB6-1', 'metadata' => array('parent' => 'IAB6')),
145
- array('text' => 'Babies & Toddlers', 'value' => 'IAB6-2', 'metadata' => array('parent' => 'IAB6')),
146
- array('text' => 'Daycare/Pre School', 'value' => 'IAB6-3', 'metadata' => array('parent' => 'IAB6')),
147
- array('text' => 'Family Internet', 'value' => 'IAB6-4', 'metadata' => array('parent' => 'IAB6')),
148
- array('text' => 'Parenting – K-6 Kids', 'value' => 'IAB6-5', 'metadata' => array('parent' => 'IAB6')),
149
- array('text' => 'Parenting teens', 'value' => 'IAB6-6', 'metadata' => array('parent' => 'IAB6')),
150
- array('text' => 'Pregnancy', 'value' => 'IAB6-7', 'metadata' => array('parent' => 'IAB6')),
151
- array('text' => 'Special Needs Kids', 'value' => 'IAB6-8', 'metadata' => array('parent' => 'IAB6')),
152
- array('text' => 'Eldercare', 'value' => 'IAB6-9', 'metadata' => array('parent' => 'IAB6')),
153
- array('text' => 'Exercise', 'value' => 'IAB7-1', 'metadata' => array('parent' => 'IAB7')),
154
- array('text' => 'A.D.D.', 'value' => 'IAB7-2', 'metadata' => array('parent' => 'IAB7')),
155
- array('text' => 'AIDS/HIV', 'value' => 'IAB7-3', 'metadata' => array('parent' => 'IAB7')),
156
- array('text' => 'Allergies', 'value' => 'IAB7-4', 'metadata' => array('parent' => 'IAB7')),
157
- array('text' => 'Alternative Medicine', 'value' => 'IAB7-5', 'metadata' => array('parent' => 'IAB7')),
158
- array('text' => 'Arthritis', 'value' => 'IAB7-6', 'metadata' => array('parent' => 'IAB7')),
159
- array('text' => 'Asthma', 'value' => 'IAB7-7', 'metadata' => array('parent' => 'IAB7')),
160
- array('text' => 'Autism/PDD', 'value' => 'IAB7-8', 'metadata' => array('parent' => 'IAB7')),
161
- array('text' => 'Bipolar Disorder', 'value' => 'IAB7-9', 'metadata' => array('parent' => 'IAB7')),
162
- array('text' => 'Brain Tumor', 'value' => 'IAB7-10', 'metadata' => array('parent' => 'IAB7')),
163
- array('text' => 'Cancer', 'value' => 'IAB7-11', 'metadata' => array('parent' => 'IAB7')),
164
- array('text' => 'Cholesterol', 'value' => 'IAB7-12', 'metadata' => array('parent' => 'IAB7')),
165
- array('text' => 'Chronic Fatigue Syndrome', 'value' => 'IAB7-13', 'metadata' => array('parent' => 'IAB7')),
166
- array('text' => 'Chronic Pain', 'value' => 'IAB7-14', 'metadata' => array('parent' => 'IAB7')),
167
- array('text' => 'Cold & Flu', 'value' => 'IAB7-15', 'metadata' => array('parent' => 'IAB7')),
168
- array('text' => 'Deafness', 'value' => 'IAB7-16', 'metadata' => array('parent' => 'IAB7')),
169
- array('text' => 'Dental Care', 'value' => 'IAB7-17', 'metadata' => array('parent' => 'IAB7')),
170
- array('text' => 'Depression', 'value' => 'IAB7-18', 'metadata' => array('parent' => 'IAB7')),
171
- array('text' => 'Dermatology', 'value' => 'IAB7-19', 'metadata' => array('parent' => 'IAB7')),
172
- array('text' => 'Diabetes', 'value' => 'IAB7-20', 'metadata' => array('parent' => 'IAB7')),
173
- array('text' => 'Epilepsy', 'value' => 'IAB7-21', 'metadata' => array('parent' => 'IAB7')),
174
- array('text' => 'GERD/Acid Reflux', 'value' => 'IAB7-22', 'metadata' => array('parent' => 'IAB7')),
175
- array('text' => 'Headaches/Migraines', 'value' => 'IAB7-23', 'metadata' => array('parent' => 'IAB7')),
176
- array('text' => 'Heart Disease', 'value' => 'IAB7-24', 'metadata' => array('parent' => 'IAB7')),
177
- array('text' => 'Herbs for Health', 'value' => 'IAB7-25', 'metadata' => array('parent' => 'IAB7')),
178
- array('text' => 'Holistic Healing', 'value' => 'IAB7-26', 'metadata' => array('parent' => 'IAB7')),
179
- array('text' => 'IBS/Crohn’s Disease', 'value' => 'IAB7-27', 'metadata' => array('parent' => 'IAB7')),
180
- array('text' => 'Incest/Abuse Support', 'value' => 'IAB7-28', 'metadata' => array('parent' => 'IAB7')),
181
- array('text' => 'Incontinence', 'value' => 'IAB7-29', 'metadata' => array('parent' => 'IAB7')),
182
- array('text' => 'Infertility', 'value' => 'IAB7-30', 'metadata' => array('parent' => 'IAB7')),
183
- array('text' => 'Men’s Health', 'value' => 'IAB7-31', 'metadata' => array('parent' => 'IAB7')),
184
- array('text' => 'Nutrition', 'value' => 'IAB7-32', 'metadata' => array('parent' => 'IAB7')),
185
- array('text' => 'Orthopedics', 'value' => 'IAB7-33', 'metadata' => array('parent' => 'IAB7')),
186
- array('text' => 'Panic/Anxiety Disorders', 'value' => 'IAB7-34', 'metadata' => array('parent' => 'IAB7')),
187
- array('text' => 'Pediatrics', 'value' => 'IAB7-35', 'metadata' => array('parent' => 'IAB7')),
188
- array('text' => 'Physical Therapy', 'value' => 'IAB7-36', 'metadata' => array('parent' => 'IAB7')),
189
- array('text' => 'Psychology/Psychiatry', 'value' => 'IAB7-37', 'metadata' => array('parent' => 'IAB7')),
190
- array('text' => 'Senor Health', 'value' => 'IAB7-38', 'metadata' => array('parent' => 'IAB7')),
191
- array('text' => 'Sexuality', 'value' => 'IAB7-39', 'metadata' => array('parent' => 'IAB7')),
192
- array('text' => 'Sleep Disorders', 'value' => 'IAB7-40', 'metadata' => array('parent' => 'IAB7')),
193
- array('text' => 'Smoking Cessation', 'value' => 'IAB7-41', 'metadata' => array('parent' => 'IAB7')),
194
- array('text' => 'Substance Abuse', 'value' => 'IAB7-42', 'metadata' => array('parent' => 'IAB7')),
195
- array('text' => 'Thyroid Disease', 'value' => 'IAB7-43', 'metadata' => array('parent' => 'IAB7')),
196
- array('text' => 'Weight Loss', 'value' => 'IAB7-44', 'metadata' => array('parent' => 'IAB7')),
197
- array('text' => 'Women’s Health', 'value' => 'IAB7-45', 'metadata' => array('parent' => 'IAB7')),
198
- array('text' => 'American Cuisine', 'value' => 'IAB8-1', 'metadata' => array('parent' => 'IAB8')),
199
- array('text' => 'Barbecues & Grilling', 'value' => 'IAB8-2', 'metadata' => array('parent' => 'IAB8')),
200
- array('text' => 'Cajun/Creole', 'value' => 'IAB8-3', 'metadata' => array('parent' => 'IAB8')),
201
- array('text' => 'Chinese Cuisine', 'value' => 'IAB8-4', 'metadata' => array('parent' => 'IAB8')),
202
- array('text' => 'Cocktails/Beer', 'value' => 'IAB8-5', 'metadata' => array('parent' => 'IAB8')),
203
- array('text' => 'Coffee/Tea', 'value' => 'IAB8-6', 'metadata' => array('parent' => 'IAB8')),
204
- array('text' => 'Cuisine-Specific', 'value' => 'IAB8-7', 'metadata' => array('parent' => 'IAB8')),
205
- array('text' => 'Desserts & Baking', 'value' => 'IAB8-8', 'metadata' => array('parent' => 'IAB8')),
206
- array('text' => 'Dining Out', 'value' => 'IAB8-9', 'metadata' => array('parent' => 'IAB8')),
207
- array('text' => 'Food Allergies', 'value' => 'IAB8-10', 'metadata' => array('parent' => 'IAB8')),
208
- array('text' => 'French Cuisine', 'value' => 'IAB8-11', 'metadata' => array('parent' => 'IAB8')),
209
- array('text' => 'Health/Lowfat Cooking', 'value' => 'IAB8-12', 'metadata' => array('parent' => 'IAB8')),
210
- array('text' => 'Italian Cuisine', 'value' => 'IAB8-13', 'metadata' => array('parent' => 'IAB8')),
211
- array('text' => 'Japanese Cuisine', 'value' => 'IAB8-14', 'metadata' => array('parent' => 'IAB8')),
212
- array('text' => 'Mexican Cuisine', 'value' => 'IAB8-15', 'metadata' => array('parent' => 'IAB8')),
213
- array('text' => 'Vegan', 'value' => 'IAB8-16', 'metadata' => array('parent' => 'IAB8')),
214
- array('text' => 'Vegetarian', 'value' => 'IAB8-17', 'metadata' => array('parent' => 'IAB8')),
215
- array('text' => 'Wine', 'value' => 'IAB8-18', 'metadata' => array('parent' => 'IAB8')),
216
- array('text' => 'Art/Technology', 'value' => 'IAB9-1', 'metadata' => array('parent' => 'IAB9')),
217
- array('text' => 'Arts & Crafts', 'value' => 'IAB9-2', 'metadata' => array('parent' => 'IAB9')),
218
- array('text' => 'Beadwork', 'value' => 'IAB9-3', 'metadata' => array('parent' => 'IAB9')),
219
- array('text' => 'Birdwatching', 'value' => 'IAB9-4', 'metadata' => array('parent' => 'IAB9')),
220
- array('text' => 'Board Games/Puzzles', 'value' => 'IAB9-5', 'metadata' => array('parent' => 'IAB9')),
221
- array('text' => 'Candle & Soap Making', 'value' => 'IAB9-6', 'metadata' => array('parent' => 'IAB9')),
222
- array('text' => 'Card Games', 'value' => 'IAB9-7', 'metadata' => array('parent' => 'IAB9')),
223
- array('text' => 'Chess', 'value' => 'IAB9-8', 'metadata' => array('parent' => 'IAB9')),
224
- array('text' => 'Cigars', 'value' => 'IAB9-9', 'metadata' => array('parent' => 'IAB9')),
225
- array('text' => 'Collecting', 'value' => 'IAB9-10', 'metadata' => array('parent' => 'IAB9')),
226
- array('text' => 'Comic Books', 'value' => 'IAB9-11', 'metadata' => array('parent' => 'IAB9')),
227
- array('text' => 'Drawing/Sketching', 'value' => 'IAB9-12', 'metadata' => array('parent' => 'IAB9')),
228
- array('text' => 'Freelance Writing', 'value' => 'IAB9-13', 'metadata' => array('parent' => 'IAB9')),
229
- array('text' => 'Genealogy', 'value' => 'IAB9-14', 'metadata' => array('parent' => 'IAB9')),
230
- array('text' => 'Getting Published', 'value' => 'IAB9-15', 'metadata' => array('parent' => 'IAB9')),
231
- array('text' => 'Guitar', 'value' => 'IAB9-16', 'metadata' => array('parent' => 'IAB9')),
232
- array('text' => 'Home Recording', 'value' => 'IAB9-17', 'metadata' => array('parent' => 'IAB9')),
233
- array('text' => 'Investors & Patents', 'value' => 'IAB9-18', 'metadata' => array('parent' => 'IAB9')),
234
- array('text' => 'Jewelry Making', 'value' => 'IAB9-19', 'metadata' => array('parent' => 'IAB9')),
235
- array('text' => 'Magic & Illusion', 'value' => 'IAB9-20', 'metadata' => array('parent' => 'IAB9')),
236
- array('text' => 'Needlework', 'value' => 'IAB9-21', 'metadata' => array('parent' => 'IAB9')),
237
- array('text' => 'Painting', 'value' => 'IAB9-22', 'metadata' => array('parent' => 'IAB9')),
238
- array('text' => 'Photography', 'value' => 'IAB9-23', 'metadata' => array('parent' => 'IAB9')),
239
- array('text' => 'Radio', 'value' => 'IAB9-24', 'metadata' => array('parent' => 'IAB9')),
240
- array('text' => 'Roleplaying Games', 'value' => 'IAB9-25', 'metadata' => array('parent' => 'IAB9')),
241
- array('text' => 'Sci-Fi & Fantasy', 'value' => 'IAB9-26', 'metadata' => array('parent' => 'IAB9')),
242
- array('text' => 'Scrapbooking', 'value' => 'IAB9-27', 'metadata' => array('parent' => 'IAB9')),
243
- array('text' => 'Screenwriting', 'value' => 'IAB9-28', 'metadata' => array('parent' => 'IAB9')),
244
- array('text' => 'Stamps & Coins', 'value' => 'IAB9-29', 'metadata' => array('parent' => 'IAB9')),
245
- array('text' => 'Video & Computer Games', 'value' => 'IAB9-30', 'metadata' => array('parent' => 'IAB9')),
246
- array('text' => 'Woodworking', 'value' => 'IAB9-31', 'metadata' => array('parent' => 'IAB9')),
247
- array('text' => 'Appliances', 'value' => 'IAB10-1', 'metadata' => array('parent' => 'IAB10')),
248
- array('text' => 'Entertaining', 'value' => 'IAB10-2', 'metadata' => array('parent' => 'IAB10')),
249
- array('text' => 'Environmental Safety', 'value' => 'IAB10-3', 'metadata' => array('parent' => 'IAB10')),
250
- array('text' => 'Gardening', 'value' => 'IAB10-4', 'metadata' => array('parent' => 'IAB10')),
251
- array('text' => 'Home Repair', 'value' => 'IAB10-5', 'metadata' => array('parent' => 'IAB10')),
252
- array('text' => 'Home Theater', 'value' => 'IAB10-6', 'metadata' => array('parent' => 'IAB10')),
253
- array('text' => 'Interior Decorating', 'value' => 'IAB10-7', 'metadata' => array('parent' => 'IAB10')),
254
- array('text' => 'Landscaping', 'value' => 'IAB10-8', 'metadata' => array('parent' => 'IAB10')),
255
- array('text' => 'Remodeling & Construction', 'value' => 'IAB10-9', 'metadata' => array('parent' => 'IAB10')),
256
- array('text' => 'Immigration', 'value' => 'IAB11-1', 'metadata' => array('parent' => 'IAB11')),
257
- array('text' => 'Legal Issues', 'value' => 'IAB11-2', 'metadata' => array('parent' => 'IAB11')),
258
- array('text' => 'U.S. Government Resources', 'value' => 'IAB11-3', 'metadata' => array('parent' => 'IAB11')),
259
- array('text' => 'Politics', 'value' => 'IAB11-4', 'metadata' => array('parent' => 'IAB11')),
260
- array('text' => 'Commentary', 'value' => 'IAB11-5', 'metadata' => array('parent' => 'IAB11')),
261
- array('text' => 'International News', 'value' => 'IAB12-1', 'metadata' => array('parent' => 'IAB12')),
262
- array('text' => 'National News', 'value' => 'IAB12-2', 'metadata' => array('parent' => 'IAB12')),
263
- array('text' => 'Local News', 'value' => 'IAB12-3', 'metadata' => array('parent' => 'IAB12')),
264
- array('text' => 'Beginning Investing', 'value' => 'IAB13-1', 'metadata' => array('parent' => 'IAB13')),
265
- array('text' => 'Credit/Debt & Loans', 'value' => 'IAB13-2', 'metadata' => array('parent' => 'IAB13')),
266
- array('text' => 'Financial News', 'value' => 'IAB13-3', 'metadata' => array('parent' => 'IAB13')),
267
- array('text' => 'Financial Planning', 'value' => 'IAB13-4', 'metadata' => array('parent' => 'IAB13')),
268
- array('text' => 'Hedge Fund', 'value' => 'IAB13-5', 'metadata' => array('parent' => 'IAB13')),
269
- array('text' => 'Insurance', 'value' => 'IAB13-6', 'metadata' => array('parent' => 'IAB13')),
270
- array('text' => 'Investing', 'value' => 'IAB13-7', 'metadata' => array('parent' => 'IAB13')),
271
- array('text' => 'Mutual Funds', 'value' => 'IAB13-8', 'metadata' => array('parent' => 'IAB13')),
272
- array('text' => 'Options', 'value' => 'IAB13-9', 'metadata' => array('parent' => 'IAB13')),
273
- array('text' => 'Retirement Planning', 'value' => 'IAB13-10', 'metadata' => array('parent' => 'IAB13')),
274
- array('text' => 'Stocks', 'value' => 'IAB13-11', 'metadata' => array('parent' => 'IAB13')),
275
- array('text' => 'Tax Planning', 'value' => 'IAB13-12', 'metadata' => array('parent' => 'IAB13')),
276
- array('text' => 'Dating', 'value' => 'IAB14-1', 'metadata' => array('parent' => 'IAB14')),
277
- array('text' => 'Divorce Support', 'value' => 'IAB14-2', 'metadata' => array('parent' => 'IAB14')),
278
- array('text' => 'Gay Life', 'value' => 'IAB14-3', 'metadata' => array('parent' => 'IAB14')),
279
- array('text' => 'Marriage', 'value' => 'IAB14-4', 'metadata' => array('parent' => 'IAB14')),
280
- array('text' => 'Senior Living', 'value' => 'IAB14-5', 'metadata' => array('parent' => 'IAB14')),
281
- array('text' => 'Teens', 'value' => 'IAB14-6', 'metadata' => array('parent' => 'IAB14')),
282
- array('text' => 'Weddings', 'value' => 'IAB14-7', 'metadata' => array('parent' => 'IAB14')),
283
- array('text' => 'Ethnic Specific', 'value' => 'IAB14-8', 'metadata' => array('parent' => 'IAB14')),
284
- array('text' => 'Astrology', 'value' => 'IAB15-1', 'metadata' => array('parent' => 'IAB15')),
285
- array('text' => 'Biology', 'value' => 'IAB15-2', 'metadata' => array('parent' => 'IAB15')),
286
- array('text' => 'Chemistry', 'value' => 'IAB15-3', 'metadata' => array('parent' => 'IAB15')),
287
- array('text' => 'Geology', 'value' => 'IAB15-4', 'metadata' => array('parent' => 'IAB15')),
288
- array('text' => 'Paranormal Phenomena', 'value' => 'IAB15-5', 'metadata' => array('parent' => 'IAB15')),
289
- array('text' => 'Physics', 'value' => 'IAB15-6', 'metadata' => array('parent' => 'IAB15')),
290
- array('text' => 'Space/Astronomy', 'value' => 'IAB15-7', 'metadata' => array('parent' => 'IAB15')),
291
- array('text' => 'Geography', 'value' => 'IAB15-8', 'metadata' => array('parent' => 'IAB15')),
292
- array('text' => 'Botany', 'value' => 'IAB15-9', 'metadata' => array('parent' => 'IAB15')),
293
- array('text' => 'Weather', 'value' => 'IAB15-10', 'metadata' => array('parent' => 'IAB15')),
294
- array('text' => 'Aquariums', 'value' => 'IAB16-1', 'metadata' => array('parent' => 'IAB16')),
295
- array('text' => 'Birds', 'value' => 'IAB16-2', 'metadata' => array('parent' => 'IAB16')),
296
- array('text' => 'Cats', 'value' => 'IAB16-3', 'metadata' => array('parent' => 'IAB16')),
297
- array('text' => 'Dogs', 'value' => 'IAB16-4', 'metadata' => array('parent' => 'IAB16')),
298
- array('text' => 'Large Animals', 'value' => 'IAB16-5', 'metadata' => array('parent' => 'IAB16')),
299
- array('text' => 'Reptiles', 'value' => 'IAB16-6', 'metadata' => array('parent' => 'IAB16')),
300
- array('text' => 'Veterinary Medicine', 'value' => 'IAB16-7', 'metadata' => array('parent' => 'IAB16')),
301
- array('text' => 'Auto Racing', 'value' => 'IAB17-1', 'metadata' => array('parent' => 'IAB17')),
302
- array('text' => 'Baseball', 'value' => 'IAB17-2', 'metadata' => array('parent' => 'IAB17')),
303
- array('text' => 'Bicycling', 'value' => 'IAB17-3', 'metadata' => array('parent' => 'IAB17')),
304
- array('text' => 'Bodybuilding', 'value' => 'IAB17-4', 'metadata' => array('parent' => 'IAB17')),
305
- array('text' => 'Boxing', 'value' => 'IAB17-5', 'metadata' => array('parent' => 'IAB17')),
306
- array('text' => 'Canoeing/Kayaking', 'value' => 'IAB17-6', 'metadata' => array('parent' => 'IAB17')),
307
- array('text' => 'Cheerleading', 'value' => 'IAB17-7', 'metadata' => array('parent' => 'IAB17')),
308
- array('text' => 'Climbing', 'value' => 'IAB17-8', 'metadata' => array('parent' => 'IAB17')),
309
- array('text' => 'Cricket', 'value' => 'IAB17-9', 'metadata' => array('parent' => 'IAB17')),
310
- array('text' => 'Figure Skating', 'value' => 'IAB17-10', 'metadata' => array('parent' => 'IAB17')),
311
- array('text' => 'Fly Fishing', 'value' => 'IAB17-11', 'metadata' => array('parent' => 'IAB17')),
312
- array('text' => 'Football', 'value' => 'IAB17-12', 'metadata' => array('parent' => 'IAB17')),
313
- array('text' => 'Freshwater Fishing', 'value' => 'IAB17-13', 'metadata' => array('parent' => 'IAB17')),
314
- array('text' => 'Game & Fish', 'value' => 'IAB17-14', 'metadata' => array('parent' => 'IAB17')),
315
- array('text' => 'Golf', 'value' => 'IAB17-15', 'metadata' => array('parent' => 'IAB17')),
316
- array('text' => 'Horse Racing', 'value' => 'IAB17-16', 'metadata' => array('parent' => 'IAB17')),
317
- array('text' => 'Horses', 'value' => 'IAB17-17', 'metadata' => array('parent' => 'IAB17')),
318
- array('text' => 'Hunting/Shooting', 'value' => 'IAB17-18', 'metadata' => array('parent' => 'IAB17')),
319
- array('text' => 'Inline Skating', 'value' => 'IAB17-19', 'metadata' => array('parent' => 'IAB17')),
320
- array('text' => 'Martial Arts', 'value' => 'IAB17-20', 'metadata' => array('parent' => 'IAB17')),
321
- array('text' => 'Mountain Biking', 'value' => 'IAB17-21', 'metadata' => array('parent' => 'IAB17')),
322
- array('text' => 'NASCAR Racing', 'value' => 'IAB17-22', 'metadata' => array('parent' => 'IAB17')),
323
- array('text' => 'Olympics', 'value' => 'IAB17-23', 'metadata' => array('parent' => 'IAB17')),
324
- array('text' => 'Paintball', 'value' => 'IAB17-24', 'metadata' => array('parent' => 'IAB17')),
325
- array('text' => 'Power & Motorcycles', 'value' => 'IAB17-25', 'metadata' => array('parent' => 'IAB17')),
326
- array('text' => 'Pro Basketball', 'value' => 'IAB17-26', 'metadata' => array('parent' => 'IAB17')),
327
- array('text' => 'Pro Ice Hockey', 'value' => 'IAB17-27', 'metadata' => array('parent' => 'IAB17')),
328
- array('text' => 'Rodeo', 'value' => 'IAB17-28', 'metadata' => array('parent' => 'IAB17')),
329
- array('text' => 'Rugby', 'value' => 'IAB17-29', 'metadata' => array('parent' => 'IAB17')),
330
- array('text' => 'Running/Jogging', 'value' => 'IAB17-30', 'metadata' => array('parent' => 'IAB17')),
331
- array('text' => 'Sailing', 'value' => 'IAB17-31', 'metadata' => array('parent' => 'IAB17')),
332
- array('text' => 'Saltwater Fishing', 'value' => 'IAB17-32', 'metadata' => array('parent' => 'IAB17')),
333
- array('text' => 'Scuba Diving', 'value' => 'IAB17-33', 'metadata' => array('parent' => 'IAB17')),
334
- array('text' => 'Skateboarding', 'value' => 'IAB17-34', 'metadata' => array('parent' => 'IAB17')),
335
- array('text' => 'Skiing', 'value' => 'IAB17-35', 'metadata' => array('parent' => 'IAB17')),
336
- array('text' => 'Snowboarding', 'value' => 'IAB17-36', 'metadata' => array('parent' => 'IAB17')),
337
- array('text' => 'Surfing/Bodyboarding', 'value' => 'IAB17-37', 'metadata' => array('parent' => 'IAB17')),
338
- array('text' => 'Swimming', 'value' => 'IAB17-38', 'metadata' => array('parent' => 'IAB17')),
339
- array('text' => 'Table Tennis/Ping-Pong', 'value' => 'IAB17-39', 'metadata' => array('parent' => 'IAB17')),
340
- array('text' => 'Tennis', 'value' => 'IAB17-40', 'metadata' => array('parent' => 'IAB17')),
341
- array('text' => 'Volleyball', 'value' => 'IAB17-41', 'metadata' => array('parent' => 'IAB17')),
342
- array('text' => 'Walking', 'value' => 'IAB17-42', 'metadata' => array('parent' => 'IAB17')),
343
- array('text' => 'Waterski/Wakeboard', 'value' => 'IAB17-43', 'metadata' => array('parent' => 'IAB17')),
344
- array('text' => 'World Soccer', 'value' => 'IAB17-44', 'metadata' => array('parent' => 'IAB17')),
345
- array('text' => 'Beauty', 'value' => 'IAB18-1', 'metadata' => array('parent' => 'IAB18')),
346
- array('text' => 'Body Art', 'value' => 'IAB18-2', 'metadata' => array('parent' => 'IAB18')),
347
- array('text' => 'Fashion', 'value' => 'IAB18-3', 'metadata' => array('parent' => 'IAB18')),
348
- array('text' => 'Jewelry', 'value' => 'IAB18-4', 'metadata' => array('parent' => 'IAB18')),
349
- array('text' => 'Clothing', 'value' => 'IAB18-5', 'metadata' => array('parent' => 'IAB18')),
350
- array('text' => 'Accessories', 'value' => 'IAB18-6', 'metadata' => array('parent' => 'IAB18')),
351
- array('text' => '3-D Graphics', 'value' => 'IAB19-1', 'metadata' => array('parent' => 'IAB19')),
352
- array('text' => 'Animation', 'value' => 'IAB19-2', 'metadata' => array('parent' => 'IAB19')),
353
- array('text' => 'Antivirus Software', 'value' => 'IAB19-3', 'metadata' => array('parent' => 'IAB19')),
354
- array('text' => 'C/C++', 'value' => 'IAB19-4', 'metadata' => array('parent' => 'IAB19')),
355
- array('text' => 'Cameras & Camcorders', 'value' => 'IAB19-5', 'metadata' => array('parent' => 'IAB19')),
356
- array('text' => 'Cell Phones', 'value' => 'IAB19-6', 'metadata' => array('parent' => 'IAB19')),
357
- array('text' => 'Computer Certification', 'value' => 'IAB19-7', 'metadata' => array('parent' => 'IAB19')),
358
- array('text' => 'Computer Networking', 'value' => 'IAB19-8', 'metadata' => array('parent' => 'IAB19')),
359
- array('text' => 'Computer Peripherals', 'value' => 'IAB19-9', 'metadata' => array('parent' => 'IAB19')),
360
- array('text' => 'Computer Reviews', 'value' => 'IAB19-10', 'metadata' => array('parent' => 'IAB19')),
361
- array('text' => 'Data Centers', 'value' => 'IAB19-11', 'metadata' => array('parent' => 'IAB19')),
362
- array('text' => 'Databases', 'value' => 'IAB19-12', 'metadata' => array('parent' => 'IAB19')),
363
- array('text' => 'Desktop Publishing', 'value' => 'IAB19-13', 'metadata' => array('parent' => 'IAB19')),
364
- array('text' => 'Desktop Video', 'value' => 'IAB19-14', 'metadata' => array('parent' => 'IAB19')),
365
- array('text' => 'Email', 'value' => 'IAB19-15', 'metadata' => array('parent' => 'IAB19')),
366
- array('text' => 'Graphics Software', 'value' => 'IAB19-16', 'metadata' => array('parent' => 'IAB19')),
367
- array('text' => 'Home Video/DVD', 'value' => 'IAB19-17', 'metadata' => array('parent' => 'IAB19')),
368
- array('text' => 'Internet Technology', 'value' => 'IAB19-18', 'metadata' => array('parent' => 'IAB19')),
369
- array('text' => 'Java', 'value' => 'IAB19-19', 'metadata' => array('parent' => 'IAB19')),
370
- array('text' => 'JavaScript', 'value' => 'IAB19-20', 'metadata' => array('parent' => 'IAB19')),
371
- array('text' => 'Mac Support', 'value' => 'IAB19-21', 'metadata' => array('parent' => 'IAB19')),
372
- array('text' => 'MP3/MIDI', 'value' => 'IAB19-22', 'metadata' => array('parent' => 'IAB19')),
373
- array('text' => 'Net Conferencing', 'value' => 'IAB19-23', 'metadata' => array('parent' => 'IAB19')),
374
- array('text' => 'Net for Beginners', 'value' => 'IAB19-24', 'metadata' => array('parent' => 'IAB19')),
375
- array('text' => 'Network Security', 'value' => 'IAB19-25', 'metadata' => array('parent' => 'IAB19')),
376
- array('text' => 'Palmtops/PDAs', 'value' => 'IAB19-26', 'metadata' => array('parent' => 'IAB19')),
377
- array('text' => 'PC Support', 'value' => 'IAB19-27', 'metadata' => array('parent' => 'IAB19')),
378
- array('text' => 'Portable', 'value' => 'IAB19-28', 'metadata' => array('parent' => 'IAB19')),
379
- array('text' => 'Entertainment', 'value' => 'IAB19-29', 'metadata' => array('parent' => 'IAB19')),
380
- array('text' => 'Shareware/Freeware', 'value' => 'IAB19-30', 'metadata' => array('parent' => 'IAB19')),
381
- array('text' => 'Unix', 'value' => 'IAB19-31', 'metadata' => array('parent' => 'IAB19')),
382
- array('text' => 'Visual Basic', 'value' => 'IAB19-32', 'metadata' => array('parent' => 'IAB19')),
383
- array('text' => 'Web Clip Art', 'value' => 'IAB19-33', 'metadata' => array('parent' => 'IAB19')),
384
- array('text' => 'Web Design/HTML', 'value' => 'IAB19-34', 'metadata' => array('parent' => 'IAB19')),
385
- array('text' => 'Web Search', 'value' => 'IAB19-35', 'metadata' => array('parent' => 'IAB19')),
386
- array('text' => 'Windows', 'value' => 'IAB19-36', 'metadata' => array('parent' => 'IAB19')),
387
- array('text' => 'Adventure Travel', 'value' => 'IAB20-1', 'metadata' => array('parent' => 'IAB20')),
388
- array('text' => 'Africa', 'value' => 'IAB20-2', 'metadata' => array('parent' => 'IAB20')),
389
- array('text' => 'Air Travel', 'value' => 'IAB20-3', 'metadata' => array('parent' => 'IAB20')),
390
- array('text' => 'Australia & New Zealand', 'value' => 'IAB20-4', 'metadata' => array('parent' => 'IAB20')),
391
- array('text' => 'Bed & Breakfasts', 'value' => 'IAB20-5', 'metadata' => array('parent' => 'IAB20')),
392
- array('text' => 'Budget Travel', 'value' => 'IAB20-6', 'metadata' => array('parent' => 'IAB20')),
393
- array('text' => 'Business Travel', 'value' => 'IAB20-7', 'metadata' => array('parent' => 'IAB20')),
394
- array('text' => 'By US Locale', 'value' => 'IAB20-8', 'metadata' => array('parent' => 'IAB20')),
395
- array('text' => 'Camping', 'value' => 'IAB20-9', 'metadata' => array('parent' => 'IAB20')),
396
- array('text' => 'Canada', 'value' => 'IAB20-10', 'metadata' => array('parent' => 'IAB20')),
397
- array('text' => 'Caribbean', 'value' => 'IAB20-11', 'metadata' => array('parent' => 'IAB20')),
398
- array('text' => 'Cruises', 'value' => 'IAB20-12', 'metadata' => array('parent' => 'IAB20')),
399
- array('text' => 'Eastern Europe', 'value' => 'IAB20-13', 'metadata' => array('parent' => 'IAB20')),
400
- array('text' => 'Europe', 'value' => 'IAB20-14', 'metadata' => array('parent' => 'IAB20')),
401
- array('text' => 'France', 'value' => 'IAB20-15', 'metadata' => array('parent' => 'IAB20')),
402
- array('text' => 'Greece', 'value' => 'IAB20-16', 'metadata' => array('parent' => 'IAB20')),
403
- array('text' => 'Honeymoons/Getaways', 'value' => 'IAB20-17', 'metadata' => array('parent' => 'IAB20')),
404
- array('text' => 'Hotels', 'value' => 'IAB20-18', 'metadata' => array('parent' => 'IAB20')),
405
- array('text' => 'Italy', 'value' => 'IAB20-19', 'metadata' => array('parent' => 'IAB20')),
406
- array('text' => 'Japan', 'value' => 'IAB20-20', 'metadata' => array('parent' => 'IAB20')),
407
- array('text' => 'Mexico & Central America', 'value' => 'IAB20-21', 'metadata' => array('parent' => 'IAB20')),
408
- array('text' => 'National Parks', 'value' => 'IAB20-22', 'metadata' => array('parent' => 'IAB20')),
409
- array('text' => 'South America', 'value' => 'IAB20-23', 'metadata' => array('parent' => 'IAB20')),
410
- array('text' => 'Spas', 'value' => 'IAB20-24', 'metadata' => array('parent' => 'IAB20')),
411
- array('text' => 'Theme Parks', 'value' => 'IAB20-25', 'metadata' => array('parent' => 'IAB20')),
412
- array('text' => 'Traveling with Kids', 'value' => 'IAB20-26', 'metadata' => array('parent' => 'IAB20')),
413
- array('text' => 'United Kingdom', 'value' => 'IAB20-27', 'metadata' => array('parent' => 'IAB20')),
414
- array('text' => 'Apartments', 'value' => 'IAB21-1', 'metadata' => array('parent' => 'IAB21')),
415
- array('text' => 'Architects', 'value' => 'IAB21-2', 'metadata' => array('parent' => 'IAB21')),
416
- array('text' => 'Buying/Selling Homes', 'value' => 'IAB21-3', 'metadata' => array('parent' => 'IAB21')),
417
- array('text' => 'Contests & Freebies', 'value' => 'IAB22-1', 'metadata' => array('parent' => 'IAB22')),
418
- array('text' => 'Couponing', 'value' => 'IAB22-2', 'metadata' => array('parent' => 'IAB22')),
419
- array('text' => 'Comparison', 'value' => 'IAB22-3', 'metadata' => array('parent' => 'IAB22')),
420
- array('text' => 'Engines', 'value' => 'IAB22-4', 'metadata' => array('parent' => 'IAB22')),
421
- array('text' => 'Alternative Religions', 'value' => 'IAB23-1', 'metadata' => array('parent' => 'IAB23')),
422
- array('text' => 'Atheism/Agnosticism', 'value' => 'IAB23-2', 'metadata' => array('parent' => 'IAB23')),
423
- array('text' => 'Buddhism', 'value' => 'IAB23-3', 'metadata' => array('parent' => 'IAB23')),
424
- array('text' => 'Catholicism', 'value' => 'IAB23-4', 'metadata' => array('parent' => 'IAB23')),
425
- array('text' => 'Christianity', 'value' => 'IAB23-5', 'metadata' => array('parent' => 'IAB23')),
426
- array('text' => 'Hinduism', 'value' => 'IAB23-6', 'metadata' => array('parent' => 'IAB23')),
427
- array('text' => 'Islam', 'value' => 'IAB23-7', 'metadata' => array('parent' => 'IAB23')),
428
- array('text' => 'Judaism', 'value' => 'IAB23-8', 'metadata' => array('parent' => 'IAB23')),
429
- array('text' => 'Latter-Day Saints', 'value' => 'IAB23-9', 'metadata' => array('parent' => 'IAB23')),
430
- array('text' => 'Pagan/Wiccan', 'value' => 'IAB23-10', 'metadata' => array('parent' => 'IAB23')),
431
- array('text' => 'Unmoderated UGC', 'value' => 'IAB25-1', 'metadata' => array('parent' => 'IAB25')),
432
- array('text' => 'Extreme Graphic/Explicit Violence', 'value' => 'IAB25-2', 'metadata' => array('parent' => 'IAB25')),
433
- array('text' => 'Pornography', 'value' => 'IAB25-3', 'metadata' => array('parent' => 'IAB25')),
434
- array('text' => 'Profane Content', 'value' => 'IAB25-4', 'metadata' => array('parent' => 'IAB25')),
435
- array('text' => 'Hate Content', 'value' => 'IAB25-5', 'metadata' => array('parent' => 'IAB25')),
436
- array('text' => 'Under Construction', 'value' => 'IAB25-6', 'metadata' => array('parent' => 'IAB25')),
437
- array('text' => 'Incentivized', 'value' => 'IAB25-7', 'metadata' => array('parent' => 'IAB25')),
438
- array('text' => 'Illegal Content', 'value' => 'IAB26-1', 'metadata' => array('parent' => 'IAB26')),
439
- array('text' => 'Warez', 'value' => 'IAB26-2', 'metadata' => array('parent' => 'IAB26')),
440
- array('text' => 'Spyware/Malware', 'value' => 'IAB26-3', 'metadata' => array('parent' => 'IAB26')),
441
- array('text' => 'Copyright Infringement', 'value' => 'IAB26-4', 'metadata' => array('parent' => 'IAB26'))
442
- );
443
- }
444
- ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
includes/api/vi.php DELETED
@@ -1,487 +0,0 @@
1
- <?php
2
- function quick_adsense_vi_api_get_settings() {
3
- $viSettings = get_transient('quick_adsense_vi_api_settings');
4
- if(($viSettings === false) || !is_array($viSettings)) {
5
- try {
6
- $response = wp_remote_get('https://dashboard-api.vidint.net/v1/api/widget/settings', array('timeout' => 15));
7
- if(!is_wp_error($response) && (200 == wp_remote_retrieve_response_code($response))) {
8
- $responseBody = json_decode($response['body']);
9
- //echo '<pre>'; print_r($responseBody->data); echo '</pre>';
10
- if((json_last_error() == JSON_ERROR_NONE) && ($responseBody->status == 'ok')) {
11
- $viSettings = array(
12
- 'signupURL' => $responseBody->data->signupURL,
13
- 'demoPageURL' => $responseBody->data->demoPageURL,
14
- 'iabCategoriesURL' => $responseBody->data->iabCategoriesURL,
15
- 'loginAPI' => $responseBody->data->loginAPI,
16
- 'directSellURL' => $responseBody->data->directSellURL,
17
- 'dashboardURL' => $responseBody->data->dashboardURL,
18
- 'revenueAPI' => $responseBody->data->revenueAPI,
19
- 'adsTxtAPI' => $responseBody->data->adsTxtAPI,
20
- 'languages' => $responseBody->data->languages,
21
- 'jsTagAPI' => $responseBody->data->jsTagAPI,
22
- 'vendorListURL' => $responseBody->data->vendorListURL,
23
- 'vendorListVersion' => $responseBody->data->vendorListVersion,
24
- 'consentPopupContent' => $responseBody->data->consentPopupContent,
25
- 'purposes' => $responseBody->data->purposes,
26
- );
27
- delete_transient('quick_adsense_vi_api_settings');
28
- set_transient('quick_adsense_vi_api_settings', $viSettings, WEEK_IN_SECONDS);
29
- } else {
30
- return false;
31
- }
32
- }
33
- } catch(Exception $ex) {
34
- return false;
35
- }
36
- }
37
- return $viSettings;
38
- }
39
-
40
- function quick_adsense_vi_api_reset_settings() {
41
- delete_transient('quick_adsense_vi_api_settings');
42
- }
43
-
44
- function quick_adsense_vi_api_get_signupurl() {
45
- $viSettings = quick_adsense_vi_api_get_settings();
46
- if(($viSettings != false) && is_array($viSettings)) {
47
- return $viSettings['signupURL'];
48
- }
49
- return false;
50
- }
51
-
52
- function quick_adsense_vi_api_get_dashboardurl() {
53
- $viSettings = quick_adsense_vi_api_get_settings();
54
- if(($viSettings != false) && is_array($viSettings)) {
55
- return $viSettings['dashboardURL'];
56
- }
57
- return false;
58
- }
59
-
60
- function quick_adsense_vi_api_get_iabCategoriesURL() {
61
- $viSettings = quick_adsense_vi_api_get_settings();
62
- if(($viSettings != false) && is_array($viSettings)) {
63
- return $viSettings['iabCategoriesURL'];
64
- }
65
- return false;
66
- }
67
-
68
- function quick_adsense_vi_api_get_languages() {
69
- $viSettings = quick_adsense_vi_api_get_settings();
70
- if(($viSettings != false) && is_array($viSettings)) {
71
- $languages = array();
72
- foreach($viSettings['languages'] as $language) {
73
- foreach($language as $key => $value) {
74
- $languages[$key] = $value;
75
- }
76
- }
77
- if(count($languages) > 0) {
78
- return $languages;
79
- } else {
80
- return false;
81
- }
82
- }
83
- return false;
84
- }
85
-
86
- function quick_adsense_vi_api_get_consent_popup_content() {
87
- $viSettings = quick_adsense_vi_api_get_settings();
88
- if(($viSettings != false) && is_array($viSettings)) {
89
- return $viSettings['consentPopupContent'];
90
- }
91
- return false;
92
- }
93
-
94
- function quick_adsense_vi_api_get_consent_purposes() {
95
- $viSettings = quick_adsense_vi_api_get_settings();
96
- if(($viSettings != false) && is_array($viSettings)) {
97
- return $viSettings['purposes'];
98
- }
99
- return false;
100
- }
101
-
102
- function quick_adsense_vi_api_get_adstxt_content() {
103
- $viSettings = quick_adsense_vi_api_get_settings();
104
- if(($viSettings != false) && is_array($viSettings)) {
105
- $viToken = quick_adsense_vi_api_get_publisher_token();
106
- if($viToken !== false) {
107
- try{
108
- $response = wp_remote_get(
109
- $viSettings['adsTxtAPI'],
110
- array(
111
- 'timeout' => 15,
112
- 'headers' => array(
113
- 'Content-Type' => 'application/json',
114
- 'Authorization' => $viToken
115
- )
116
- )
117
- );
118
- if(!is_wp_error($response)) {
119
- if(200 == wp_remote_retrieve_response_code($response)) {
120
- $responseBody = json_decode($response['body']);
121
- if((json_last_error() == JSON_ERROR_NONE) && ($responseBody->status == 'ok')) {
122
- return $responseBody->data;
123
- } else {
124
- return false;
125
- }
126
- } else {
127
- return false;
128
- }
129
- }
130
- } catch(Exception $ex) {
131
- return false;
132
- }
133
- } else {
134
- return false;
135
- }
136
- } else {
137
- return false;
138
- }
139
- }
140
-
141
- function quick_adsense_vi_api_login($email, $password) {
142
- if(($email != '') && ($password != '')) {
143
- $viSettings = quick_adsense_vi_api_get_settings();
144
- if(($viSettings != false) && is_array($viSettings)) {
145
- try {
146
- $response = wp_remote_post(
147
- $viSettings['loginAPI'],
148
- array(
149
- 'timeout' => 15,
150
- 'headers' => array(
151
- 'Content-Type' => 'application/json'
152
- ),
153
- 'body' => json_encode(array(
154
- 'email' => $email,
155
- 'password' => $password,
156
- ))
157
- )
158
- );
159
- if(!is_wp_error($response)) {
160
- if(401 == wp_remote_retrieve_response_code($response)) {
161
- $responseBody = json_decode($response['body']);
162
- if((json_last_error() == JSON_ERROR_NONE) && ($responseBody->status == 'error')) {
163
- return array(
164
- 'status' => 'error',
165
- 'errorCode' => 'WIVI008',
166
- 'message' => $responseBody->error->message.':'.$responseBody->error->description.'',
167
- );
168
- } else {
169
- return array(
170
- 'status' => 'error',
171
- 'errorCode' => 'WIVI007',
172
- 'message' => 'Response JSON error, Please try again later!',
173
- );
174
- }
175
- } else if(200 == wp_remote_retrieve_response_code($response)) {
176
- $responseBody = json_decode($response['body']);
177
- if((json_last_error() == JSON_ERROR_NONE) && ($responseBody->status == 'ok')) {
178
- $viToken = $responseBody->data;
179
- delete_transient('quick_adsense_vi_api_authetication_token');
180
- set_transient('quick_adsense_vi_api_authetication_token', $viToken, MONTH_IN_SECONDS);
181
- } else {
182
- return array(
183
- 'status' => 'error',
184
- 'errorCode' => 'WIVI006',
185
- 'message' => 'Response JSON error!',
186
- );
187
- }
188
- } else {
189
- return array(
190
- 'status' => 'error',
191
- 'errorCode' => 'WIVI005',
192
- 'message' => 'Unknown response code',
193
- );
194
- }
195
- } else {
196
- return array(
197
- 'status' => 'error',
198
- 'errorCode' => 'WIVI004',
199
- 'message' => 'API response error',
200
- );
201
- }
202
- } catch(Exception $ex) {
203
- return array(
204
- 'status' => 'error',
205
- 'errorCode' => 'WIVI003',
206
- 'message' => 'Exception during API communication',
207
- );
208
- }
209
- } else {
210
- return array(
211
- 'status' => 'error',
212
- 'errorCode' => 'WIVI002',
213
- 'message' => 'API is unreachable',
214
- );
215
- }
216
- } else {
217
- return array(
218
- 'status' => 'error',
219
- 'errorCode' => 'WIVI001',
220
- 'message' => 'Email / Password is Empty!',
221
- );
222
- }
223
- return $viToken;
224
- }
225
-
226
- function quick_adsense_vi_api_logout() {
227
- delete_transient('quick_adsense_vi_api_authetication_token');
228
- //delete_transient('quick_adsense_vi_api_settings');
229
- }
230
-
231
- function quick_adsense_vi_api_get_publisher_id() {
232
- $viToken = get_transient('quick_adsense_vi_api_authetication_token');
233
- if($viToken === false) {
234
- return false;
235
- }
236
- $viToken = explode('.', $viToken);
237
- $viToken = base64_decode($viToken[1]);
238
- $viToken = json_decode($viToken);
239
- if(json_last_error() == JSON_ERROR_NONE) {
240
- return $viToken->publisherId;
241
- }
242
- return false;
243
- }
244
-
245
- function quick_adsense_vi_api_get_publisher_token() {
246
- $viToken = get_transient('quick_adsense_vi_api_authetication_token');
247
- if($viToken === false) {
248
- return false;
249
- }
250
- return $viToken;
251
- }
252
-
253
- function quick_adsense_vi_api_is_loggedin() {
254
- $viToken = get_transient('quick_adsense_vi_api_authetication_token');
255
- if($viToken === false) {
256
- return false;
257
- }
258
- return true;
259
- }
260
-
261
- function quick_adsense_vi_api_get_revenue_data() {
262
- $viSettings = quick_adsense_vi_api_get_settings();
263
- if(($viSettings != false) && is_array($viSettings)) {
264
- $viToken = quick_adsense_vi_api_get_publisher_token();
265
- if($viToken !== false) {
266
- try{
267
- $response = wp_remote_get(
268
- $viSettings['revenueAPI'],
269
- array(
270
- 'timeout' => 15,
271
- 'headers' => array(
272
- 'Content-Type' => 'application/json',
273
- 'Authorization' => $viToken
274
- )
275
- )
276
- );
277
- if(!is_wp_error($response)) {
278
- if(200 == wp_remote_retrieve_response_code($response)) {
279
- $responseBody = json_decode($response['body']);
280
- if((json_last_error() == JSON_ERROR_NONE) && ($responseBody->status == 'ok')) {
281
- return json_decode(json_encode($responseBody->data), True);
282
- } else {
283
- return false;
284
- }
285
- } else {
286
- return false;
287
- }
288
- }
289
- } catch(Exception $ex) {
290
- return false;
291
- }
292
- } else {
293
- return false;
294
- }
295
- } else {
296
- return false;
297
- }
298
- }
299
-
300
- function quick_adsense_vi_api_set_vi_code($args = null) {
301
- $domain = quick_adsense_get_domain_name_from_url(get_bloginfo('url'));
302
- $selectedArgs = array();
303
- $selectedArgs['domain'] = $domain;
304
- $selectedArgs['divId'] = 'quick_adsense_vi_ad';
305
-
306
- if(isset($args) && is_array($args)) {
307
- if(isset($args['ad_unit_type']) && ($args['ad_unit_type'] != '') && ($args['ad_unit_type'] != 'select') && ($args['ad_unit_type'] != 'undefined')) {
308
- $selectedArgs['adUnitType'] = $args['ad_unit_type'];
309
- } else {
310
- $selectedArgs['adUnitType'] = 'NATIVE_VIDEO_UNIT';
311
- }
312
-
313
- if(isset($args['language']) && ($args['language'] != '') && ($args['language'] != 'select') && ($args['language'] != 'undefined')) {
314
- $selectedArgs['language'] = $args['language'];
315
- }
316
-
317
- if(isset($args['iab_category_child']) && ($args['iab_category_child'] != '') && ($args['iab_category_child'] != 'select') && ($args['iab_category_child'] != 'undefined')) {
318
- $selectedArgs['iabCategory'] = $args['iab_category_child'];
319
- }
320
-
321
- if(isset($args['font_family']) && ($args['font_family'] != '') && ($args['font_family'] != 'select') && ($args['font_family'] != 'undefined')) {
322
- $selectedArgs['font'] = $args['font_family'];
323
- }
324
-
325
- if(isset($args['font_size']) && ($args['font_size'] != '') && ($args['font_size'] != 'select') && ($args['font_size'] != 'undefined')) {
326
- $selectedArgs['fontSize'] = $args['font_size'];
327
- }
328
-
329
- if(isset($args['keywords']) && ($args['keywords'] != '') && ($args['keywords'] != 'undefined')) {
330
- $selectedArgs['keywords'] = $args['keywords'];
331
- } else { //Send the keywords field even if it is empty
332
- $selectedArgs['keywords'] = '';
333
- }
334
-
335
- if(isset($args['native_text_color']) && ($args['native_text_color'] != '') && ($args['native_text_color'] != 'undefined')) {
336
- $selectedArgs['textColor'] = $args['native_text_color'];
337
- }
338
-
339
- if(isset($args['native_bg_color']) && ($args['native_bg_color'] != '') && ($args['native_bg_color'] != 'undefined')) {
340
- $selectedArgs['backgroundColor'] = $args['native_bg_color'];
341
- }
342
- }
343
-
344
- $viSettings = quick_adsense_vi_api_get_settings();
345
- if(($viSettings != false) && is_array($viSettings)) {
346
- $viToken = quick_adsense_vi_api_get_publisher_token();
347
- if($viToken !== false) {
348
- try{
349
- $response = wp_remote_request(
350
- $viSettings['jsTagAPI'],
351
- array(
352
- 'method' => 'POST',
353
- 'timeout' => 15,
354
- 'headers' => array(
355
- 'Content-Type' => 'application/json',
356
- 'Authorization' => $viToken
357
- ),
358
- 'body' => json_encode($selectedArgs)
359
- )
360
- );
361
- if(!is_wp_error($response)) {
362
- if(400 == wp_remote_retrieve_response_code($response)) {
363
- $responseBody = json_decode($response['body']);
364
- if((json_last_error() == JSON_ERROR_NONE) && ($responseBody->status == 'error')) {
365
- return array(
366
- 'status' => 'error',
367
- 'errorCode' => 'WIVI108',
368
- 'message' => $responseBody->error->description,
369
- );
370
- } else {
371
- return array(
372
- 'status' => 'error',
373
- 'errorCode' => 'WIVI107',
374
- 'message' => 'Response JSON error, Please try again later!',
375
- );
376
- }
377
- } else if(201 == wp_remote_retrieve_response_code($response)) {
378
- $responseBody = json_decode($response['body']);
379
- if((json_last_error() == JSON_ERROR_NONE) && ($responseBody->status == 'ok')) {
380
- delete_transient('quick_adsense_vi_api_jstag');
381
- set_transient('quick_adsense_vi_api_jstag', $responseBody->data, YEAR_IN_SECONDS);
382
- return $responseBody->data;
383
- } else {
384
- return array(
385
- 'status' => 'error',
386
- 'errorCode' => 'WIVI106',
387
- 'message' => 'Response JSON error!',
388
- );
389
- }
390
- } else {
391
- return array(
392
- 'status' => 'error',
393
- 'errorCode' => 'WIVI105',
394
- 'message' => 'Unknown response code',
395
- );
396
- }
397
- }
398
- } catch(Exception $ex) {
399
- return array(
400
- 'status' => 'error',
401
- 'errorCode' => 'WIVI103',
402
- 'message' => 'Exception during API communication',
403
- );
404
- }
405
- } else {
406
- return array(
407
- 'status' => 'error',
408
- 'errorCode' => 'WIVI102',
409
- 'message' => 'Authorization Token is Missing',
410
- );
411
- }
412
- } else {
413
- return array(
414
- 'status' => 'error',
415
- 'errorCode' => 'WIVI109',
416
- 'message' => 'Defaults Not Set',
417
- );
418
- }
419
- }
420
-
421
- function quick_adsense_vi_api_get_vi_code($settingsKey = '') {
422
- $jsTag = get_transient('quick_adsense_vi_api_jstag');
423
- if(($jsTag === false) || ($jsTag == '') || is_array($jsTag)) {
424
- if($settingsKey != '') {
425
- $vicodeSettings = get_option($settingsKey);
426
- $jsTag = quick_adsense_vi_api_set_vi_code($vicodeSettings);
427
- } else {
428
- $jsTag = quick_adsense_vi_api_set_vi_code();
429
- }
430
- if(($jsTag === false) || ($jsTag == '') || is_array($jsTag)) {
431
- return false;
432
- }
433
- }
434
- return '<script type="text/javascript">'.$jsTag.'</script>';
435
- }
436
-
437
- function quick_adsense_vi_api_is_eu() {
438
- $userIp = $_SERVER["REMOTE_ADDR"];
439
- //$userIp = '185.216.33.82';
440
- $isEU = get_transient('quick_adsense_vi_api_is_eu_'.$userIp);
441
- if($isEU === false) {
442
- try{
443
- $response = wp_remote_get(
444
- 'http://gdpr-check.net/gdpr/is-eu?ip='.$userIp,
445
- array('timeout' => 15)
446
- );
447
- if(!is_wp_error($response)) {
448
- if(200 == wp_remote_retrieve_response_code($response)) {
449
- $responseBody = json_decode($response['body']);
450
- if((json_last_error() == JSON_ERROR_NONE)) {
451
- if((isset($responseBody->is_eu)) && ($responseBody->is_eu == '1')) {
452
- delete_transient('quick_adsense_vi_api_is_eu_'.$userIp);
453
- set_transient('quick_adsense_vi_api_is_eu_'.$userIp, '1', WEEK_IN_SECONDS);
454
- return true;
455
- } else {
456
- delete_transient('quick_adsense_vi_api_is_eu_'.$userIp);
457
- set_transient('quick_adsense_vi_api_is_eu_'.$userIp, '0', WEEK_IN_SECONDS);
458
- return false;
459
- }
460
- } else {
461
- return false;
462
- }
463
- } else {
464
- return false;
465
- }
466
- }
467
- } catch(Exception $ex) {
468
- return false;
469
- }
470
- } else {
471
- if($isEU == '1') {
472
- return true;
473
- } else {
474
- return false;
475
- }
476
-
477
- }
478
- }
479
-
480
- function quick_adsense_vi_api_get_vendor_list_version() {
481
- $viSettings = quick_adsense_vi_api_get_settings();
482
- if(($viSettings != false) && is_array($viSettings)) {
483
- return $viSettings['vendorListVersion'];
484
- }
485
- return false;
486
- }
487
- ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
includes/content.php CHANGED
@@ -75,8 +75,6 @@ function quick_adsense_the_content($content) {
75
  $quickAdsenseAdsIdCus = array();
76
  $cusads = 'CusAds';
77
  $cusrnd = 'CusRnd';
78
- $cusadsvi = 'CusAdsVi';
79
- $cusrndvi = 'CusRndVi';
80
 
81
  $quickAdsenseEnablePositionAfterMoreTag = ((isset($settings['enable_position_after_more_tag']))?$settings['enable_position_after_more_tag']:'');
82
  $quickAdsenseAdAfterMoreTag = ((isset($settings['ad_after_more_tag']))?$settings['ad_after_more_tag']:'');
@@ -108,9 +106,9 @@ function quick_adsense_the_content($content) {
108
  }
109
 
110
  if($quickAdsenseAdBeginningOfPost == 0) {
111
- $quickAdsenseAdBeginningOfPostStandIn = $cusrndvi;
112
  } else {
113
- $quickAdsenseAdBeginningOfPostStandIn = $cusadsvi.$quickAdsenseAdBeginningOfPost;
114
  array_push($quickAdsenseAdsIdCus, $quickAdsenseAdBeginningOfPost);
115
  };
116
  if($quickAdsenseAdAfterMoreTag == 0) {
@@ -120,9 +118,9 @@ function quick_adsense_the_content($content) {
120
  array_push($quickAdsenseAdsIdCus, $quickAdsenseAdAfterMoreTag);
121
  };
122
  if($quickAdsenseAdMiddleOfPost == 0) {
123
- $quickAdsenseAdMiddleOfPostStandIn = $cusrndvi;
124
  } else {
125
- $quickAdsenseAdMiddleOfPostStandIn = $cusadsvi.$quickAdsenseAdMiddleOfPost;
126
  array_push($quickAdsenseAdsIdCus, $quickAdsenseAdMiddleOfPost);
127
  };
128
  if($quickAdsenseAdBeforeLastPara == 0) {
@@ -241,8 +239,8 @@ function quick_adsense_the_content($content) {
241
  if(!$offdef) {
242
  for($i = 1; $i <= count($quickAdsenseAdsIdCus); $i++) {
243
  if($showall || !$ismany || $quickAdsenseBeginEnd != $i) {
244
- if(((strpos($content, '<!--'.$cusadsvi.$quickAdsenseAdsIdCus[$i-1].'-->') !== false) || (strpos($content, '<!--'.$cusads.$quickAdsenseAdsIdCus[$i-1].'-->') !== false)) && in_array($quickAdsenseAdsIdCus[$i-1], $quickAdsenseAdsId)) {
245
- $content = quick_adsense_content_replace_ads($content, $cusadsvi.$quickAdsenseAdsIdCus[$i-1], $quickAdsenseAdsIdCus[$i-1]);
246
  $content = quick_adsense_content_replace_ads($content, $cusads.$quickAdsenseAdsIdCus[$i-1], $quickAdsenseAdsIdCus[$i-1]);
247
  $quickAdsenseAdsId = quick_adsense_content_del_element($quickAdsenseAdsId, array_search($quickAdsenseAdsIdCus[$i-1], $quickAdsenseAdsId)) ;
248
  $quickAdsenseAdsDisplayed += 1;
@@ -276,14 +274,14 @@ function quick_adsense_the_content($content) {
276
  }
277
  }
278
 
279
- if((strpos($content, '<!--'.$cusrndvi.'-->') !== false) && ($showall || !$ismany)) {
280
- $j = substr_count($content, '<!--'.$cusrndvi.'-->');
281
  for($i = count($quickAdsenseAdsId); $i <= $j-1; $i++) {
282
  array_push($quickAdsenseAdsId, -1);
283
  }
284
  shuffle($quickAdsenseAdsId);
285
  for($i = 1; $i <= $j; $i++) {
286
- $content = quick_adsense_content_replace_ads($content, $cusrndvi, $quickAdsenseAdsId[0]);
287
  $quickAdsenseAdsId = quick_adsense_content_del_element($quickAdsenseAdsId, 0) ;
288
  $quickAdsenseAdsDisplayed += 1;
289
  if(($quickAdsenseAdsDisplayed >= $quickAdsenseAdsToDisplay) || !count($quickAdsenseAdsId)) {
@@ -425,32 +423,14 @@ function quick_adsense_content_replace_ads($content, $quicktag, $adIndex) {
425
  'float: none; margin:0px;'
426
  );
427
 
428
- if(strpos($quicktag, 'Vi') !== false ) {
429
- if(($adIndex != -1) && ($adIndex != 100)) {
430
- $onpostAdAlignment = ((isset($settings['onpost_ad_'.$adIndex.'_alignment']))?$settings['onpost_ad_'.$adIndex.'_alignment']:'');
431
- $onpostAdMargin = ((isset($settings['onpost_ad_'.$adIndex.'_margin']))?$settings['onpost_ad_'.$adIndex.'_margin']:'');
432
- $onpostAdStyle = sprintf($onpostAdStyles[(int)$onpostAdAlignment], $onpostAdMargin);
433
- $onpostAdCode = ((isset($settings['onpost_ad_'.$adIndex.'_content']))?$settings['onpost_ad_'.$adIndex.'_content']:'');
434
- $onpostAdCode = "\n".'<!-- Quick Adsense Wordpress Plugin: http://quickadsense.com/ -->'."\n".'<div class="'.md5(get_bloginfo('url')).'" data-index="'.$adIndex.'" style="'.$onpostAdStyle.'">'."\n".$onpostAdCode."\n".'</div>'."\n";
435
- } else if($adIndex == 100) {
436
- $onpostAdCode = "\n".'<!-- Quick Adsense Wordpress Plugin: http://quickadsense.com/ -->'."\n".'<div style="float: none; margin: 10px auto; text-align: center;">'."\n".'<div id="quick_adsense_vi_ad">'.quick_adsense_vi_api_get_vi_code('quick_adsense_vi_code_settings').'</div>'."\n".'</div>'."\n";
437
- $viWidthCheck = get_option('quick_adsense_vi_width_check_dismissed');
438
- if(!$viWidthCheck) {
439
- $onpostAdCode .= "\n".'<input id="quick_adsense_vi_width_check_url" type="hidden" value="'.get_bloginfo('url').'" /><input id="quick_adsense_vi_width_check_auth" type="hidden" value="'.wp_create_nonce('quick_adsense_vi_width_check').'" /><script type="text/javascript" src="'.plugins_url('/js/vi-check.js', __FILE__).'">'."\n".'</script>'."\n";
440
- }
441
- } else {
442
- $onpostAdCode = '';
443
- }
444
  } else {
445
- if(($adIndex != -1)) {
446
- $onpostAdAlignment = ((isset($settings['onpost_ad_'.$adIndex.'_alignment']))?$settings['onpost_ad_'.$adIndex.'_alignment']:'');
447
- $onpostAdMargin = ((isset($settings['onpost_ad_'.$adIndex.'_margin']))?$settings['onpost_ad_'.$adIndex.'_margin']:'');
448
- $onpostAdStyle = sprintf($onpostAdStyles[(int)$onpostAdAlignment], $onpostAdMargin);
449
- $onpostAdCode = ((isset($settings['onpost_ad_'.$adIndex.'_content']))?$settings['onpost_ad_'.$adIndex.'_content']:'');
450
- $onpostAdCode = "\n".'<!-- Quick Adsense Wordpress Plugin: http://quickadsense.com/ -->'."\n".'<div class="'.md5(get_bloginfo('url')).'" data-index="'.$adIndex.'" style="'.$onpostAdStyle.'">'."\n".$onpostAdCode."\n".'</div>'."\n";
451
- } else {
452
- $onpostAdCode = '';
453
- }
454
  }
455
  $content = explode('<!--'.$quicktag.'-->', $content, 2);
456
  return $content[0].$onpostAdCode.$content[1];
75
  $quickAdsenseAdsIdCus = array();
76
  $cusads = 'CusAds';
77
  $cusrnd = 'CusRnd';
 
 
78
 
79
  $quickAdsenseEnablePositionAfterMoreTag = ((isset($settings['enable_position_after_more_tag']))?$settings['enable_position_after_more_tag']:'');
80
  $quickAdsenseAdAfterMoreTag = ((isset($settings['ad_after_more_tag']))?$settings['ad_after_more_tag']:'');
106
  }
107
 
108
  if($quickAdsenseAdBeginningOfPost == 0) {
109
+ $quickAdsenseAdBeginningOfPostStandIn = $cusrnd;
110
  } else {
111
+ $quickAdsenseAdBeginningOfPostStandIn = $cusads.$quickAdsenseAdBeginningOfPost;
112
  array_push($quickAdsenseAdsIdCus, $quickAdsenseAdBeginningOfPost);
113
  };
114
  if($quickAdsenseAdAfterMoreTag == 0) {
118
  array_push($quickAdsenseAdsIdCus, $quickAdsenseAdAfterMoreTag);
119
  };
120
  if($quickAdsenseAdMiddleOfPost == 0) {
121
+ $quickAdsenseAdMiddleOfPostStandIn = $cusrnd;
122
  } else {
123
+ $quickAdsenseAdMiddleOfPostStandIn = $cusads.$quickAdsenseAdMiddleOfPost;
124
  array_push($quickAdsenseAdsIdCus, $quickAdsenseAdMiddleOfPost);
125
  };
126
  if($quickAdsenseAdBeforeLastPara == 0) {
239
  if(!$offdef) {
240
  for($i = 1; $i <= count($quickAdsenseAdsIdCus); $i++) {
241
  if($showall || !$ismany || $quickAdsenseBeginEnd != $i) {
242
+ if(((strpos($content, '<!--'.$cusads.$quickAdsenseAdsIdCus[$i-1].'-->') !== false) || (strpos($content, '<!--'.$cusads.$quickAdsenseAdsIdCus[$i-1].'-->') !== false)) && in_array($quickAdsenseAdsIdCus[$i-1], $quickAdsenseAdsId)) {
243
+ $content = quick_adsense_content_replace_ads($content, $cusads.$quickAdsenseAdsIdCus[$i-1], $quickAdsenseAdsIdCus[$i-1]);
244
  $content = quick_adsense_content_replace_ads($content, $cusads.$quickAdsenseAdsIdCus[$i-1], $quickAdsenseAdsIdCus[$i-1]);
245
  $quickAdsenseAdsId = quick_adsense_content_del_element($quickAdsenseAdsId, array_search($quickAdsenseAdsIdCus[$i-1], $quickAdsenseAdsId)) ;
246
  $quickAdsenseAdsDisplayed += 1;
274
  }
275
  }
276
 
277
+ if((strpos($content, '<!--'.$cusrnd.'-->') !== false) && ($showall || !$ismany)) {
278
+ $j = substr_count($content, '<!--'.$cusrnd.'-->');
279
  for($i = count($quickAdsenseAdsId); $i <= $j-1; $i++) {
280
  array_push($quickAdsenseAdsId, -1);
281
  }
282
  shuffle($quickAdsenseAdsId);
283
  for($i = 1; $i <= $j; $i++) {
284
+ $content = quick_adsense_content_replace_ads($content, $cusrnd, $quickAdsenseAdsId[0]);
285
  $quickAdsenseAdsId = quick_adsense_content_del_element($quickAdsenseAdsId, 0) ;
286
  $quickAdsenseAdsDisplayed += 1;
287
  if(($quickAdsenseAdsDisplayed >= $quickAdsenseAdsToDisplay) || !count($quickAdsenseAdsId)) {
423
  'float: none; margin:0px;'
424
  );
425
 
426
+ if(($adIndex != -1)) {
427
+ $onpostAdAlignment = ((isset($settings['onpost_ad_'.$adIndex.'_alignment']))?$settings['onpost_ad_'.$adIndex.'_alignment']:'');
428
+ $onpostAdMargin = ((isset($settings['onpost_ad_'.$adIndex.'_margin']))?$settings['onpost_ad_'.$adIndex.'_margin']:'');
429
+ $onpostAdStyle = sprintf($onpostAdStyles[(int)$onpostAdAlignment], $onpostAdMargin);
430
+ $onpostAdCode = ((isset($settings['onpost_ad_'.$adIndex.'_content']))?$settings['onpost_ad_'.$adIndex.'_content']:'');
431
+ $onpostAdCode = "\n".'<!-- Quick Adsense Wordpress Plugin: http://quickadsense.com/ -->'."\n".'<div class="'.md5(get_bloginfo('url')).'" data-index="'.$adIndex.'" style="'.$onpostAdStyle.'">'."\n".$onpostAdCode."\n".'</div>'."\n";
 
 
 
 
 
 
 
 
 
 
432
  } else {
433
+ $onpostAdCode = '';
 
 
 
 
 
 
 
 
434
  }
435
  $content = explode('<!--'.$quicktag.'-->', $content, 2);
436
  return $content[0].$onpostAdCode.$content[1];
includes/css/admin.css CHANGED
@@ -267,342 +267,6 @@
267
  }
268
 
269
 
270
- /* Begin vi */
271
- .quick_adsense_ajaxloader {
272
- background: url(../images/ajax-loader.gif) no-repeat center center;
273
- max-width: 320px;
274
- min-width: 100px;
275
- height: 100px;
276
- margin: auto;
277
- }
278
-
279
- .quick_adsense_ajaxloader_flat {
280
- background: url(../images/ajax-loader-flat.gif) no-repeat center center;
281
- max-width: 320px;
282
- min-width: 100px;
283
- height: 50px;
284
- margin: auto;
285
- }
286
-
287
- p.viError {
288
- font-weight: bold;
289
- color: #fd5740;
290
- }
291
-
292
- .quick_adsense_vi_login_error {
293
- color: #ff0000;
294
- font-size: 10px;
295
- margin: -10px 0 0;
296
- }
297
-
298
-
299
- .quick_adsense_vi_block {
300
- border: 1px solid #E7E7E7;
301
- background: #fff;
302
- margin: 20px 0 40px;
303
- }
304
-
305
- .quick_adsense_vi_block .quick_adsense_vi_block_header {
306
- color: #23282d;
307
- font-family: 'Arial';
308
- font-size: 14px;
309
- font-weight: 600;
310
- line-height: 17px;
311
- margin: 0;
312
- border-bottom: 1px solid #eeeeee;
313
- padding: 14px 26px;
314
- }
315
-
316
- .quick_adsense_vi_block .quick_adsense_vi_block_content {
317
- font-family: arial;
318
- font-size: 14px;
319
- line-height: 18px;
320
- color: #232323;
321
- padding: 20px 26px 10px;
322
- border-bottom: 1px solid #eeeeee;
323
- }
324
-
325
- .quick_adsense_vi_block .quick_adsense_vi_block_content p {
326
- font-family: arial;
327
- font-size: 14px;
328
- line-height: 18px;
329
- color: #232323;
330
- margin: 0 0 10px;
331
- }
332
-
333
-
334
- .quick_adsense_vi_block .quick_adsense_vi_block_content p strong {
335
- color: #232323;
336
- font-size: 14px;
337
- font-weight: bold;
338
- }
339
-
340
- .quick_adsense_vi_block .quick_adsense_vi_block_content ul {
341
- margin: 10px 0 10px 10px;
342
- padding: 0 0 0 15px;
343
- }
344
-
345
- .quick_adsense_vi_block .quick_adsense_vi_block_content ul li {
346
- list-style-type: disc;
347
- margin: 0 0 5px;
348
- padding: 0 0 0 7px;
349
- line-height: 18px;
350
- list-style-position: outside;
351
- }
352
-
353
- .quick_adsense_vi_block .quick_adsense_vi_block_footer {
354
- background: #ffffff;
355
- text-align: right;
356
- padding: 11px 26px 11px;
357
- }
358
-
359
- .quick_adsense_vi_block .quick_adsense_vi_block_footer span {
360
- display: inline;
361
- float: left;
362
- text-align: left;
363
- width: calc(100% - 200px);
364
- font-family: Arial;
365
- font-size: 13px;
366
- color: #444444;
367
- text-align: left;
368
- line-height: 18px;
369
- margin: 7px 0 0;
370
- }
371
-
372
- .quick_adsense_vi_block .quick_adsense_vi_block_footer .button {
373
- height: 32px;
374
- line-height: 28px;
375
- padding: 0 15px;
376
- margin: 0;
377
- }
378
-
379
- .quick_adsense_vi_block .quick_adsense_vi_block_footer .button#quick_adsense_vi_signup {
380
- margin: 0 0 0 15px;
381
- }
382
-
383
- .quick_adsense_vi_block #quick_adsense_vi_earnings_wrapper {
384
- margin-top: 5px;
385
- }
386
-
387
- .quick_adsense_vi_block #quick_adsense_vi_earnings_wrapper p {
388
- font-size: 13px;
389
- color: #444444;
390
- }
391
-
392
- .quick_adsense_vi_block #quick_adsense_vi_earnings_wrapper #quick_adsense_vi_earnings {
393
- float: left;
394
- width: 270px;
395
- margin-bottom: 15px;
396
- }
397
-
398
- .quick_adsense_vi_block #quick_adsense_vi_earnings_wrapper #quick_adsense_vi_earnings #quick_adsense_vi_earnings_label {
399
- color: rgb(35, 40, 45);
400
- display: block;
401
- font-size: 14px;
402
- line-height: 18px;
403
- font-family: Arial;
404
- margin-top: 50px;
405
- }
406
-
407
- .quick_adsense_vi_block #quick_adsense_vi_earnings_wrapper #quick_adsense_vi_earnings #quick_adsense_vi_earnings_value {
408
- color: rgb(35, 40, 45);
409
- display: block;
410
- font-size: 40px;
411
- font-weight: bold;
412
- line-height: 44px;
413
- font-family: Arial;
414
- margin-top: 10px;
415
- }
416
-
417
- .quick_adsense_vi_block #quick_adsense_vi_earnings_wrapper #quick_adsense_vi_chart_wrapper {
418
- float: right;
419
- height: 180px;
420
- width: calc(100% - 270px);
421
- }
422
-
423
- .quick_adsense_vi_block #quick_adsense_vi_earnings_wrapper #quick_adsense_vi_chart_wrapper canvas {
424
- border: 1px solid #ddd;
425
- }
426
-
427
- .quick_adsense_vi_login_error {
428
- color: #ff0000;
429
- font-size: 10px;
430
- margin: -10px 0 0;
431
- }
432
-
433
- #quick_adsense_vi_customize_adcode {
434
- margin-left: 10px;
435
- }
436
-
437
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_right_column {
438
- width: calc(50% - 30px);
439
- float: right;
440
- margin-top: 10px;
441
- }
442
-
443
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column {
444
- width: calc(50% - 30px);
445
- float: left;
446
- margin-top: 10px;
447
- font-family: Arial;
448
- font-size: 13px;
449
- line-height: 18px;
450
- }
451
-
452
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p {
453
- position: relative;
454
- }
455
-
456
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p label {
457
- float: left;
458
- display: inline-block;
459
- width: 180px;
460
- }
461
-
462
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p br {
463
- display: none;
464
- }
465
-
466
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p input,
467
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p select,
468
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p textarea {
469
- float: right;
470
- width: calc(100% - 210px);
471
- display: inline-block;
472
- clear: none;
473
- margin-right: 20px;
474
- }
475
-
476
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p textarea {
477
- height: 100px;
478
- }
479
-
480
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p span.tooltipWrapper {
481
- position: absolute;
482
- display: inline-block;
483
- background: #bababa;
484
- width: 13px;
485
- height: 13px;
486
- border-radius: 7px;
487
- right: 0;
488
- top: 5px;
489
- cursor: pointer;
490
- }
491
-
492
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p span.tooltipWrapper:after {
493
- content: "i";
494
- font-size: 10px;
495
- font-weight: 600;
496
- color: #fff;
497
- line-height: 13px;
498
- position: relative;
499
- left: 0;
500
- right: 0;
501
- margin: 0 auto 0;
502
- width: 13px;
503
- height: 13px;
504
- display: block;
505
- text-align: center;
506
- }
507
-
508
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p span.tooltipWrapper:hover {
509
- background: #000000;
510
- }
511
-
512
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p span.tooltipWrapper span.tooltip {
513
- visibility: hidden;
514
- width: 142px;
515
- background-color: #363636;
516
- color: #fff;
517
- text-align: left;
518
- padding: 5px;
519
- border-radius: 4px;
520
- position: absolute;
521
- top: -10px;
522
- left: 20px;
523
- z-index: 1;
524
- font-size: 11px;
525
- }
526
-
527
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p span.tooltipWrapper span.tooltip br {
528
- display: block;
529
- }
530
-
531
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p span.tooltipWrapper:hover span.tooltip {
532
- visibility: visible;
533
- }
534
-
535
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p span.tooltipWrapper span.tooltip::after {
536
- /*content: " ";
537
- position: absolute;
538
- top: 50%;
539
- right: 100%;
540
- margin-top: -5px;
541
- border-width: 5px;
542
- border-style: solid;
543
- border-color: transparent black transparent transparent;*/
544
- }
545
-
546
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column .minicolors {
547
- width: calc(100% - 190px);
548
- float: right;
549
- }
550
-
551
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column .minicolors input {
552
- width: calc(100% - 20px);
553
- height: 30px;
554
- }
555
-
556
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p small {
557
- clear: both;
558
- height: 1px;
559
- width: 100%;
560
- display: block;
561
- }
562
-
563
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_popup_left_column p a.textTip {
564
- position: absolute;
565
- right: -92px;
566
- top: 5px;
567
- font-size: 11px;
568
- display: block;
569
- font-style: italic;
570
- }
571
-
572
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_delay_notice {
573
- float: right;
574
- width: calc(100% - 210px);
575
- display: inline-block;
576
- clear: both;
577
- margin: 0 20px 0 0;
578
- color: #5f5f5f;
579
- font-size: 13px;
580
- font-style: italic;
581
- }
582
-
583
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_code_data_wrapper {
584
- line-height: 24px;
585
- margin: 18px 0 20px;
586
- }
587
-
588
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_code_data_wrapper label {
589
- width: 144px;
590
- display: block;
591
- font-size: 12px;
592
- font-family: Arial;
593
- position: absolute;
594
- color: #444444;
595
- }
596
-
597
- .quick_adsense_popup_content_wrapper .quick_adsense_vi_code_data_wrapper b {
598
- margin-left: 164px;
599
- display: block;
600
- font-size: 13px;
601
- font-family: Arial;
602
- color: #444444;
603
- }
604
- /* End vi */
605
-
606
  /* Begin Minicolors */
607
  .minicolors {
608
  position: relative;
267
  }
268
 
269
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
270
  /* Begin Minicolors */
271
  .minicolors {
272
  position: relative;
includes/css/gdpr.css DELETED
@@ -1,131 +0,0 @@
1
- #quick_adsense_vi_consent_popup_overlay {
2
- position: fixed;
3
- left: 0;
4
- right: 0;
5
- top: 0;
6
- bottom: 0;
7
- background: rgba(0,0,0,0.5);
8
- z-index: 10000;
9
- }
10
-
11
- #quick_adsense_vi_consent_popup_wrapper {
12
- max-width: 480px;
13
- background: rgba(255,255,255,0.9);
14
- padding: 30px 30px 30px;
15
- position: fixed;
16
- right: 0;
17
- bottom: 0;
18
- color: #000;
19
- z-index: 10001;
20
- }
21
-
22
- #quick_adsense_vi_consent_popup_wrapper h1 {
23
- line-height: 42px;
24
- font-weight: 400;
25
- font-family: sans-serif,Helvetica,Arial;
26
- font-size: 36px;
27
- text-align: center;
28
- margin: 0;
29
- padding: 0;
30
- border: none;
31
- background: none;
32
- color: #000;
33
- }
34
-
35
- #quick_adsense_vi_consent_popup_wrapper p {
36
- font-size: 14px;
37
- font-family: sans-serif,Helvetica,Arial;
38
- line-height: 20px;
39
- margin: 10px 0 30px;
40
- padding: 0;
41
- border: none;
42
- background: none;
43
- color: #000;
44
- text-align: justify;
45
- font-weight: 400;
46
- }
47
-
48
- #quick_adsense_vi_consent_popup_wrapper p a,
49
- #quick_adsense_vi_consent_popup_wrapper p a:hover {
50
- font-size: 14px;
51
- font-family: sans-serif,Helvetica,Arial;
52
- line-height: 20px;
53
- margin: 0;
54
- padding: 0;
55
- border: none;
56
- background: none;
57
- color: #000;
58
- text-decoration: underline;
59
- }
60
-
61
- #quick_adsense_vi_consent_popup_wrapper #quick_adsense_vi_consent_popup_actions_wrapper {
62
- text-align: center;
63
- margin: 0 0 30px;
64
- }
65
-
66
- #quick_adsense_vi_consent_popup_wrapper #quick_adsense_vi_consent_popup_actions_wrapper #quick_adsense_vi_consent_popup_disagree_btn,
67
- #quick_adsense_vi_consent_popup_wrapper #quick_adsense_vi_consent_popup_actions_wrapper #quick_adsense_vi_consent_popup_disagree_btn:hover {
68
- cursor: pointer;
69
- color: #000;
70
- background: none;
71
- border: none;
72
- padding: 10px 30px;
73
- text-align: center;
74
- font-weight: 600;
75
- font-size: 15px;
76
- font-family: sans-serif,Helvetica,Arial;
77
- margin: 0;
78
- }
79
-
80
- #quick_adsense_vi_consent_popup_wrapper #quick_adsense_vi_consent_popup_actions_wrapper #quick_adsense_vi_consent_popup_agree_btn,
81
- #quick_adsense_vi_consent_popup_wrapper #quick_adsense_vi_consent_popup_actions_wrapper #quick_adsense_vi_consent_popup_agree_btn:hover {
82
- cursor: pointer;
83
- color: #000;
84
- background: rgba(255, 242, 0, 1);
85
- border: 2px solid rgba(255, 242, 0, 1);
86
- padding: 10px 60px;
87
- text-align: center;
88
- font-weight: 600;
89
- font-size: 15px;
90
- font-family: sans-serif,Helvetica,Arial;
91
- border-radius: 18px;
92
- margin: 0;
93
- }
94
-
95
- #quick_adsense_vi_consent_popup_wrapper #quick_adsense_vi_consent_popup_links_wrapper {
96
- text-align: center;
97
- }
98
-
99
- #quick_adsense_vi_consent_popup_wrapper #quick_adsense_vi_consent_popup_links_wrapper a,
100
- #quick_adsense_vi_consent_popup_wrapper #quick_adsense_vi_consent_popup_links_wrapper a:hover {
101
- color: #000;
102
- background: none;
103
- border: none;
104
- padding: 10px;
105
- text-align: center;
106
- font-weight: 400;
107
- font-size: 12px;
108
- font-family: sans-serif,Helvetica,Arial;
109
- margin: 0;
110
- text-decoration: underline;
111
- line-height: 24px;
112
- }
113
-
114
- #quick_adsense_vi_consent_popup_settings_button {
115
- font-size: 13px;
116
- color: rgba(146, 135, 131, 1);
117
- background: url(../images/privacy.png) no-repeat left center;
118
- padding: 0 0 0 32px;
119
- position: fixed;
120
- bottom: 10px;
121
- right: 10px;
122
- cursor: pointer;
123
- z-index: 10002;
124
- font-family: sans-serif,Helvetica,Arial;
125
- -webkit-touch-callout: none; /* iOS Safari */
126
- -webkit-user-select: none; /* Safari */
127
- -khtml-user-select: none; /* Konqueror HTML */
128
- -moz-user-select: none; /* Firefox */
129
- -ms-user-select: none; /* Internet Explorer/Edge */
130
- user-select: none; /* Non-prefixed version, currently supported by Chrome and Opera */
131
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
includes/images/vi-big-logo.png DELETED
Binary file
includes/images/vi-empty-graph.jpg DELETED
Binary file
includes/images/vi-logo-large.png DELETED
Binary file
includes/images/vi-logo-small.png DELETED
Binary file
includes/images/vi-logo-square.png DELETED
Binary file
includes/images/vi-no-data.jpg DELETED
Binary file
includes/settings.php CHANGED
@@ -27,7 +27,6 @@ add_action('admin_enqueue_scripts', function($hook) {
27
 
28
  add_action('admin_init', function() {
29
  register_setting('quick_adsense_settings', 'quick_adsense_settings', 'quick_adsense_validate');
30
- add_settings_section('quick_adsense_vi', '', 'quick_adsense_vi_plugin_card', 'quick-adsense-vi');
31
  add_settings_section('quick_adsense_general', '', 'quick_adsense_general_content', 'quick-adsense-general');
32
  add_settings_section('quick_adsense_onpost', '', 'quick_adsense_onpost_content', 'quick-adsense-onpost');
33
  add_settings_section('quick_adsense_widgets', '', 'quick_adsense_widgets_content', 'quick-adsense-widgets');
@@ -37,7 +36,7 @@ add_action('admin_init', function() {
37
 
38
  function quick_adsense_settings_page() { ?>
39
  <div class="wrap">
40
- <h2 id="quick_adsense_title">Quick Adsense Setting <span style="font-size: 14px;">(Version 2.5)</span></h2>
41
  <form id="quick_adsense_settings_form" method="post" action="options.php" name="wp_auto_commenter_form" style="display: none;">
42
  <?php settings_fields('quick_adsense_settings'); ?>
43
  <?php
@@ -68,7 +67,6 @@ function quick_adsense_settings_page_tabs() {
68
  echo '<li><a href="#tabs-post-body-ads">Ads on Post Body</a></li>';
69
  echo '<li><a href="#tabs-sidebar-widget-ads">Sidebar Widget</a></li>';
70
  echo '<li><a href="#tabs-header-footer-codes">Header / Footer Codes</a></li>';
71
- echo '<li><a href="#tabs-vi">Monetization with vi stories</a></li>';
72
  echo '</ul>';
73
  echo '<div id="tabs-settings">';
74
  echo '<div id="quick_adsense_top_sections_wrapper">';
@@ -88,9 +86,6 @@ function quick_adsense_settings_page_tabs() {
88
  do_settings_sections('quick-adsense-header-footer-codes');
89
  submit_button('Save Changes');
90
  echo '</div>';
91
- echo '<div id="tabs-vi">';
92
- do_settings_sections('quick-adsense-vi');
93
- echo '</div>';
94
  echo '</div>';
95
  }
96
 
@@ -116,16 +111,6 @@ function quick_adsense_header_footer_codes_content() {
116
  echo '</div>';
117
  }
118
 
119
- function quick_adsense_vi_plugin_card() {
120
- echo '<div class="quick_adsense_vi_block">';
121
- if(quick_adsense_vi_api_is_loggedin()) {
122
- quick_adsense_vi_plugin_card_content(true);
123
- } else {
124
- quick_adsense_vi_plugin_card_content(false);
125
- }
126
- echo '</div>';
127
- }
128
-
129
  function quick_adsense_general_content() {
130
  $settings = get_option('quick_adsense_settings');
131
  echo '<div class="quick_adsense_block">';
@@ -158,13 +143,8 @@ function quick_adsense_general_content() {
158
  $adPositions = array(
159
  array('text' => 'Random Ads', 'value' => '0')
160
  );
161
- $viSupportedAdPosition = array(
162
- array('text' => 'Random Ads', 'value' => '0'),
163
- array('text' => 'vi stories', 'value' => '100'),
164
- );
165
  for($i = 1; $i <= 10; $i++) {
166
  $adPositions[] = array('text' => 'Ads'.$i, 'value' => $i);
167
- $viSupportedAdPosition[] = array('text' => 'Ads'.$i, 'value' => $i);
168
  }
169
 
170
  $elementCount = array();
@@ -173,15 +153,13 @@ function quick_adsense_general_content() {
173
  }
174
  echo '<p>';
175
  echo quickadsense_get_control('checkbox', '', 'quick_adsense_settings_enable_position_beginning_of_post', 'quick_adsense_settings[enable_position_beginning_of_post]', ((isset($settings['enable_position_beginning_of_post']))?$settings['enable_position_beginning_of_post']:''), null, 'input', '');
176
- echo quickadsense_get_control('select', '', 'quick_adsense_settings_ad_beginning_of_post', 'quick_adsense_settings[ad_beginning_of_post]', ((isset($settings['ad_beginning_of_post']))?$settings['ad_beginning_of_post']:''), $viSupportedAdPosition, 'input quick_adsense_vi_supported_ad_position', 'margin: -2px 10px 0 20px;');
177
  echo '<b style="width: 120px; display: inline-block;">Beginning of Post</b>';
178
- echo '<span style="color: #FF2800;">NEW: vi stories</span>';
179
  echo '</p>';
180
  echo '<p>';
181
  echo quickadsense_get_control('checkbox', '', 'quick_adsense_settings_enable_position_middle_of_post', 'quick_adsense_settings[enable_position_middle_of_post]', ((isset($settings['enable_position_middle_of_post']))?$settings['enable_position_middle_of_post']:''), null, 'input', '');
182
- echo quickadsense_get_control('select', '', 'quick_adsense_settings_ad_middle_of_post', 'quick_adsense_settings[ad_middle_of_post]', ((isset($settings['ad_middle_of_post']))?$settings['ad_middle_of_post']:''), $viSupportedAdPosition, 'input quick_adsense_vi_supported_ad_position', 'margin: -2px 10px 0 20px;');
183
  echo '<b style="width: 120px; display: inline-block;">Middle of Post</b>';
184
- echo '<span style="color: #FF2800;">NEW: vi stories</span>';
185
  echo '</p>';
186
  echo '<p>';
187
  echo quickadsense_get_control('checkbox', '', 'quick_adsense_settings_enable_position_end_of_post', 'quick_adsense_settings[enable_position_end_of_post]', ((isset($settings['enable_position_end_of_post']))?$settings['enable_position_end_of_post']:''), null, 'input', '');
27
 
28
  add_action('admin_init', function() {
29
  register_setting('quick_adsense_settings', 'quick_adsense_settings', 'quick_adsense_validate');
 
30
  add_settings_section('quick_adsense_general', '', 'quick_adsense_general_content', 'quick-adsense-general');
31
  add_settings_section('quick_adsense_onpost', '', 'quick_adsense_onpost_content', 'quick-adsense-onpost');
32
  add_settings_section('quick_adsense_widgets', '', 'quick_adsense_widgets_content', 'quick-adsense-widgets');
36
 
37
  function quick_adsense_settings_page() { ?>
38
  <div class="wrap">
39
+ <h2 id="quick_adsense_title">Quick Adsense Setting <span style="font-size: 14px;">(Version 2.6)</span></h2>
40
  <form id="quick_adsense_settings_form" method="post" action="options.php" name="wp_auto_commenter_form" style="display: none;">
41
  <?php settings_fields('quick_adsense_settings'); ?>
42
  <?php
67
  echo '<li><a href="#tabs-post-body-ads">Ads on Post Body</a></li>';
68
  echo '<li><a href="#tabs-sidebar-widget-ads">Sidebar Widget</a></li>';
69
  echo '<li><a href="#tabs-header-footer-codes">Header / Footer Codes</a></li>';
 
70
  echo '</ul>';
71
  echo '<div id="tabs-settings">';
72
  echo '<div id="quick_adsense_top_sections_wrapper">';
86
  do_settings_sections('quick-adsense-header-footer-codes');
87
  submit_button('Save Changes');
88
  echo '</div>';
 
 
 
89
  echo '</div>';
90
  }
91
 
111
  echo '</div>';
112
  }
113
 
 
 
 
 
 
 
 
 
 
 
114
  function quick_adsense_general_content() {
115
  $settings = get_option('quick_adsense_settings');
116
  echo '<div class="quick_adsense_block">';
143
  $adPositions = array(
144
  array('text' => 'Random Ads', 'value' => '0')
145
  );
 
 
 
 
146
  for($i = 1; $i <= 10; $i++) {
147
  $adPositions[] = array('text' => 'Ads'.$i, 'value' => $i);
 
148
  }
149
 
150
  $elementCount = array();
153
  }
154
  echo '<p>';
155
  echo quickadsense_get_control('checkbox', '', 'quick_adsense_settings_enable_position_beginning_of_post', 'quick_adsense_settings[enable_position_beginning_of_post]', ((isset($settings['enable_position_beginning_of_post']))?$settings['enable_position_beginning_of_post']:''), null, 'input', '');
156
+ echo quickadsense_get_control('select', '', 'quick_adsense_settings_ad_beginning_of_post', 'quick_adsense_settings[ad_beginning_of_post]', ((isset($settings['ad_beginning_of_post']))?$settings['ad_beginning_of_post']:''), $adPositions, 'input', 'margin: -2px 10px 0 20px;');
157
  echo '<b style="width: 120px; display: inline-block;">Beginning of Post</b>';
 
158
  echo '</p>';
159
  echo '<p>';
160
  echo quickadsense_get_control('checkbox', '', 'quick_adsense_settings_enable_position_middle_of_post', 'quick_adsense_settings[enable_position_middle_of_post]', ((isset($settings['enable_position_middle_of_post']))?$settings['enable_position_middle_of_post']:''), null, 'input', '');
161
+ echo quickadsense_get_control('select', '', 'quick_adsense_settings_ad_middle_of_post', 'quick_adsense_settings[ad_middle_of_post]', ((isset($settings['ad_middle_of_post']))?$settings['ad_middle_of_post']:''), $adPositions, 'input', 'margin: -2px 10px 0 20px;');
162
  echo '<b style="width: 120px; display: inline-block;">Middle of Post</b>';
 
163
  echo '</p>';
164
  echo '<p>';
165
  echo quickadsense_get_control('checkbox', '', 'quick_adsense_settings_enable_position_end_of_post', 'quick_adsense_settings[enable_position_end_of_post]', ((isset($settings['enable_position_end_of_post']))?$settings['enable_position_end_of_post']:''), null, 'input', '');
includes/vi-gdpr.php DELETED
@@ -1,147 +0,0 @@
1
- <?php
2
- /* Begin Consent Popup */
3
- add_action('init', 'quick_adsense_vi_gdpr_popup_init');
4
- function quick_adsense_vi_gdpr_popup_init() {
5
- $vicodeSettings = get_option('quick_adsense_vi_code_settings');
6
- if(isset($vicodeSettings['show_gdpr_authorization']) && ($vicodeSettings['show_gdpr_authorization'] == 'true')) {
7
- add_action('wp_enqueue_scripts', 'quick_adsense_vi_gdpr_popup_wp_enqueue_style');
8
- add_action('wp_enqueue_scripts', 'quick_adsense_vi_gdpr_popup_wp_enqueue_scripts');
9
- add_action('wp_footer', 'quick_adsense_vi_gdpr_popup_wp_footer');
10
- }
11
- }
12
-
13
- function quick_adsense_vi_gdpr_popup_wp_enqueue_style() {
14
- wp_enqueue_style('quick_adsense_vi_gdpr', plugins_url('/css/gdpr.css', __FILE__), array(), 2.4 , 'all');
15
- }
16
-
17
-
18
- function quick_adsense_vi_gdpr_popup_wp_enqueue_scripts() {
19
- wp_enqueue_script('quick_adsense_vi_gdpr', plugins_url('/js/gdpr.js', __FILE__), array(), 2.4 , true);
20
- }
21
-
22
- function quick_adsense_vi_gdpr_popup_wp_footer() {
23
- $showViConsent = true;
24
- $isEU = quick_adsense_vi_api_is_eu();
25
- if(isset($_COOKIE['Viconsent'])) {
26
- $showViConsent = false;
27
- }
28
- $vicodeSettings = get_option('quick_adsense_vi_code_settings');
29
- $labels = array();
30
- $viConsentPopupContent = quick_adsense_vi_api_get_consent_popup_content();
31
- if($viConsentPopupContent != false) {
32
- switch($vicodeSettings['language']) {
33
- case 'de-de':
34
- $labels['popupContent'] = $viConsentPopupContent->es;
35
- $labels['accept'] = 'acepto';
36
- $labels['donotaccept'] = 'no acepto';
37
- $labels['showPurposes'] = 'Mostrar propósitos';
38
- $labels['showVendors'] = 'Mostrar vendedores';
39
-
40
- break;
41
- case 'fr-fr':
42
- $labels['popupContent'] = $viConsentPopupContent->fr;
43
- $labels['accept'] = 'J’accepte';
44
- $labels['donotaccept'] = 'Je n’accepte pas';
45
- $labels['showPurposes'] = 'Plus de details';
46
- $labels['showVendors'] = 'Montrez les vendeurs';
47
- break;
48
- case 'en-us':
49
- default:
50
- $labels['popupContent'] = $viConsentPopupContent->en;
51
- $labels['accept'] = 'I accept';
52
- $labels['donotaccept'] = 'I do not accept';
53
- $labels['showPurposes'] = 'Show purposes';
54
- $labels['showVendors'] = 'Show vendors';
55
- break;
56
- }
57
- }
58
-
59
- echo '<div id="quick_adsense_vi_consent_popup_wrapper" style="display: none;">';
60
- echo $labels['popupContent'];
61
- echo '<div id="quick_adsense_vi_consent_popup_actions_wrapper">';
62
- echo '<input id="quick_adsense_vi_consent_popup_disagree_btn" type="button" value="'.$labels['donotaccept'].'" onclick="quick_adsense_vi_consent_popup_disagree()" />';
63
- echo '<input id="quick_adsense_vi_consent_popup_agree_btn" type="button" value="'.$labels['accept'].'" onclick="quick_adsense_vi_consent_popup_agree()" />';
64
- echo '</div>';
65
- echo '<div id="quick_adsense_vi_consent_popup_links_wrapper">';
66
- echo '<a href="https://www.vi.ai/purposes" target="_blank">'.$labels['showPurposes'].'</a>';
67
- echo '<a href="https://www.vi.ai/vendors" target="_blank">'.$labels['showVendors'].'</a>';
68
- echo '</div>';
69
- echo '<input id="quick_adsense_vi_consent_popup_is_eu" type="hidden" value="'.$isEU.'" />';
70
- echo '<input id="quick_adsense_vi_consent_popup_url" type="hidden" value="'.get_bloginfo('url').'" />';
71
- echo '<input id="quick_adsense_vi_consent_popup_auth" type="hidden" value="'.wp_create_nonce('quick_adsense_vi_consent').'" />';
72
- echo '<input id="quick_adsense_vi_consent_popup_vendor_list_version" type="hidden" value="'.quick_adsense_vi_api_get_vendor_list_version().'" />';
73
- $purposesBinary = '000000000000000000000000';
74
- $purposes = quick_adsense_vi_api_get_consent_purposes();
75
- if(isset($purposes) && (count($purposes) > 0)) {
76
- foreach($purposes as $purpose) {
77
- $purposesBinary = substr_replace($purposesBinary, '1', ((24 - (int)$purpose->id) + 1), 1);
78
- }
79
- }
80
- echo '<input id="quick_adsense_vi_consent_popup_vendor_list_purposes" type="hidden" value="'.$purposesBinary.'" />';
81
- echo '<input id="quick_adsense_vi_consent_popup_vendor_list_vendors" type="hidden" value="999" />';
82
- echo '</div>';
83
- echo '<div id="quick_adsense_vi_consent_popup_overlay" style="display: none;"></div>';
84
- echo '<span id="quick_adsense_vi_consent_popup_settings_button" onclick="quick_adsense_vi_consent_popup_settings()" unselectable="on" style="display: none;">Privacy settings</span>';
85
- }
86
- /* End Consent Popup */
87
-
88
- /* Begin Data Storage */
89
- add_action('init', 'quick_adsense_vi_gdpr_data_init');
90
- function quick_adsense_vi_gdpr_data_init() {
91
- if(isset($_GET['quick_adsense_vi_consent']) && ($_GET['quick_adsense_vi_consent'] != '')) {
92
- check_ajax_referer('quick_adsense_vi_consent', 'quick_adsense_vi_consent');
93
- wp_insert_post(array(
94
- 'post_title' => date('c'),
95
- 'post_content' => ((isset($_COOKIE['Viconsent']))?$_COOKIE['Viconsent']:''),
96
- 'post_status' => 'publish',
97
- 'post_type' => 'viconsent',
98
- ));
99
- die();
100
- }
101
-
102
-
103
- $labels = array(
104
- 'name' => 'VI Consent',
105
- 'singular_name' => 'VI Consent',
106
- 'add_new' => 'Add New',
107
- 'add_new_item' => 'Add New VI Consent',
108
- 'edit_item' => 'Edit VI Consent',
109
- 'new_item' => 'New VI Consent',
110
- 'view_item' => 'View VI Consent',
111
- 'search_items' => 'Search VI Consent',
112
- 'not_found' => 'No VI Consent found',
113
- 'not_found_in_trash' => 'No VI Consent found in Trash',
114
- 'parent_item_colon' => 'Parent VI Consent:',
115
- 'menu_name' => 'VI Consent',
116
- );
117
-
118
- $args = array(
119
- 'labels' => $labels,
120
- 'hierarchical' => false,
121
- 'description' => 'VI Consent',
122
- 'supports' => array('title', 'editor'),
123
- 'public' => false,
124
- 'show_ui' => true,
125
- 'show_in_menu' => false,
126
- 'show_in_nav_menus' => false,
127
- 'publicly_queryable' => false,
128
- 'exclude_from_search' => true,
129
- 'has_archive' => false,
130
- 'query_var' => false,
131
- 'can_export' => true,
132
- 'rewrite' => false,
133
- 'capability_type' => 'post'
134
- );
135
-
136
- register_post_type('viconsent', $args);
137
- }
138
-
139
- add_filter('user_can_richedit', 'quick_adsense_vi_gdpr_data_user_can_richedit');
140
- function quick_adsense_vi_gdpr_data_user_can_richedit($default) {
141
- if(get_post_type() === 'viconsent') {
142
- return false;
143
- }
144
- return $default;
145
- }
146
- /* End Data Storage */
147
- ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
includes/vi.php DELETED
@@ -1,585 +0,0 @@
1
- <?php
2
- /*Begin Vi Admin Notice */
3
- add_action('admin_footer', 'quick_adsense_vi_admin_notice_admin_footer');
4
- function quick_adsense_vi_admin_notice_admin_footer() {
5
- echo '<script type="text/javascript">';
6
- echo "jQuery(document).ready(function() {";
7
- echo "jQuery('.quick_adsense_notice').on('click', '.notice-dismiss', function() {";
8
- echo "jQuery.post(";
9
- echo "jQuery('#quick_adsense_admin_notice_ajax').val(), {";
10
- echo "'action': 'quick_adsense_vi_admin_notice_dismiss',";
11
- echo "'quick_adsense_admin_notice_nonce': jQuery('#quick_adsense_admin_notice_nonce').val(),";
12
- echo "}, function(response) { }";
13
- echo ");";
14
- echo "});";
15
- echo "});";
16
- echo '</script>';
17
- }
18
-
19
- add_action('admin_notices', 'quick_adsense_vi_admin_notices');
20
- function quick_adsense_vi_admin_notices() {
21
- if(current_user_can('manage_options')) {
22
- $userId = get_current_user_id();
23
- $screen = get_current_screen();
24
- //delete_user_meta($userId, 'quick_adsense_2_1_admin_notice_dismissed');
25
- if(!get_user_meta($userId, 'quick_adsense_2_1_admin_notice_dismissed', true)) {
26
- echo '<div class="notice notice-success quick_adsense_notice is-dismissible" '.((quick_adsense_vi_api_is_loggedin() && ($screen->id != 'toplevel_page_quick-adsense'))?'style="display: none;"':'').'>';
27
- echo '<div id="quick_adsense_notice_container">';
28
- echo '<img id="quick_adsense_notice_vi_logo" src="'.plugins_url('/images/vi-big-logo.png', __FILE__).'" />';
29
- echo '<p class="quick_adsense_notice_title_para">Thank you for updating Quick Adsense!</p>';
30
- echo '<p class="quick_adsense_notice_content_para">This update features <b>vi stories</b> from video intelligence - a video player that supplies both content and video advertising. Watch a <a href="http://demo.vi.ai/ViewsterBlog_Nintendo.html">demo</a>.</p>';
31
- echo '<p class="quick_adsense_notice_content_para"> To begin earning sign up to vi stories and place the ad live now! Read the <a href="https://www.vi.ai/frequently-asked-questions-vi-stories-for-wordpress/?utm_source=WordPress&utm_medium=Plugin%20FAQ&utm_campaign=Quick%20Adsense" target="_blank">FAQ</a>.</p>';
32
- echo '<p class="quick_adsense_notice_info_para">Click the \'Monetize Now\' button to activate vi stories. You\'ll agree to share your domain, affiliate ID and email with video intelligence, and begin your journey to video publisher.</p>';
33
- if($screen->id != 'toplevel_page_quick-adsense') {
34
- echo '<a id="quick_adsense_notice_monetize_button" href="'.esc_url(admin_url('/admin.php?page=quick-adsense#vi-remote-signup')).'">Monetize Now</a>';
35
- } else {
36
- echo '<a id="quick_adsense_notice_monetize_button" href="javascript:;" onclick="jQuery(\'#quick_adsense_vi_signup\').click()">Monetize Now</a>';
37
- }
38
- echo '</div>';
39
- echo '<div class="clear"></div>';
40
- echo '<input type="hidden" id="quick_adsense_admin_notice_nonce" name="quick_adsense_admin_notice_nonce" value="'.wp_create_nonce('quick-adsense-admin-notice').'" />';
41
- echo '<input type="hidden" id="quick_adsense_admin_notice_ajax" name="quick_adsense_admin_notice_ajax" value="'.admin_url('admin-ajax.php').'" />';
42
- echo '<style type="text/css">';
43
- echo '.quick_adsense_notice { padding: 15px; border-left: 4px solid #000; }';
44
- echo '.quick_adsense_notice #quick_adsense_notice_container { font-size: 14px; font-family: Arial; line-height: 18px; color: #232323; }';
45
- echo '.quick_adsense_notice #quick_adsense_notice_container #quick_adsense_notice_vi_logo { float: right; margin: 13px 20px 0 20px; }';
46
- echo '.quick_adsense_notice #quick_adsense_notice_container .quick_adsense_notice_title_para { font-size: 16px; line-height: 18px; margin: 0 0 10px; }';
47
- echo '.quick_adsense_notice #quick_adsense_notice_container .quick_adsense_notice_content_para { font-size: 14px; line-height: 18px; margin: 0; }';
48
- echo '.quick_adsense_notice #quick_adsense_notice_container .quick_adsense_notice_info_para { font-size: 13px; font-style: italic; line-height: 18px; margin: 20px 100px 0 0;float: left;width: calc(100% - 265px); }';
49
- echo '.quick_adsense_notice #quick_adsense_notice_container #quick_adsense_notice_monetize_button { font-size: 16px; color: #000; line-height: 18px; margin: 17px 0 0; background: #fff200; padding: 12px 20px 10px; text-decoration: none; box-shadow: 0px 1px 0px 0px #000000; border: 1px solid #f0e400; border-radius: 3px; display: inline-block; float: left; font-weight: 600; }';
50
- echo '@media only screen and (max-width: 992px) {';
51
- echo '.quick_adsense_notice #quick_adsense_notice_container #quick_adsense_notice_vi_logo { clear: both; float: none; margin: 0 0 10px; }';
52
- echo '.quick_adsense_notice #quick_adsense_notice_container .quick_adsense_notice_info_para { width: 100%; float: none; clear: both; margin: 10px 0 0; }';
53
- echo '}';
54
- echo '</style>';
55
- echo '</div>';
56
- }
57
- }
58
- }
59
-
60
- add_action('wp_ajax_quick_adsense_vi_admin_notice_dismiss', 'quick_adsense_vi_admin_notice_dismiss');
61
- function quick_adsense_vi_admin_notice_dismiss() {
62
- check_ajax_referer('quick-adsense-admin-notice', 'quick_adsense_admin_notice_nonce');
63
- $userId = get_current_user_id();
64
- update_user_meta($userId, 'quick_adsense_2_1_admin_notice_dismissed', 'true');
65
- die();
66
- }
67
-
68
- function quick_adsense_vi_admin_notice_reactivate() {
69
- $userId = get_current_user_id();
70
- delete_user_meta($userId, 'quick_adsense_2_1_admin_notice_dismissed');
71
- }
72
- /*End Vi Admin Notice */
73
-
74
- /*Begin Vi Width Check Admin Notice*/
75
- add_action('admin_footer', 'quick_adsense_vi_width_check_admin_notice_admin_footer');
76
- function quick_adsense_vi_width_check_admin_notice_admin_footer() {
77
- echo '<script type="text/javascript">';
78
- echo "jQuery(document).ready(function() {";
79
- echo "jQuery('.quick_adsense_vi_width_check_notice').on('click', '.notice-dismiss', function() {";
80
- echo "jQuery.post(";
81
- echo "jQuery('#quick_adsense_vi_width_check_admin_notice_ajax').val(), {";
82
- echo "'action': 'quick_adsense_vi_width_check_admin_notice_dismiss',";
83
- echo "'quick_adsense_vi_width_check_admin_notice_nonce': jQuery('#quick_adsense_vi_width_check_admin_notice_nonce').val(),";
84
- echo "}, function(response) { }";
85
- echo ");";
86
- echo "});";
87
- echo "});";
88
- echo '</script>';
89
- }
90
-
91
- add_action('wp_ajax_quick_adsense_vi_width_check_admin_notice_dismiss', 'quick_adsense_vi_width_check_admin_notice_dismiss');
92
- function quick_adsense_vi_width_check_admin_notice_dismiss() {
93
- check_ajax_referer('quick-adsense-vi-width-check-admin-notice', 'quick_adsense_vi_width_check_admin_notice_nonce');
94
- update_option('quick_adsense_vi_width_check_dismissed', 'true');
95
- die();
96
- }
97
-
98
- add_action('admin_notices', 'quick_adsense_vi_width_check_admin_notices');
99
- function quick_adsense_vi_width_check_admin_notices() {
100
- if(current_user_can('manage_options')) {
101
- //delete_option('quick_adsense_vi_width_check_dismissed');
102
- $viWidthCheck = get_option('quick_adsense_vi_width_check_dismissed');
103
- if(!$viWidthCheck) {
104
- $viWidthCheckTrigger = get_option('quick_adsense_vi_width_check_trigger');
105
- if(isset($viWidthCheckTrigger) && ($viWidthCheckTrigger == 'true')) {
106
- echo '<div class="notice notice-error quick_adsense_vi_width_check_notice is-dismissible">';
107
- echo '<div id="quick_adsense_notice_container">';
108
- echo '<img id="quick_adsense_notice_vi_logo" src="'.plugins_url('/images/vi-big-logo.png', __FILE__).'" />';
109
- echo '<p class="quick_adsense_notice_title_para">Ad unit is too small, vi stories is not working on your site.</p>';
110
- echo '<p class="quick_adsense_notice_content_para">The minimum vi stories unit size is 336x280px.<br />Please insert the tag into a bigger unit.</p>';
111
- echo '</div>';
112
- echo '<div class="clear"></div>';
113
- echo '<input type="hidden" id="quick_adsense_vi_width_check_admin_notice_nonce" name="quick_adsense_vi_width_check_admin_notice_nonce" value="'.wp_create_nonce('quick-adsense-vi-width-check-admin-notice').'" />';
114
- echo '<input type="hidden" id="quick_adsense_vi_width_check_admin_notice_ajax" name="quick_adsense_vi_width_check_admin_notice_ajax" value="'.admin_url('admin-ajax.php').'" />';
115
- echo '<style type="text/css">';
116
- echo '.quick_adsense_vi_width_check_notice { padding: 15px; border-left: 4px solid #000; }';
117
- echo '.quick_adsense_vi_width_check_notice #quick_adsense_notice_container { font-size: 14px; font-family: Arial; line-height: 18px; color: #232323; }';
118
- echo '.quick_adsense_vi_width_check_notice #quick_adsense_notice_container #quick_adsense_notice_vi_logo { float: right; margin: 13px 20px 0 20px; }';
119
- echo '.quick_adsense_vi_width_check_notice #quick_adsense_notice_container .quick_adsense_notice_title_para { font-size: 16px; line-height: 18px; margin: 0 0 10px; }';
120
- echo '.quick_adsense_vi_width_check_notice #quick_adsense_notice_container .quick_adsense_notice_content_para { font-size: 14px; line-height: 18px; margin: 0; }';
121
- echo '@media only screen and (max-width: 992px) {';
122
- echo '.quick_adsense_vi_width_check_notice #quick_adsense_notice_container #quick_adsense_notice_vi_logo { clear: both; float: none; margin: 0 0 10px; }';
123
- echo '}';
124
- echo '</style>';
125
- echo '</div>';
126
- }
127
- }
128
- }
129
- }
130
-
131
- add_action('init', 'quick_adsense_vi_width_check_init');
132
- function quick_adsense_vi_width_check_init() {
133
- if(isset($_GET['quick_adsense_vi_width_check']) && ($_GET['quick_adsense_vi_width_check'] != '')) {
134
- check_ajax_referer('quick_adsense_vi_width_check', 'quick_adsense_vi_width_check');
135
- update_option('quick_adsense_vi_width_check_trigger', 'true');
136
- die();
137
- }
138
- }
139
- /*End Vi Width Check Admin Notice*/
140
-
141
- function quick_adsense_vi_plugin_card_content($isLoggedin = false, $isAjaxRequest = false) {
142
- if(!$isLoggedin) {
143
- echo '<div class="quick_adsense_vi_block_header">Start earning with <a href="https://www.vi.ai/publisher-video-monetization/?aid=WP_quickadsense&utm_source=Wordpress&utm_medium=wp_quickadsense">vi stories</a></div>';
144
- echo '<div class="quick_adsense_vi_block_content" '.(($isAjaxRequest)?'style="opacity: 0;"':'').'>';
145
- echo '<p>With <strong>vi stories</strong> you’ll see video ads that are matched to your site’s content straight away. It increases time on site, and commands a higher CPM than display advertising. A few days after activation you’ll begin to receive revenue from advertising.</p>';
146
- echo '<ul>';
147
- echo '<li>The set up takes only a few minutes</li>';
148
- echo '<li>Up to 10x higher CPM than traditional display advertising</li>';
149
- echo '<li>Users spend longer on your site thanks to professional video content</li>';
150
- echo '<li>The video player is customizable to match your site</li>';
151
- echo '</ul>';
152
- echo '<p>Install it now to increase time-on-page, and your revenue thanks to high CPMs.</p>';
153
- echo '</div>';
154
- echo '<div class="quick_adsense_vi_block_footer" '.(($isAjaxRequest)?'style="opacity: 0;"':'').'>';
155
- echo '<span>By clicking sign up you agree to send your current domain, email and affiliate ID to video intelligence & Quick AdSense.</span>';
156
- echo '<a id="quick_adsense_vi_login" href="javascript:;" class="button button-secondary">Log In</a>';
157
- echo '<a id="quick_adsense_vi_signup" href="javascript:;" class="button button-primary">Sign Up</a>';
158
- echo '<div class="clear"></div>';
159
- echo '</div>';
160
- } else {
161
- $dashboardURL = quick_adsense_vi_api_get_dashboardurl();
162
- echo '<div class="quick_adsense_vi_block_header">Monetization with vi stories</div>';
163
- echo '<div class="quick_adsense_vi_block_content" '.(($isAjaxRequest)?'style="opacity: 0;"':'').'>';
164
- echo '<div id="quick_adsense_vi_earnings_wrapper">';
165
- echo '<div class="quick_adsense_ajaxloader"></div>';
166
- echo '</div>';
167
- echo '</div>';
168
- echo '<div class="quick_adsense_vi_block_footer" '.(($isAjaxRequest)?'style="opacity: 0;"':'').'>';
169
- echo '<a id="quick_adsense_vi_dashboard" href="'.$dashboardURL.'" target="_blank" class="button button-primary alignleft">Publisher Dashboard</a>';
170
- echo '<a id="quick_adsense_vi_customize_adcode" href="javascript:;" class="button button-primary alignleft">Configure vi Code</a>';
171
- echo '<a id="quick_adsense_vi_logout" href="javascript:;" class="button button-secondary">Log Out</a>';
172
- echo '<div class="clear"></div>';
173
- echo '</div>';
174
- }
175
- if(quick_adsense_vi_api_get_vi_code() !== false) {
176
- echo '<input id="quick_adsense_vi_embedcode_status" type="hidden" value="Configured" />';
177
- } else {
178
- echo '<input id="quick_adsense_vi_embedcode_status" type="hidden" value="NotConfigured" />';
179
- }
180
- }
181
-
182
- add_action('wp_ajax_quick_adsense_vi_get_chart', 'quick_adsense_vi_get_chart');
183
- function quick_adsense_vi_get_chart() {
184
- check_ajax_referer('quick-adsense', 'quick_adsense_nonce');
185
- $revenueData = quick_adsense_vi_api_get_revenue_data();
186
- if(isset($revenueData) && is_array($revenueData)) {
187
- echo '###SUCCESS###';
188
- echo '<div id="quick_adsense_vi_earnings">';
189
- echo '<p>Below you can see your current revenues.</p>';
190
- echo '<span id="quick_adsense_vi_earnings_label">Total Earnings</span>';
191
- echo '<span id="quick_adsense_vi_earnings_value">$'.$revenueData['netRevenue'].'</span>';
192
- echo '</div>';
193
- echo '<div id="quick_adsense_vi_chart_wrapper">';
194
- echo '<canvas id="quick_adsense_vi_chart" width="1377" height="180"></canvas>';
195
- echo '<textarea id="quick_adsense_vi_chart_data" style="display: none;">[';
196
- if(isset($revenueData['mtdReport']) && is_array($revenueData['mtdReport']) & (count($revenueData['mtdReport']) > 0)) {
197
- $isFirstItem = true;
198
- foreach($revenueData['mtdReport'] as $reportData) {
199
- if(!$isFirstItem) {
200
- echo ',';
201
- }
202
- $date = DateTime::createFromFormat('d-m-Y', $reportData['date']);
203
- echo '{"x": "'.$date->format('m/d/Y').'", "y": "'.$reportData['revenue'].'"}';
204
- $isFirstItem = false;;
205
- }
206
- } else {
207
- echo '{"x": "'.date('m/d/Y').'", "y": "0.00"}';
208
- }
209
- echo ']</textarea>';
210
- echo '</div>';
211
- echo '<div class="clear"></div>';
212
- } else {
213
- echo '<p class="viError">There was an error processing your request, our team was notified.<br />Try clearing your browser cache, log out and log in again.</p>';
214
- echo '<div id="quick_adsense_vi_earnings_wrapper">';
215
- echo '<div id="quick_adsense_vi_earnings">';
216
- echo '<span id="quick_adsense_vi_earnings_label">Total Earnings</span>';
217
- echo '<span id="quick_adsense_vi_earnings_value"><img src="'.plugins_url('/images/vi-no-data.jpg', __FILE__).'"></span>';
218
- echo '</div>';
219
- echo '<div id="quick_adsense_vi_chart_wrapper">';
220
- echo '<img width="348" height="139" src="'.plugins_url('/images/vi-empty-graph.jpg', __FILE__).'">';
221
- echo '</div>';
222
- echo '<div class="clear"></div>';
223
- echo '</div>';
224
- }
225
- die();
226
- }
227
-
228
- /* Begin Signup Form */
229
- add_action('wp_ajax_quick_adsense_vi_signup_form_get_content', 'quick_adsense_vi_signup_form_get_content');
230
- function quick_adsense_vi_signup_form_get_content() {
231
- check_ajax_referer('quick-adsense', 'quick_adsense_nonce');
232
- $signupURL = quick_adsense_vi_api_get_signupurl();
233
- if(($signupURL != false) && ($signupURL != '')) {
234
- echo '<div class="quick_adsense_popup_content_wrapper">';
235
- echo '<iframe src="'.$signupURL.'?aid=WP_quickadsense&utm_source=Wordpress&utm_medium=WP_quickadsense&utm_campaign=white&utm_content=WP_quickadsense&email='.get_bloginfo('admin_email').'&domain='.quick_adsense_get_domain_name_from_url(get_bloginfo('url')).'" style="width: 100%; max-width: 870px; min-height: 554px;"></iframe>';
236
- echo '<script type="text/javascript">';
237
- echo 'jQuery(".ui-dialog-buttonset").find("button").first().remove();';
238
- echo 'jQuery(".ui-dialog-buttonset").find("button").first().find("span:nth-child(2)").hide().after("<span class=\'ui-button-text\'>Close</span>");';
239
- echo '</script>';
240
- echo '</div>';
241
- } else {
242
- echo '<div class="quick_adsense_popup_content_wrapper">';
243
- echo '<p> There was an error processing your request. Please try again later.</p>';
244
- echo '</div>';
245
- }
246
- die();
247
- }
248
-
249
- function quick_adsense_get_domain_name_from_url($url){
250
- $pieces = parse_url($url);
251
- $domain = isset($pieces['host']) ? $pieces['host'] : '';
252
- if(preg_match('/(?P<domain>[a-z0-9][a-z0-9\-]{1,63}\.[a-z\.]{2,6})$/i', $domain, $regs)){
253
- return $regs['domain'];
254
- }
255
- return false;
256
- }
257
- /* End Signup Form */
258
-
259
- /* Begin Login Form */
260
- add_action('wp_ajax_quick_adsense_vi_login_form_get_content', 'quick_adsense_vi_login_form_get_content');
261
- function quick_adsense_vi_login_form_get_content() {
262
- check_ajax_referer('quick-adsense', 'quick_adsense_nonce');
263
- echo '<div class="quick_adsense_popup_content_wrapper">';
264
- echo '<div class="quick_adsense_vi_loginform_wrapper">';
265
- quick_adsense_vi_login_form_get_controls();
266
- echo '</div>';
267
- echo '<script type="text/javascript">';
268
- echo 'jQuery(".ui-dialog-buttonset").find("button").first().find("span:nth-child(2)").hide().after("<span class=\'ui-button-text\'>Login</span>");';
269
- echo 'jQuery(".ui-dialog-buttonset").find("button").first().find("span:nth-child(1)").attr("class", "ui-button-icon-primary ui-icon ui-icon-key");';
270
- echo '</script>';
271
- echo '</div>';
272
- die();
273
- }
274
-
275
- add_action('wp_ajax_quick_adsense_vi_login_form_save_action', 'quick_adsense_vi_login_form_save_action');
276
- function quick_adsense_vi_login_form_save_action() {
277
- check_ajax_referer('quick-adsense', 'quick_adsense_nonce');
278
- if(isset($_POST['quick_adsense_vi_login_username']) && ($_POST['quick_adsense_vi_login_username'] != '') && isset($_POST['quick_adsense_vi_login_password']) && ($_POST['quick_adsense_vi_login_password'] != '')) {
279
- $token = quick_adsense_vi_api_login($_POST['quick_adsense_vi_login_username'], $_POST['quick_adsense_vi_login_password']);
280
- if(is_array($token) && (isset($token['status'])) && ($token['status'] == 'error')) {
281
- quick_adsense_vi_login_form_get_controls();
282
- if($token['errorCode'] == 'WIVI008') {
283
- echo '<p class="quick_adsense_vi_login_error">'.$token['message'].'</p>';
284
- } else {
285
- echo '<p class="quick_adsense_vi_login_error">Error Code: '.$token['errorCode'].'<br />Please contact support or try again later!'.'</p>';
286
- }
287
- } else {
288
- echo '###SUCCESS###';
289
- quick_adsense_vi_plugin_card_content(true, true);
290
- }
291
- }
292
- die();
293
- }
294
-
295
- function quick_adsense_vi_login_form_get_controls() {
296
- echo '<div style="margin: 15px 0; padding: 5px; border: 1px solid #999999; border-radius: 5px; position: relative;">';
297
- echo '<label style="font-weight: bold; position: absolute; left: 15px; top: -10px; background: #FFFFFF; color: #111111; padding: 0px 10px;">Login</label>';
298
- echo '<div style="margin: 10px 0 10px; padding: 0 10px; position: relative;">';
299
- echo '<p>Please log in with the received credentials to complete the integration:</p>';
300
- echo '<p>';
301
- echo quickadsense_get_control('text', 'Email', 'quick_adsense_vi_login_username', 'quick_adsense_vi_login_username');
302
- echo '</p>';
303
- echo '<p>';
304
- echo quickadsense_get_control('password', 'Password', 'quick_adsense_vi_login_password', 'quick_adsense_vi_login_password');
305
- echo '</p>';
306
- echo '</div>';
307
- echo '</div>';
308
- }
309
- /* End Login Form */
310
-
311
- /* Begin Logout */
312
- add_action('wp_ajax_quick_adsense_vi_logout_action', 'quick_adsense_vi_logout_action');
313
- function quick_adsense_vi_logout_action() {
314
- check_ajax_referer('quick-adsense', 'quick_adsense_nonce');
315
- quick_adsense_vi_api_logout();
316
- echo '###SUCCESS###';
317
- quick_adsense_vi_plugin_card_content(false, true);
318
- die();
319
- }
320
- /* End Logout */
321
-
322
- /* Begin Configure vi Code */
323
- add_action('wp_ajax_quick_adsense_vi_customize_adcode_form_get_content', 'quick_adsense_vi_customize_adcode_form_get_content');
324
- function quick_adsense_vi_customize_adcode_form_get_content() {
325
- check_ajax_referer('quick-adsense', 'quick_adsense_nonce');
326
- $vicodeSettings = get_option('quick_adsense_vi_code_settings');
327
- echo '<div style="margin: 15px 0; padding: 5px; border: 1px solid #999999; border-radius: 5px; position: relative;">';
328
- echo '<label style="font-weight: bold; position: absolute; left: 15px; top: -10px; background: #FFFFFF; color: #111111; padding: 0px 10px;">vi stories: customize your video player</label>';
329
- echo '<div style="margin: 10px 0 10px; padding: 0 10px; position: relative;">';
330
- echo '<div class="quick_adsense_popup_content_wrapper">';
331
- echo '<p>Use this form to customize the look of the video unit. Use the same parameters as your WordPress theme for a natural look on your site.<br />You can use <b>vi stories</b> for <i>Ad - Beginning of Post</i> and <i>Ad - Middle of Post</i></p>';
332
- echo '<div class="quick_adsense_vi_popup_right_column">';
333
- echo '<img style="margin: 0 auto; display: block;" src="'.plugins_url('/images/advertisement-preview.png', __FILE__).'" />';
334
- echo '</div>';
335
- echo '<div class="quick_adsense_vi_popup_left_column">';
336
- echo '<p id="quick_adsense_vi_customize_adcode_keywords_required_error" style="display: none;" class="viError">Keywords contains invalid characters, Some required fields are missing</p>';
337
- echo '<p id="quick_adsense_vi_customize_adcode_keywords_error" style="display: none;" class="viError">Keywords contains invalid characters</p>';
338
- echo '<p id="quick_adsense_vi_customize_adcode_required_error" style="display: none;" class="viError">Some required fields are missing</p>';
339
- $adUnitOptions = array(
340
- array('text' => 'vi stories', 'value' => 'NATIVE_VIDEO_UNIT'),
341
- );
342
- echo '<p>';
343
- echo quickadsense_get_control('select', 'Ad Unit*', 'quick_adsense_vi_code_settings_ad_unit_type', 'quick_adsense_vi_code_settings_ad_unit_type', ((isset($vicodeSettings['ad_unit_type']))?$vicodeSettings['ad_unit_type']:''), $adUnitOptions);
344
- echo '<small></small><span class="tooltipWrapper"><span class="tooltip">- vi stories (video advertising + video content)</span></span><small></small>';
345
- echo '</p>';
346
- echo '<p>';
347
- echo quickadsense_get_control('textarea', 'Keywords', 'quick_adsense_vi_code_settings_keywords', 'quick_adsense_vi_code_settings_keywords', ((isset($vicodeSettings['keywords']))?$vicodeSettings['keywords']:''), null, 'input widefat', '', 'Max length 200 chars. a-z, A-Z, numbers, dashes, umlauts and accents are allowed.');
348
- echo '<small></small><span class="tooltipWrapper"><span class="tooltip">Comma separated values describing the content of the page e.g. \'cooking, grilling, pulled pork\'</span></span><small></small>';
349
- echo '</p>';
350
- echo '<p>';
351
- echo quickadsense_get_control('select', 'IAB Category*', 'quick_adsense_vi_code_settings_iab_category_parent', 'quick_adsense_vi_code_settings_iab_category_parent', ((isset($vicodeSettings['iab_category_parent']))?$vicodeSettings['iab_category_parent']:''), quick_adsense_vi_get_constant_iab_parent_categories());
352
- echo '<small></small><a class="textTip" target="_blank" href="'.quick_adsense_vi_api_get_iabCategoriesURL().'">See Complete List</a><small></small>';
353
- echo '</p>';
354
- echo '<p>';
355
- echo quickadsense_get_control('select', '&nbsp;', 'quick_adsense_vi_code_settings_iab_category_child', 'quick_adsense_vi_code_settings_iab_category_child', ((isset($vicodeSettings['iab_category_child']))?$vicodeSettings['iab_category_child']:''), quick_adsense_vi_get_constant_iab_child_categories());
356
- echo '<small></small>';
357
- echo '</p>';
358
- $languages = quick_adsense_vi_api_get_languages();
359
- $languageOptions = array(
360
- array('text' => 'Select language', 'value' => 'select'),
361
- );
362
- if($languages != false) {
363
- foreach($languages as $key => $value) {
364
- $languageOptions[] = array('text' => $value, 'value' => $key);
365
- }
366
- }
367
- echo '<p>';
368
- echo quickadsense_get_control('select', 'Language', 'quick_adsense_vi_code_settings_language', 'quick_adsense_vi_code_settings_language', ((isset($vicodeSettings['language']))?$vicodeSettings['language']:''), $languageOptions);
369
- echo '<small></small>';
370
- echo '</p>';
371
- echo '<p>';
372
- echo quickadsense_get_control('text', 'Native Background color', 'quick_adsense_vi_code_settings_native_bg_color', 'quick_adsense_vi_code_settings_native_bg_color', ((isset($vicodeSettings['native_bg_color']))?$vicodeSettings['native_bg_color']:''), null, 'input widefat', '', 'Select color');
373
- echo '<small></small>';
374
- echo '</p>';
375
- echo '<p>';
376
- echo quickadsense_get_control('text', 'Native Text color', 'quick_adsense_vi_code_settings_native_text_color', 'quick_adsense_vi_code_settings_native_text_color', ((isset($vicodeSettings['native_text_color']))?$vicodeSettings['native_text_color']:''), null, 'input widefat', '', 'Select color');
377
- echo '<small></small>';
378
- echo '</p>';
379
- echo '<p>';
380
- echo quickadsense_get_control('select', 'Native Text Font Family', 'quick_adsense_vi_code_settings_font_family', 'quick_adsense_vi_code_settings_font_family', ((isset($vicodeSettings['font_family']))?$vicodeSettings['font_family']:''), quick_adsense_vi_get_constant_fonts());
381
- echo '<small></small>';
382
- echo '</p>';
383
- echo '<p>';
384
- echo quickadsense_get_control('select', 'Native Text Font Size', 'quick_adsense_vi_code_settings_font_size', 'quick_adsense_vi_code_settings_font_size', ((isset($vicodeSettings['font_size']))?$vicodeSettings['font_size']:''), quick_adsense_vi_get_constant_font_sizes());
385
- echo '<small></small>';
386
- echo '</p>';
387
- echo '<p class="quick_adsense_vi_delay_notice">vi Ad Changes might take some time to take into effect</p>';
388
- echo '</div>';
389
- echo '<div class="clear"></div>';
390
- echo '</div>';
391
- echo '</div>';
392
- echo '</div>';
393
- echo '<div style="margin: 15px 0; padding: 5px; border: 1px solid #999999; border-radius: 5px; position: relative;">';
394
- echo '<label style="font-weight: bold; position: absolute; left: 15px; top: -10px; background: #FFFFFF; color: #111111; padding: 0px 10px;">vi stories: GDPR Compliance</label>';
395
- echo '<div style="margin: 10px 0 10px; padding: 0 10px; position: relative;">';
396
- echo '<p>Enable GDPR Compliance confirmation notice on your site for visitors from EU.<br />If you disable this option make sure you are using a data usage authorization system on your website to remain GDPR complaint.</p>';
397
- $gdprComplainceOptions = array(
398
- array('text' => 'Status : Do not Show GDPR Authorization Popup', 'value' => 'false'),
399
- array('text' => 'Status : Show GDPR Authorization Popup', 'value' => 'true')
400
- );
401
- echo quickadsense_get_control('select', '', 'quick_adsense_vi_code_settings_show_gdpr_authorization', 'quick_adsense_vi_code_settings_show_gdpr_authorization', ((isset($vicodeSettings['show_gdpr_authorization']))?$vicodeSettings['show_gdpr_authorization']:''), $gdprComplainceOptions);
402
- echo '</div>';
403
- echo '</div>';
404
- echo '<script type="text/javascript">';
405
- echo 'jQuery(".ui-dialog-buttonset").find("button").first().find("span:nth-child(2)").hide().after("<span class=\'ui-button-text\' style=\'background: #0085ba; border-color: #0073aa #006799 #006799; color: #fff; padding-left: 1em;\'>Save changes</span>");';
406
- echo 'jQuery(".ui-dialog-buttonset").find("button").first().find("span:nth-child(1)").hide();';
407
- echo 'quick_adsense_vi_code_iab_category_parent_change();';
408
- echo 'jQuery("#quick_adsense_vi_code_settings_native_bg_color").minicolors();';
409
- echo 'jQuery("#quick_adsense_vi_code_settings_native_text_color").minicolors();';
410
- echo '</script>';
411
- die();
412
- }
413
-
414
- add_action('wp_ajax_quick_adsense_vi_customize_adcode_form_save_action', 'quick_adsense_vi_customize_adcode_form_save_action');
415
- function quick_adsense_vi_customize_adcode_form_save_action() {
416
- check_ajax_referer('quick-adsense', 'quick_adsense_nonce');
417
- $vicodeSettings = array();
418
- $vicodeSettings['ad_unit_type'] = ((isset($_POST['quick_adsense_vi_code_settings_ad_unit_type']))?$_POST['quick_adsense_vi_code_settings_ad_unit_type']:'');
419
- $vicodeSettings['keywords'] = ((isset($_POST['quick_adsense_vi_code_settings_keywords']))?$_POST['quick_adsense_vi_code_settings_keywords']:'');
420
- $vicodeSettings['iab_category_parent'] = ((isset($_POST['quick_adsense_vi_code_settings_iab_category_parent']))?$_POST['quick_adsense_vi_code_settings_iab_category_parent']:'');
421
- $vicodeSettings['iab_category_child'] = ((isset($_POST['quick_adsense_vi_code_settings_iab_category_child']))?$_POST['quick_adsense_vi_code_settings_iab_category_child']:'');
422
- $vicodeSettings['language'] = ((isset($_POST['quick_adsense_vi_code_settings_language']))?$_POST['quick_adsense_vi_code_settings_language']:'');
423
- $vicodeSettings['native_bg_color'] = ((isset($_POST['quick_adsense_vi_code_settings_native_bg_color']))?$_POST['quick_adsense_vi_code_settings_native_bg_color']:'');
424
- $vicodeSettings['native_text_color'] = ((isset($_POST['quick_adsense_vi_code_settings_native_text_color']))?$_POST['quick_adsense_vi_code_settings_native_text_color']:'');
425
- $vicodeSettings['font_family'] = ((isset($_POST['quick_adsense_vi_code_settings_font_family']))?$_POST['quick_adsense_vi_code_settings_font_family']:'');
426
- $vicodeSettings['font_size'] = ((isset($_POST['quick_adsense_vi_code_settings_font_size']))?$_POST['quick_adsense_vi_code_settings_font_size']:'');
427
-
428
- $vicodeSettings['show_gdpr_authorization'] = ((isset($_POST['quick_adsense_vi_code_settings_show_gdpr_authorization']))?$_POST['quick_adsense_vi_code_settings_show_gdpr_authorization']:'');
429
- update_option('quick_adsense_vi_code_settings', $vicodeSettings);
430
- $viCodeStatus = quick_adsense_vi_api_set_vi_code($vicodeSettings);
431
- if(is_array($viCodeStatus) && (isset($viCodeStatus['status'])) && ($viCodeStatus['status'] == 'error')) {
432
- if($viCodeStatus['errorCode'] == 'WIVI108') {
433
- echo '###FAIL###';
434
- echo '<p class="viError">'.$viCodeStatus['message'].'</p>';
435
- } else {
436
- echo '###FAIL###';
437
- echo '<p class="viError">There was an error processing your request, our team was notified.<br />Try clearing your browser cache, log out and log in again.</p>';
438
- echo '<p style="font-size: 10px; margin: 0;">'.$viCodeStatus['errorCode'].': '.$viCodeStatus['message'].'</p>';
439
- }
440
- } else {
441
- echo '###SUCCESS###';
442
- }
443
- die();
444
- }
445
-
446
- function quick_adsense_vi_customize_adcode_get_settings() {
447
- $vicodeSettings = get_option('quick_adsense_vi_code_settings');
448
-
449
- $output = '';
450
- if(isset($vicodeSettings) && is_array($vicodeSettings)) {
451
- $output .= '<p class="quick_adsense_vi_code_data_wrapper">';
452
- if(isset($vicodeSettings['ad_unit_type']) && ($vicodeSettings['ad_unit_type'] != '') && ($vicodeSettings['ad_unit_type'] != 'select')) {
453
- $output .= '<label>Ad Unit:</label><b>vi stories</b>';
454
- }
455
-
456
- if(isset($vicodeSettings['keywords']) && ($vicodeSettings['keywords'] != '')) {
457
- $output .= '<label>Keywords:</label><b>'.$vicodeSettings['keywords'].'</b>';
458
- }
459
-
460
- if(isset($vicodeSettings['iab_category_child']) && ($vicodeSettings['iab_category_child'] != '') && ($vicodeSettings['iab_category_child'] != 'select')) {
461
- $IABChildCategories = quick_adsense_vi_get_constant_iab_child_categories();
462
- foreach($IABChildCategories as $IABChildCategoryItem) {
463
- if($vicodeSettings['iab_category_child'] == $IABChildCategoryItem['value']) {
464
- $output .= '<label>IAB Category:</label><b>'.$IABChildCategoryItem['text'].'</b>';
465
- }
466
- }
467
- }
468
-
469
- $languages = quick_adsense_vi_api_get_languages();
470
- if(isset($vicodeSettings['language']) && ($vicodeSettings['language'] != '') && ($vicodeSettings['language'] != 'select')) {
471
- if($languages != false) {
472
- foreach($languages as $key => $value) {
473
- if($vicodeSettings['language'] == $key) {
474
- $output .= '<label>Language:</label><b>'.$value.'</b>';
475
- }
476
- }
477
- }
478
- }
479
-
480
- if(isset($vicodeSettings['native_bg_color']) && ($vicodeSettings['native_bg_color'] != '')) {
481
- $output .= '<label>Native Background color:</label><b>'.$vicodeSettings['native_bg_color'].'</b>';
482
- }
483
-
484
- if(isset($vicodeSettings['native_text_color']) && ($vicodeSettings['native_text_color'] != '')) {
485
- $output .= '<label>Native Text color:</label><b>'.$vicodeSettings['native_text_color'].'</b>';
486
- }
487
-
488
- if(isset($vicodeSettings['font_family']) && ($vicodeSettings['font_family'] != '') && ($vicodeSettings['font_family'] != 'select')) {
489
- $fontFamily = quick_adsense_vi_get_constant_fonts();
490
- foreach($fontFamily as $fontFamilyItem) {
491
- if($vicodeSettings['font_family'] == $fontFamilyItem['value']) {
492
- $output .= '<label>Native Text Font Family:</label><b>'.$fontFamilyItem['text'].'</b>';
493
- }
494
- }
495
- }
496
-
497
- if(isset($vicodeSettings['font_size']) && ($vicodeSettings['font_size'] != '') && ($vicodeSettings['font_size'] != 'select')) {
498
- $fontSize = quick_adsense_vi_get_constant_font_sizes();
499
- foreach($fontSize as $fontSizeItem) {
500
- if($vicodeSettings['font_size'] == $fontSizeItem['value']) {
501
- $output .= '<label>Native Text Font Size:</label><b>'.$fontSizeItem['text'].'</b>';
502
- }
503
- }
504
- }
505
-
506
- if(isset($vicodeSettings['optional_1']) && ($vicodeSettings['optional_1'] != '')) {
507
- $output .= '<label>Optional 1:</label><b>'.$vicodeSettings['optional_1'].'</b>';
508
- }
509
- if(isset($vicodeSettings['optional_2']) && ($vicodeSettings['optional_2'] != '')) {
510
- $output .= '<label>Optional 2:</label><b>'.$vicodeSettings['optional_1'].'</b>';
511
- }
512
- if(isset($vicodeSettings['optional_3']) && ($vicodeSettings['optional_3'] != '')) {
513
- $output .= '<label>Optional 3:</label><b>'.$vicodeSettings['optional_1'].'</b>';
514
- }
515
- $output .= '</p>';
516
- }
517
- return $output;
518
- }
519
- /* End Configure vi Code */
520
-
521
- /* Begin ads.txt */
522
- add_action('wp_ajax_quick_adsense_vi_update_adstxt', 'quick_adsense_vi_update_adstxt');
523
- function quick_adsense_vi_update_adstxt() {
524
- check_ajax_referer('quick-adsense', 'quick_adsense_nonce');
525
- $adstxtContent = quick_adsense_adstxt_get_content();
526
- $adstxtContentData = array_filter(explode("\n", trim($adstxtContent)), 'trim');
527
- $viEntry = quick_adsense_vi_api_get_adstxt_content();
528
- if(strpos(str_replace(array("\r", "\n", " "), '', $adstxtContent), str_replace(array("\r", "\n", " "), '', $viEntry)) !== false) {
529
- die();
530
- } else {
531
- $updatedAdstxtContent = '';
532
- if(strpos($adstxtContent, '# 41b5eef6') !== false) {
533
- foreach($adstxtContentData as $line) {
534
- if(strpos($line, '# 41b5eef6') !== false) {
535
-
536
- } else {
537
- $updatedAdstxtContent .= str_replace(array("\r", "\n", " "), '', $line)."\r\n";
538
- }
539
- }
540
- $updatedAdstxtContent .= $viEntry;
541
- } else {
542
- $updatedAdstxtContent .= $adstxtContent."\r\n".$viEntry;
543
- }
544
-
545
- $adsTxtExists = quick_adsense_adstxt_file_exists();
546
- if(quick_adsense_adstxt_update_content($updatedAdstxtContent)) {
547
- echo '###SUCCESS###';
548
-
549
- if(!$adsTxtExists) {
550
- echo '<div class="notice notice-warning quick_adsense_adsstxt_notice is-dismissible" style="padding: 5px 15px;">';
551
- echo '<div style="font-size: 14px; font-family: Arial; line-height: 18px; color: #232323;">';
552
- echo '<p><b>Quick AdSense has created ads.txt file in the root folder of your web site.</b></p>';
553
- echo '<p>Without this file vi can\'t sell your inventory.<br />If you happen to use another plugin and Google AdSense, please make sure that Google AdSense Publisher ID is added into the ads.txt file. Otherwise, Google might stop delivering ads into that plugin.<br /><br />Check <a href="https://www.vi.ai/faq-ads-txt/?utm_source=Wordpress&utm_medium=wp_quickadsense" target="_blank">FAQ</a> for more information on ads.txt project.</p>';
554
- echo '</div>';
555
- echo '<button type="button" class="notice-dismiss" onclick="javascript:jQuery(this).parent().remove()"><span class="screen-reader-text">Dismiss this notice.</span></button>';
556
- echo '</div>';
557
- } else {
558
- echo '<div class="notice notice-warning quick_adsense_adsstxt_notice is-dismissible" style="padding: 5px 15px;">';
559
- echo '<div style="float: left; max-width: 875px; font-size: 14px; font-family: Arial; line-height: 18px; color: #232323;">';
560
- echo '<p><b>ADS.TXT has been added</b></p>';
561
- echo '<p>Quick Adsense has updated your ads.txt file with lines that declare video intelligence as a legitimate seller of your inventory and enables you to make more money through video intelligence. Read the <a target="_blank" href="https://www.vi.ai/frequently-asked-questions-vi-stories-for-wordpress/?aid=WP_quickadsense&utm_source=Wordpress&utm_medium=wp_quickadsense">FAQ</a>.</p>';
562
- echo '</div>';
563
- echo '<img style="float: right; margin-right: 20px; margin-top: 13px;" src="'.plugins_url('/images/vi-big-logo.png', __FILE__).'" />';
564
- echo '<div class="clear"></div>';
565
- echo '<button type="button" class="notice-dismiss" onclick="javascript:jQuery(this).parent().remove()"><span class="screen-reader-text">Dismiss this notice.</span></button>';
566
- echo '</div>';
567
- }
568
- } else {
569
- echo '###FAIL###';
570
- echo '<div class="notice notice-error quick_adsense_adsstxt_notice is-dismissible" style="padding: 5px 15px;">';
571
- echo '<div style="float: left; max-width: 875px; font-size: 14px; font-family: Arial; line-height: 18px; color: #232323;">';
572
- echo '<p><b>ADS.TXT couldn’t be added</b></p>';
573
- echo '<p>Important note: Quick Adsense hasn’t been able to update your ads.txt file. Please make sure that you enter the following lines manually:</p>';
574
- echo '<p><code style="display: block;">'.trim(str_replace(array("\r\n", "\r", "\n"), "<br />", $viEntry)).'</code><br />Only by doing so, you\'ll be able to make more money through video intelligence (vi.ai).</p>';
575
- echo '</div>';
576
- echo '<img style="float: right; margin-right: 20px; margin-top: 13px;" src="'.plugins_url('/images/vi-big-logo.png', __FILE__).'" />';
577
- echo '<div class="clear"></div>';
578
- echo '<button type="button" class="notice-dismiss" onclick="javascript:jQuery(this).parent().remove()"><span class="screen-reader-text">Dismiss this notice.</span></button>';
579
- echo '</div>';
580
- }
581
- }
582
- die();
583
- }
584
- /* End ads.txt */
585
- ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
quick-adsense.php CHANGED
@@ -3,8 +3,8 @@
3
  Plugin Name: Quick Adsense
4
  Plugin URI: http://quickadsense.com/
5
  Description: Quick Adsense offers a quicker & flexible way to insert Google Adsense or any Ads code into a blog post.
6
- Author: Quicksense
7
- Version: 2.5
8
  Author URI: http://quickadsense.com/
9
  */
10
  /*
@@ -29,13 +29,6 @@ require_once(dirname(__FILE__).'/includes/settings.php');
29
  require_once(dirname(__FILE__).'/includes/widgets.php');
30
  require_once(dirname(__FILE__).'/includes/quicktags.php');
31
  require_once(dirname(__FILE__).'/includes/content.php');
32
- require_once(dirname(__FILE__).'/includes/api/vi.php');
33
- require_once(dirname(__FILE__).'/includes/api/vi-constants.php');
34
- require_once(dirname(__FILE__).'/includes/vi.php');
35
- require_once(dirname(__FILE__).'/includes/vi-gdpr.php');
36
  require_once(dirname(__FILE__).'/includes/adsense.php');
37
  /*End Include Files*/
38
-
39
- register_deactivation_hook(__FILE__, 'quick_adsense_vi_admin_notice_reactivate');
40
- register_activation_hook(__FILE__, 'quick_adsense_vi_api_reset_settings');
41
  ?>
3
  Plugin Name: Quick Adsense
4
  Plugin URI: http://quickadsense.com/
5
  Description: Quick Adsense offers a quicker & flexible way to insert Google Adsense or any Ads code into a blog post.
6
+ Author: Namith Jawahar
7
+ Version: 2.6
8
  Author URI: http://quickadsense.com/
9
  */
10
  /*
29
  require_once(dirname(__FILE__).'/includes/widgets.php');
30
  require_once(dirname(__FILE__).'/includes/quicktags.php');
31
  require_once(dirname(__FILE__).'/includes/content.php');
 
 
 
 
32
  require_once(dirname(__FILE__).'/includes/adsense.php');
33
  /*End Include Files*/
 
 
 
34
  ?>
readme.txt CHANGED
@@ -1,9 +1,9 @@
1
  === Quick Adsense ===
2
- Contributors: quickadsense
3
  Tags: WordPress Plugin, adsense, google adsense, random adsense, random ads, advertising, adsense insertion, ad manager, ad, yahoo, google, ads, text insertion, widget, sidebar, admin, posts, plugin
4
- Requires at least: 4.0
5
- Tested up to: 5.2.4
6
- Stable tag: 2.5
7
 
8
  Quick Adsense offers a quicker & flexible way to insert Google Adsense or any Ads code into a blog post.
9
 
@@ -15,17 +15,18 @@ In general, placing Adsense randomly within a post is a good way to experiment a
15
 
16
  Here are some **features** that come with this plugin:
17
 
18
- 1. Absolutely NO author revenue reward or revenue sharing from your Adsense or that kind of features.
19
- 1. Default Ads positioning: Assign Ads to the beginning of post, assign Ads to the middle of post, assign Ads to the end of post, assign Ads after 'more' tag, assign Ads before last paragraph, assign Ads after certain paragraphs (3 options available) & assign Ads after certain images.
20
- 1. Flexible Ads placement, insert Ads specifically or randomly anywhere within a post.
21
- 1. Simple configuration interface, requires no coding knowledge: Just copy and paste AdSense code, tick & select options, the plugin will then do the rest for you.
22
- 1. Support any Ads code, not limited to Adsense code only.
23
- 1. Display up to a maximum of 10 Ads on a page. Google allows publishers to place up to 3 Adsense for Content on a page. If you are using other Ads, you may display up to 10 Ads.
24
- 1. Support up to a maximum of 10 Ads codes on Sidebar Widgets.
25
- 1. Support up to a maximum of 10 Ads codes for specific placement & randomization within a post.
26
- 1. Insert Ads on-the-fly, simply insert &lt;!--Ads1--&gt;, &lt;!--Ads2--&gt; ... , &lt;!--RndAds--&gt; to a post to accomplish this.
27
- 1. Disable Ads on-the-fly, simply insert &lt;!--NoAds--&gt;, &lt;!--OffDef--&gt;, &lt;!--OffWidget--&gt;, &lt;!--OffBegin--&gt; ... and more to a post to accomplish this.
28
- 1. The above Tags can be inserted into a post easily via the additional Quicktag Buttons added to the HTML Edit Post SubPanel.
 
29
 
30
  Sign up for a [Google Adsense Account](http://adsense.google.com/) to generate revenue from your blog, if you don't have one.
31
 
@@ -48,6 +49,11 @@ Sign up for a [Google Adsense Account](http://adsense.google.com/) to generate r
48
  Please feedback to [http://quickadsense.com/](http://quickadsense.com/) for any bug you might have found, or any suggestion you like to add.
49
 
50
  == Change Log ==
 
 
 
 
 
51
  = 2.4 =
52
  * GDPR consent management module added
53
  * Updated Privacy policy
@@ -60,7 +66,6 @@ Please feedback to [http://quickadsense.com/](http://quickadsense.com/) for any
60
 
61
  = 2.3 =
62
  * Updated ads.txt modification logic
63
- * Introduced monetization with video intelligence AG
64
  * UI fixes
65
 
66
  = 2.2 =
@@ -68,7 +73,6 @@ Please feedback to [http://quickadsense.com/](http://quickadsense.com/) for any
68
 
69
  = 2.1 =
70
  * Optimized UI
71
- * Integrarion with video intelligence on better monetization
72
  * Brought plugin uptodate with latest wordpress standards
73
  * Removed all legacy code
74
  * Legacy Tinymce API replaced with current API
@@ -183,14 +187,3 @@ Please feedback to [http://quickadsense.com/](http://quickadsense.com/) for any
183
  Users privacy is very important to us and we make extra effort not to collect data about the users to the maximum extend possible.
184
  However to provide enhanced functionality we utilize the APIs from different third party services as listed below and the usage of those API are in accordance with their privacy policies.
185
 
186
- = video intelligence =
187
-
188
- The plugin provides deep integration with video intelligence to provide enhanced features and for easy integration with their services.
189
- This third party API and features are utilized only when you enable or use video inteligence related features in the plugin admin and the usage of thier API and features are in accordance to their privacy policy.
190
-
191
- video intelligence ("vi") as a third party, needs to process the user's technical data such as cookie ID, IP Address, Geo-Location and Device ID to personalize content and advertising and analyse our traffic.
192
- You can find below a link vi's Legal webpage where there are transparently presented all GDPR relevant information.
193
- Please access the link to check vi's Privacy Policy, Terms&Conditions pages, Opt Out Mechanism, Vendor and Purposes lists.
194
- https://www.vi.ai/legals/
195
-
196
-
1
  === Quick Adsense ===
2
+ Contributors: Namith Jawahar
3
  Tags: WordPress Plugin, adsense, google adsense, random adsense, random ads, advertising, adsense insertion, ad manager, ad, yahoo, google, ads, text insertion, widget, sidebar, admin, posts, plugin
4
+ Requires at least: 5.0
5
+ Tested up to: 5.6
6
+ Stable tag: 2.6
7
 
8
  Quick Adsense offers a quicker & flexible way to insert Google Adsense or any Ads code into a blog post.
9
 
15
 
16
  Here are some **features** that come with this plugin:
17
 
18
+ * Absolutely NO author revenue reward or revenue sharing from your Adsense or that kind of features.
19
+ * Default Ads positioning: Assign Ads to the beginning of post, assign Ads to the middle of post, assign Ads to the end of post, assign Ads after 'more' tag, assign Ads before last paragraph, assign Ads after certain paragraphs (3 options available) & assign Ads after certain images.
20
+ * Flexible Ads placement, insert Ads specifically or randomly anywhere within a post.
21
+ * Simple configuration interface, requires no coding knowledge: Just copy and paste AdSense code, tick & select options, the plugin will then do the rest for you.
22
+ * Support any Ads code, not limited to Adsense code only.
23
+ * Display up to a maximum of 10 Ads on a page. Google allows publishers to place up to 3 Adsense for Content on a page. If you are using other Ads, you may display up to 10 Ads.
24
+ * Support up to a maximum of 10 Ads codes on Sidebar Widgets.
25
+ * Support up to a maximum of 10 Ads codes for specific placement & randomization within a post.
26
+ * Insert Ads on-the-fly, simply insert &lt;!--Ads1--&gt;, &lt;!--Ads2--&gt; ... , &lt;!--RndAds--&gt; to a post to accomplish this.
27
+ * Disable Ads on-the-fly, simply insert &lt;!--NoAds--&gt;, &lt;!--OffDef--&gt;, &lt;!--OffWidget--&gt;, &lt;!--OffBegin--&gt; ... and more to a post to accomplish this.
28
+ * The above Tags can be inserted into a post easily via the additional Quicktag Buttons added to the HTML Edit Post SubPanel.
29
+ * Backed by <a href="http://www.smartlogix.co.in/" title="SmartLogix Technologies : Experts in WordPress Themes and Plugins">SmartLogix</a>, The Unparalleled WordPress Specialist
30
 
31
  Sign up for a [Google Adsense Account](http://adsense.google.com/) to generate revenue from your blog, if you don't have one.
32
 
49
  Please feedback to [http://quickadsense.com/](http://quickadsense.com/) for any bug you might have found, or any suggestion you like to add.
50
 
51
  == Change Log ==
52
+ = 2.6 =
53
+ * Vi Integration Removed
54
+ * Plugin Ownership Change
55
+ * Bring plugin opto date with latest Wordpress
56
+
57
  = 2.4 =
58
  * GDPR consent management module added
59
  * Updated Privacy policy
66
 
67
  = 2.3 =
68
  * Updated ads.txt modification logic
 
69
  * UI fixes
70
 
71
  = 2.2 =
73
 
74
  = 2.1 =
75
  * Optimized UI
 
76
  * Brought plugin uptodate with latest wordpress standards
77
  * Removed all legacy code
78
  * Legacy Tinymce API replaced with current API
187
  Users privacy is very important to us and we make extra effort not to collect data about the users to the maximum extend possible.
188
  However to provide enhanced functionality we utilize the APIs from different third party services as listed below and the usage of those API are in accordance with their privacy policies.
189