ClickFunnels - Version 2.0

Version Description

Download this release

Release Info

Developer clickfunnels.com
Plugin Icon 128x128 ClickFunnels
Version 2.0
Comparing to
See all releases

Code changes from version 1.1.2 to 2.0

Files changed (19) hide show
  1. CF_API.php +110 -58
  2. access.php +217 -206
  3. admin.php +1 -1
  4. admin_testing.php +0 -84
  5. cf-template.php +0 -14
  6. clickfunnels.php +633 -289
  7. css/admin.css +473 -31
  8. css/bootstrap.css +0 -4004
  9. footer.php +15 -7
  10. geobg.png +0 -0
  11. header.php +6 -0
  12. jquery.js +4 -0
  13. js/admin.js +0 -53
  14. js/hidedraft.js +0 -3
  15. post_shortcode.php +501 -0
  16. readme.md +178 -0
  17. readme.txt +6 -0
  18. reset_data.php +46 -0
  19. support.php +0 -280
CF_API.php CHANGED
@@ -12,102 +12,116 @@ class CF_API {
12
  if ( get_option( 'clickfunnels_api_email' ) == "" || get_option( 'clickfunnels_api_auth' ) == "" ) {
13
  } else {
14
  $new_url = $url.$query;
15
- $content = cf_get_file_contents( $new_url );
 
 
 
16
  $funnels = json_decode( $content );
17
  }
18
  return $funnels;
19
  }
20
- public function get_page_html( $funnel_id, $position = 0, $meta = "", $title = "", $desc = "", $social = "", $cf_iframe_url = "", $pageid = "",$slug = "" ) {
21
- global $wp_query;
22
- if ($wp_query->is_404) {
23
- $wp_query->is_404 = false;
24
- }
25
- header("HTTP/1.1 200 OK");
 
26
 
27
- // if (strpos($position,'{|}') !== false) {
28
- // $splittestkeys = explode( '{|}', $position );
29
- // $number_of_tests = count($splittestkeys);
30
- // $position = $splittestkeys[array_rand($splittestkeys)];
31
- // }
32
 
33
- if($slug == '') {
34
- $slug = $cf_iframe_url;
35
- }
 
 
 
 
 
36
 
37
  $newHTML = '<!DOCTYPE html>
38
  <html>
39
  <head>
40
- <!-- Powered by ClickFunnels.com via WordPress -->
41
  <meta content="text/html;charset=utf-8" http-equiv="Content-Type">
 
 
 
 
42
  <meta content="utf-8" http-equiv="encoding">
43
- '.urldecode( $meta ).'
 
 
 
44
  <meta content="'.$title.'" property="og:title">
45
  <meta content="'.$desc.'" property="og:description">
46
  <meta content="'.$social.'" property="og:image">
47
  <meta property="og:url" content="'.$slug.'">
48
  <meta property="og:type" content="website">
49
- <style>#IntercomDefaultWidget{display:none;}#Intercom{display:none;}</style>
50
- <meta name="nodo-proxy" content="html">
51
- <script>
52
- function getParameterByName(name) {
53
- name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
54
- var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
55
- results = regex.exec(location.search);
56
- return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
57
- }
58
- function getRandomizer(bottom, top) {
59
- return function() {
60
- return Math.floor( Math.random() * ( 1 + top - bottom ) ) + bottom;
61
- }
62
- }
63
- $random = getRandomizer(0,1);
64
- if ($random == 0){
65
- document.cookie = "lander-ab-tests-'.$pageid.'=lander_control";
66
- }
67
- if ($random == 1){
68
- $preview = getParameterByName("preview");
69
- document.cookie = "lander-ab-tests-'.$pageid.'=lander_" + $preview;
70
- }
71
  </script>
72
- <link href="https://assets3.clickfunnels.com/assets/lander.css" media="screen" rel="stylesheet"/>
73
- <script type="text/javascript" src="https://static.clickfunnels.com/clickfunnels/landers/tmp/'.$position.'.js"></script>
74
  </head>
75
  <body>
76
-
77
  </body>
78
  </html>';
79
 
80
-
81
- return $newHTML;
 
 
 
 
 
82
  }
83
-
84
- public function get_page_iframe( $cf_iframe_url, $meta = "", $title = "", $desc = "", $social = "", $pageid = "",$slug = "" ) {
85
- global $wp_query;
86
- if ($wp_query->is_404) {
87
- $wp_query->is_404 = false;
88
- }
89
- header("HTTP/1.1 200 OK");
90
-
91
- // if ($pageid == '') {
92
- // $pageid = $cf_iframe_url;
93
- // }
94
 
95
  if($slug == '') {
96
  $slug = $cf_iframe_url;
97
  }
 
 
 
 
 
 
 
 
98
 
99
  $iframeVersion = '<!DOCTYPE html>
100
  <html>
101
  <head>
102
  <meta content="text/html;charset=utf-8" http-equiv="Content-Type">
 
 
 
 
103
  <meta content="utf-8" http-equiv="encoding">
104
- <!-- Powered by ClickFunnels.com iFrame -->
105
- '.urldecode( $meta ).'
 
 
106
  <meta content="'.$title.'" property="og:title">
107
  <meta content="'.$desc.'" property="og:description">
108
  <meta content="'.$social.'" property="og:image">
109
  <meta property="og:url" content="'.$slug.'">
110
  <meta property="og:type" content="website">
 
 
111
  <style>
112
  * {
113
  margin: 0 !important;
@@ -147,6 +161,44 @@ $iframeVersion = '<!DOCTYPE html>
147
  </body>
148
  </html>';
149
 
150
- return $iframeVersion;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
151
  }
152
  }
 
12
  if ( get_option( 'clickfunnels_api_email' ) == "" || get_option( 'clickfunnels_api_auth' ) == "" ) {
13
  } else {
14
  $new_url = $url.$query;
15
+ $response = wp_remote_get( $new_url );
16
+ if( is_array($response) ) {
17
+ $content = $response['body'];
18
+ }
19
  $funnels = json_decode( $content );
20
  }
21
  return $funnels;
22
  }
23
+ // Regular HTML Version
24
+ public function get_page_html( $funnel_id, $pagekey = 0, $meta = "", $title = "", $desc = "", $social = "", $cf_iframe_url = "", $pageid = "",$slug = "",$favicon = "https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png", $author = "", $keywords = "", $tracking = "", $favicon_choice = "" ) {
25
+ global $wp_query;
26
+ if ($wp_query->is_404) {
27
+ $wp_query->is_404 = false;
28
+ }
29
+ header("HTTP/1.1 200 OK");
30
 
31
+ if ($slug == '') {
32
+ $slug = $cf_iframe_url;
33
+ }
 
 
34
 
35
+ if ($favicon_choice == 'default') {
36
+ $favicon_url = '';
37
+ $favicon_js = '$("link[rel=\'icon\']").remove();';
38
+ }
39
+ else {
40
+ $favicon_url = '<link href="'.$favicon.'" rel="shortcut icon" type="image/x-icon" />';
41
+ $favicon_js = '$("link[rel=\'icon\']").attr(\'href\',\''.$favicon.'\');';
42
+ }
43
 
44
  $newHTML = '<!DOCTYPE html>
45
  <html>
46
  <head>
 
47
  <meta content="text/html;charset=utf-8" http-equiv="Content-Type">
48
+ '.$$favicon_url.'
49
+ <meta name="nodo-proxy" content="html">
50
+ <!-- Meta Data -->
51
+ <title>'.$title.'</title>
52
  <meta content="utf-8" http-equiv="encoding">
53
+ <meta content="'.$desc.'" name="description">
54
+ <meta content="'.$keywords.'" name="keywords">
55
+ <!-- Open Graph -->
56
+ <meta content="'.$author.'" name="author">
57
  <meta content="'.$title.'" property="og:title">
58
  <meta content="'.$desc.'" property="og:description">
59
  <meta content="'.$social.'" property="og:image">
60
  <meta property="og:url" content="'.$slug.'">
61
  <meta property="og:type" content="website">
62
+ <!-- WordPress Only Tracking Code -->
63
+ '.$tracking.'
64
+ <!-- Load ClickFunnels Javscript API -->
65
+ <style type="text/css">#IntercomDefaultWidget{display:none;}#Intercom{display:none;}</style>
66
+ <link href="https://assets3.clickfunnels.com/assets/lander.css" media="screen" rel="stylesheet"/>
67
+ <script type="text/javascript" src="https://static.clickfunnels.com/clickfunnels/landers/tmp/'.$pagekey.'.js"></script>
68
+ <script type="text/javascript">
69
+ // Clean up duplicate meta data
70
+ '.$favicon_js.'
71
+ $(".metaTagTop").remove();
72
+ $("title").last().remove();
73
+ $("meta[property=\'og:description\']").last().remove();
74
+ $("meta[property=\'og:title\']").last().remove();
75
+ $("meta[property=\'og:type\']").last().remove();
76
+ $("meta[property=\'og:url\']").last().remove();
 
 
 
 
 
 
 
77
  </script>
 
 
78
  </head>
79
  <body>
 
80
  </body>
81
  </html>';
82
 
83
+ return $newHTML;
84
+ }
85
+ // Iframe Alternative
86
+ public function get_page_iframe( $cf_iframe_url, $meta = "", $title = "", $desc = "", $social = "", $pageid = "",$slug = "",$favicon = "https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png", $author = "", $keywords = "", $tracking = "", $favicon_choice = "" ) {
87
+ global $wp_query;
88
+ if ($wp_query->is_404) {
89
+ $wp_query->is_404 = false;
90
  }
91
+ header("HTTP/1.1 200 OK");
 
 
 
 
 
 
 
 
 
 
92
 
93
  if($slug == '') {
94
  $slug = $cf_iframe_url;
95
  }
96
+ if ($favicon_choice == 'default') {
97
+ $favicon_url = '';
98
+ $favicon_js = '$("link[rel=\'icon\']").remove();';
99
+ }
100
+ else {
101
+ $favicon_url = '<link href="'.$favicon.'" rel="shortcut icon" type="image/x-icon" />';
102
+ $favicon_js = '$("link[rel=\'icon\']").attr(\'href\',\''.$favicon.'\');';
103
+ }
104
 
105
  $iframeVersion = '<!DOCTYPE html>
106
  <html>
107
  <head>
108
  <meta content="text/html;charset=utf-8" http-equiv="Content-Type">
109
+ '.$favicon_url.'
110
+ <meta name="nodo-proxy" content="html">
111
+ <!-- Meta Data -->
112
+ <title>'.$title.'</title>
113
  <meta content="utf-8" http-equiv="encoding">
114
+ <meta content="'.$desc.'" name="description">
115
+ <meta content="'.$keywords.'" name="keywords">
116
+ <!-- Open Graph -->
117
+ <meta content="'.$author.'" name="author">
118
  <meta content="'.$title.'" property="og:title">
119
  <meta content="'.$desc.'" property="og:description">
120
  <meta content="'.$social.'" property="og:image">
121
  <meta property="og:url" content="'.$slug.'">
122
  <meta property="og:type" content="website">
123
+ <!-- WordPress Only Tracking Code -->
124
+ '.$tracking.'
125
  <style>
126
  * {
127
  margin: 0 !important;
161
  </body>
162
  </html>';
163
 
164
+ return $iframeVersion;
165
+ }
166
+ // Click Gate
167
+ public function get_page_html_clickgate( $funnel_id, $position = 0, $meta = "", $title = "", $desc = "", $social = "", $cf_iframe_url = "", $pageid = "",$slug = "",$favicon = "https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png", $author = "", $keywords = "", $tracking = "" ) {
168
+ global $wp_query;
169
+ if ($wp_query->is_404) {
170
+ $wp_query->is_404 = false;
171
+ }
172
+ header("HTTP/1.1 200 OK");
173
+
174
+ if($slug == '') {
175
+ $slug = $cf_iframe_url;
176
+ }
177
+
178
+ $newHTML = '<!DOCTYPE html>
179
+ <html>
180
+ <head>
181
+ <!-- Load ClickFunnels Javscript API -->
182
+ <style>#IntercomDefaultWidget{display:none;}#Intercom{display:none;}</style>
183
+ <link href="https://assets3.clickfunnels.com/assets/lander.css" media="screen" rel="stylesheet"/>
184
+ <script type="text/javascript" src="https://static.clickfunnels.com/clickfunnels/landers/tmp/'.$position.'.js"></script>
185
+ <script>
186
+ // Clean up duplicate meta data
187
+ $(".metaTagTop").remove();
188
+ $("title").last().remove();
189
+ $("meta[property=\'og:description\']").last().remove();
190
+ $("meta[property=\'og:title\']").last().remove();
191
+ $("meta[property=\'og:type\']").last().remove();
192
+ $("meta[property=\'og:url\']").last().remove();
193
+ </script>
194
+ </head>
195
+ <body>
196
+ <!-- This Page is Powered by ClickFunnels.com -->
197
+ </body>
198
+ </html>';
199
+
200
+
201
+ return $newHTML;
202
  }
203
  }
204
+
access.php CHANGED
@@ -1,221 +1,232 @@
1
-
2
- <style>
3
- .api {
4
- width: 780px;
5
- margin-top: 20px;
6
- border-radius: 5px;
7
  }
8
- .api form {
9
- padding: 0;
10
- }
11
- .api form h3 {
12
- padding: 0;
13
- padding-bottom: 10px;
14
- margin: 0;
15
- font-size: 17px;
16
- margin-top: 10px;
17
- color: #39464E;
18
- font-weight: 400;
19
- }
20
- .api form input {
21
- width: 100%;
22
- font-size: 15px;
23
- padding: 7px;
24
- margin-bottom: 17px;
25
- }
26
- .apiHeader {
27
- background: #39464E repeat;
28
- border-bottom: 3px solid rgba(0,0,0,0.25);
29
- padding: 10px;
30
- padding-top: 15px;
31
- border-top-right-radius: 5px;
32
- border-top-left-radius: 5px;
33
  }
34
- .apiHeader img {
35
- float: left;
36
- margin-left: 10px;
37
- }
38
- .apiHeader a {
39
- float: right;
40
- display: block;
41
- margin-top: 2px !important;
42
- margin-right: 1px !important;
43
- }
44
- .apiSubHeader {
45
- background-color: #0166AE;
46
- border-bottom: 3px solid rgba(0,0,0,0.25);
47
- color: #fff;
48
- padding: 20px;
49
  }
50
- .apiSubHeader h2 {
51
- margin: 0 !important;
52
- padding: 0 !important;
53
- color: #fff;
54
- font-weight: bold;
55
- font-size: 17px;
56
- text-shadow: 1px 1px 0 #0367AE;
57
  }
58
- .leftSide {
59
- width: 380px;
60
- float: left;
61
  }
62
- .leftSide h3 {
63
- font-weight: 900;
64
- font-size: 13px !important;
65
- }
66
- .rightSide {
67
- width: 280px;
68
- float: left;
69
- padding: 20px;
70
- opacity: .7;
71
- padding-left: 30px;
72
  }
73
- .rightSide p {
74
- font-size: 12px;
75
- line-height: 18px;
76
  }
77
- #errorMessage {
78
- clear: both;
79
- padding: 8px;
80
- background: #fafafa;
81
- border: 2px solid #ddd;
82
  }
83
- #errorMessage.success {
84
- border: 2px solid #49BB85;
85
- background: #49BB85;
86
- color: #fff;
87
  }
88
- #errorMessage.error {
89
- border: 2px solid #B72D1C;
90
- background: #B72D1C;
91
- color: #fff;
 
 
 
 
 
 
 
 
 
 
92
  }
93
- .successGreen {
94
- color: #49BB85;
95
- }
96
- .errorRed {
97
- color: #B72D1C;
98
- }
99
- #errorMessage.badAPI {
100
- border: 2px solid #B72D1C;
101
- background: #B72D1C;
102
- color: #fff;
103
- display: none;
104
  }
105
-
106
- .apiHeader a {
107
- float: right;
108
- display: block;
109
- color: #fff;
110
- font-size: 13px;
111
- text-decoration: none;
112
- margin-right: 4px !important;
113
- background-color: rgba(0, 0, 0, .3);
114
- border: 2px solid #2b2e30;
115
- color: #afbbc8 !important;
116
- font-weight: 700;
117
- margin-top: 0px !important;
118
- -webkit-border-radius: 4px;
119
- -moz-border-radius: 4px;
120
- border-radius: 4px;
121
- padding: 7px;
122
- padding-left: 12px;
123
- padding-right: 12px;
124
- text-transform: uppercase;
125
- text-decoration: none;
126
- font-size: 14px;
127
- margin-top: 5px !important;
128
- }
129
- .apiHeader a:hover {
130
- border: 2px solid #1D81C8;
131
- background-color: rgba(0, 0, 0, .6);
132
- color: #fff !important;
133
- }
134
- #side-sortables {
135
- display: none !important;
136
- }
137
-
138
- #apiFooter {
139
- background: #fafafa;
140
- border-radius: 4px;
141
- border: 1px solid #ddd;
142
- margin-right: 120px;
143
- border-bottom: 2px solid #ddd;
144
- padding: 10px 10px;
145
- margin: 0 auto;
146
- width: 735px;
147
- }
148
- #apiFooter a:hover {
149
- text-decoration: none;
150
- }
151
-
152
- #apiSettings {
153
- padding: 10px 25px;
154
- padding-top: 20px;
155
- border: 10px solid #fff;
156
- }
157
- </style>
158
  <link href="<?php echo plugins_url( 'css/font-awesome.css', __FILE__ ); ?>" rel="stylesheet">
159
- <div class="api postbox">
160
- <div class="apiHeader">
161
- <img src="<?php echo plugins_url( 'logo.png', __FILE__ ); ?>" alt="">
162
- <a href="https://www.clickfunnels.com/login" target="_blank" class=""><i class="fa fa-bars"></i> My Account</a>
163
- <br clear="all">
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
164
  </div>
165
- <div class="apiSubHeader">
166
- <h2>Setup Your ClickFunnels API Settings</h2>
167
- </div>
168
- <form method="post" action="<?php echo str_replace( '%7E', '~', $_SERVER['REQUEST_URI'] ); ?>">
169
- <?php
170
- if ( 'yes' == $_REQUEST['save_api'] ) {
171
- if ($_POST['clickfunnels_api_email'] == '') {
172
- echo "<div id='errorMessage' class='error'>Uh oh, you didn't add an email address.</div>";
173
- }
174
- else if ($_POST['clickfunnels_api_auth'] == '') {
175
- echo "<div id='errorMessage' class='error'>Please add API Key.</div>";
176
- }
177
- else {
178
- echo "<div id='errorMessage' class=''>Successlly Updated API Settings</div>";
179
- update_option( 'clickfunnels_api_email', $_POST['clickfunnels_api_email'] );
180
- update_option( 'clickfunnels_api_auth', $_POST['clickfunnels_api_auth'] );
181
- update_option( 'clickfunnels_siteURL', $_POST['clickfunnels_siteURL'] );
182
- update_option( 'clickfunnels_404Redirect', $_POST['clickfunnels_404Redirect'] );
183
- }
184
- }
185
- ?>
186
- <div id="errorMessage" class="badAPI"><i class="fa fa-times"></i> Uh oh, looks like either your Email or API Auth Token is Incorrect</div>
187
- <div id="apiSettings">
188
- <div class="leftSide">
189
- <input type="hidden" class="form-control" name="save_api" value="yes" />
190
- <h3>Account Email: <span class="checkSuccess"></span></h3>
191
- <input type="text" name="clickfunnels_api_email" id="clickfunnels_api_email" placeholder="johndoe@gmail.com" value="<?php echo get_option( 'clickfunnels_api_email' ); ?>" />
192
- <h3>Authentication Token: <span class="checkSuccess"></span></h3>
193
- <input type="text" name="clickfunnels_api_auth" id="clickfunnels_api_auth" placeholder="C5c86J28WbxuxxUqN59z5D" value="<?php echo get_option( 'clickfunnels_api_auth' ); ?>" />
194
- <h3>Website URL: <span class="checkSuccess"><i class="fa fa-check successGreen"></i></span></h3>
195
- <input type="text" name="clickfunnels_siteURL" id="clickfunnels_siteURL" placeholder="http://yourdomain.com/" value="<?php if (get_option( 'clickfunnels_siteURL' ) != '') { echo get_option( 'clickfunnels_siteURL' ); } else { echo get_site_url(); } ?>" />
196
- <!-- <h3><input type="checkbox" value="yesRedirect" <?php if (get_option( 'clickfunnels_404Redirect' ) != '') { echo 'checked'; } ?> name="clickfunnels_404Redirect" style="width: auto;float: left;margin-top:-2px;margin-right: 8px;" /> 404 Redirect to Homepage (LinkSaver)</h3> -->
197
- </div>
198
- <div class="rightSide">
199
- <p>To access your Authentication Token go to your ClickFunnels Members area and choose <a href="https://app.clickfunnels.com/users/edit" target="_blank">My Account > Settings</a> and you will find your API information.</p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
200
 
201
- <br><br><hr><br><br>
202
- <p>Change the website URL only if you have WordPress installed in a sub directory.</p>
203
- </div>
204
- <br clear="both">
205
- </div>
206
- <div id="apiFooter">
207
- <a class="button button-secondary" style="float: left; margin-right: 10px" type="submit" href="<?php echo admin_url( 'edit.php?post_type=clickfunnels' );?>"><i class="fa fa-file-text-o"></i> Pages</a>
208
- <a class="button button-secondary" style="float: left; margin-right: 10px" type="submit" href="<?php echo admin_url( 'post-new.php?post_type=clickfunnels' );?>"><i class="fa fa-plus-circle"></i> Add New</a>
209
- <a href="edit.php?post_type=clickfunnels&page=clickfunnels_support" class="button button-default" style="float: left"><i class="fa fa-life-ring"></i> Support</a>
210
- <button class="button-primary" style="float: right;margin-top: 0px;"><i class="fa fa-check-circle"></i> Save Settings</button>
211
- <br clear="both" />
212
  </div>
213
- <br clear="both" />
214
- </form>
215
- <?php include('footer.php'); ?>
216
-
217
- </div>
218
- <br clear="all">
219
- <span style="font-size: 11px; padding-left: 10px;"><a href="#" id="showDataTesting" style="text-decoration: none; color: #999"><i class="fa fa-dashboard"></i> Show Plugin Developer Data</a></span>
220
- <?php include('admin_testing.php'); ?>
221
-
1
+ <style>.hndle {display: none !important}</style>
2
+ <?php
3
+ if(!get_option( 'clickfunnels_api_email')) {
4
+ update_option( 'clickfunnels_api_email', '');
 
 
5
  }
6
+ if(!get_option( 'clickfunnels_api_auth')) {
7
+ update_option( 'clickfunnels_api_auth', '');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8
  }
9
+ if(!get_option( 'clickfunnels_siteURL')) {
10
+ update_option( 'clickfunnels_siteURL', '');
 
 
 
 
 
 
 
 
 
 
 
 
 
11
  }
12
+ if(!get_option( 'clickfunnels_404Redirect')) {
13
+ update_option( 'clickfunnels_404Redirect', '');
 
 
 
 
 
14
  }
15
+ if(!get_option( 'clickfunnels_agency_group_tag')) {
16
+ update_option( 'clickfunnels_agency_group_tag', '');
 
17
  }
18
+ if(!get_option( 'clickfunnels_agency_api_details')) {
19
+ update_option( 'clickfunnels_agency_api_details', '');
 
 
 
 
 
 
 
 
20
  }
21
+ if(!get_option( 'clickfunnels_agency_reset_data')) {
22
+ update_option( 'clickfunnels_agency_reset_data', '');
 
23
  }
24
+ if(!get_option( 'clickfunnels_agency_hide_settings')) {
25
+ update_option( 'clickfunnels_agency_hide_settings', '');
 
 
 
26
  }
27
+ $the_group_tag = get_option('clickfunnels_agency_group_tag');
28
+ if ( 'yes' == $_REQUEST['save_api'] ) {
29
+ if ($_POST['clickfunnels_api_email'] == '') {
30
+ echo "<div id='message' class='error notice is-dismissible' style='width: 733px;padding: 10px 12px;font-weight: bold'><i class='fa fa-times' style='margin-right: 5px;'></i> Please add an email address. <button type='button' class='notice-dismiss'><span class='screen-reader-text'>Dismiss this notice.</span></button></div>";
31
  }
32
+ else if ($_POST['clickfunnels_api_auth'] == '') {
33
+ echo "<div id='message' class='updated notice is-dismissible' style='width: 733px;padding: 10px 12px;font-weight: bold'><i class='fa fa-times' style='margin-right: 5px;'></i> Please add Authorization Key. <button type='button' class='notice-dismiss'><span class='screen-reader-text'>Dismiss this notice.</span></button></div>";
34
+ }
35
+ else {
36
+ echo "<div id='message' class='updated notice is-dismissible' style='width: 733px;padding: 10px 12px;font-weight: bold'><i class='fa fa-check' style='margin-right: 5px;'></i> Successfully updated ClickFunnels plugin settings. <button type='button' class='notice-dismiss'><span class='screen-reader-text'>Dismiss this notice.</span></button></div>";
37
+ update_option( 'clickfunnels_api_email', $_POST['clickfunnels_api_email'] );
38
+ update_option( 'clickfunnels_api_auth', $_POST['clickfunnels_api_auth'] );
39
+ update_option( 'clickfunnels_siteURL', $_POST['clickfunnels_siteURL'] );
40
+ update_option( 'clickfunnels_404Redirect', $_POST['clickfunnels_404Redirect'] );
41
+ update_option( 'clickfunnels_agency_group_tag', $_POST['clickfunnels_agency_group_tag'] );
42
+ update_option( 'clickfunnels_agency_api_details', $_POST['clickfunnels_agency_api_details'] );
43
+ update_option( 'clickfunnels_agency_reset_data', $_POST['clickfunnels_agency_reset_data'] );
44
+ update_option( 'clickfunnels_agency_hide_settings', $_POST['clickfunnels_agency_hide_settings'] );
45
+ $the_group_tag = $_POST['clickfunnels_agency_group_tag'];
46
  }
 
 
 
 
 
 
 
 
 
 
 
47
  }
48
+ ?>
49
+ <link href="<?php echo plugins_url( 'css/admin.css', __FILE__ ); ?>" rel="stylesheet">
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50
  <link href="<?php echo plugins_url( 'css/font-awesome.css', __FILE__ ); ?>" rel="stylesheet">
51
+ <script>
52
+ jQuery(document).ready(function() {
53
+ // Console Warning
54
+ jQuery('.draft').hide();
55
+ console.log("%cClickFunnels WordPress Plugin", "background: #0166AE; color: white; font-size: 23px");
56
+ console.log("%cEditing anything inside the console is for developers only. Do not paste in any code given to you by anyone. Use with caution. Visit for support: https://support.clickfunnels.com/", "color: #888; font-size: 16px");
57
+ // Tabs
58
+ jQuery('.cftablink').click(function() {
59
+ jQuery('.cftabs').hide();
60
+ jQuery('.cftablink').removeClass('active');
61
+ jQuery(this).addClass('active');
62
+ var tab = jQuery(this).attr('data-tab');
63
+ jQuery('#'+tab).show();
64
+ })
65
+ // Get Funnels API and show Agency Options
66
+ var specificFunnel = 'https://api.clickfunnels.com/funnels.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
67
+ jQuery.getJSON(specificFunnel, function(data) {
68
+ jQuery('.checkSuccess').html('<i class="fa fa-check successGreen"></i>');
69
+ jQuery('.checkSuccessDev').html('<i class="fa fa-check"> Connected</i>');
70
+ jQuery('#api_check').addClass('compatenabled');
71
+ var is_selected = "";
72
+ jQuery.each(data, function() {
73
+ group_tag = '';
74
+ if (this.group_tag) {
75
+ group_tag = this.group_tag.replace(/(['"])/g, "{replace}");
76
+ if ("<?php echo $the_group_tag; ?>" == group_tag) {
77
+ is_selected = 'selected';
78
+ } else {
79
+ is_selected = '';
80
+ }
81
+ if (jQuery("#clickfunnels_agency_group_tag option[value='"+group_tag+"']").length == 0) {
82
+ jQuery('#clickfunnels_agency_group_tag').append('<option value="'+group_tag+'">'+ this.group_tag +'</option>');
83
+ }
84
+ }
85
+ });
86
+ }).done(function() {
87
+ group_tags = "<?php echo $the_group_tag; ?>";
88
+ jQuery("#clickfunnels_agency_group_tag").val(group_tags);
89
+ }).fail(function(jqXHR) {
90
+ jQuery('#api_check').removeClass('compatenabled');
91
+ jQuery('#api_check').addClass('compatdisabled');
92
+ jQuery('.checkSuccess').html('<i class="fa fa-times errorRed"></i>');
93
+ jQuery('.checkSuccessDev').html('<i class="fa fa-times"> Not Connected</i>');
94
+ jQuery('.badAPI').show();
95
+ });
96
+ // If agency is true
97
+ <?php if ($_GET['agency'] && $_GET['agency'] == get_option('clickfunnels_api_auth')) { ?>
98
+ jQuery('#agency_open').trigger('click');
99
+ <?php } ?>
100
+ });
101
+ </script>
102
+ <div id="message" class="badAPI error notice" style="display: none; width: 733px;padding: 10px 12px;font-weight: bold"><i class="fa fa-times" style="margin-right: 5px;"></i> Failed API Connection with ClickFunnels. Check <a href="edit.php?post_type=clickfunnels&page=cf_api&error=compatibility">Settings > Compatibility Check</a> for details.</div>
103
+ <div class="api postbox" style="width: 780px;margin-top: 20px;">
104
+ <!-- Header -->
105
+ <?php include('header.php'); ?>
106
+ <div class="apiSubHeader" style="padding: 18px 16px;">
107
+ <h2 style="font-size: 1.5em"><i class="fa fa-cog" style="margin-right: 5px"></i> Plugin Settings</h2>
108
  </div>
109
+ <form method="post" action="<?php echo str_replace( '%7E', '~', $_SERVER['REQUEST_URI'] ); ?>">
110
+ <div class="bootstrap-wp">
111
+ <div id="app_sidebar">
112
+ <a href="#" data-tab="tab1" class="cftablink <?php if(!$_GET['error']) { echo 'active';} ?>">API Connection</a>
113
+ <a href="#" data-tab="tab2" class="cftablink <?php if($_GET['error']) { echo 'active';} ?>">Compatibility Check</a>
114
+ <a href="#" data-tab="tab5" class="cftablink <?php if($_GET['error']) { echo 'active';} ?>" style="<?php if(get_option('clickfunnels_agency_reset_data') == 'hide') { echo 'display: none';} ?>">Reset Plugin Data</a>
115
+ <a href="#" data-tab="tab4" id="agency_open" class="cftablink" style="display: none;<?php if($_GET['agency'] && $_GET['agency'] == get_option('clickfunnels_api_auth')) { echo 'display: block';} ?>">Agency Feature <small>(hidden)</small></a>
116
+ </div>
117
+ <div id="app_main">
118
+ <div id="tab5" class="cftabs" style="display: none;">
119
+ <!-- Reset Plugin Data -->
120
+ <h2>Reset Plugin Data</h2>
121
+ <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> Delete all your ClickFunnels pages inside your WordPress blog and remove your API details to clean up the database if you are starting fresh.</p>
122
+ <a href="edit.php?post_type=clickfunnels&page=reset_data" class="button" style="margin-left: 51px" onclick="return confirm('Are you sure?')">Delete All Pages and API Settings</a>
123
+ <p class="infoHelp" style="font-style: italic;font-weight: bold;margin-right: 3px;"><i class="fa fa-exclamation-triangle" style="font-weight: bold;margin-right: 3px;color: #E54F3F;"></i> Use with caution.</p>
124
+ </div>
125
+ <div id="tab2" class="cftabs" style="display: none;<?php if($_GET['error']) { echo 'display: block';} ?>">
126
+ <!-- Compatibility Check -->
127
+ <h2>Compatibility Check</h2>
128
+ <span class="compatCheck" id="api_check">API Authorization: <strong class='checkSuccessDev'><i class="fa fa-spinner"></i> Connecting...</strong></span>
129
+ <?php
130
+ if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) {
131
+ echo '<span class="compatCheck compatwarning">CloudFlare: <strong><a target="_blank" href="https://support.clickfunnels.com/support/solutions/5000164139">If you have blank pages, turn off minify for JavaScript.</a></strong></span>';
132
+ }
133
+ ?>
134
+ <?php if ( get_option( 'permalink_structure' ) == '' ) {
135
+ echo '<span class="compatCheck compatdisabled">Permalinks: <strong>ClickFunnels needs <a href="options-permalink.php">custom permalinks</a> enabled!</strong></span>';
136
+ }
137
+ else {
138
+ echo '<span class="compatCheck compatenabled">Permalinks: <strong><i class="fa fa-check"> Enabled</i></strong></span>';
139
+ } ?>
140
+ <?php echo function_exists('curl_version') ? '<span class="compatCheck compatenabled">CURL: <strong><i class="fa fa-check"> Enabled</i></strong></span>' : '<span class="compatCheck"><i class="fa fa-times">Disabled</i></strong></span>' ?>
141
+ <?php echo file_get_contents(__FILE__) ? '<span class="compatCheck compatenabled">File Get Contents: <strong><i class="fa fa-check"> Enabled</i></strong></span>' : '<span class="compatCheck">File Get Contents: <strong><i class="fa fa-times">Disabled</i></strong></span>' ; ?>
142
+ <?php echo ini_get('allow_url_fopen') ? '<span class="compatCheck compatenabled">Allow URL fopen: <strong><i class="fa fa-check"> Enabled</i></strong></span>' : '<span class="compatCheck">Allow URL fopen: <strong><i class="fa fa-times">Disabled</i></strong></span>' ; ?>
143
+ <?php
144
+ if (version_compare(phpversion(), "5.3.0", ">=")) {
145
+ echo '<span class="compatCheck compatenabled">PHP Version: <strong>'.PHP_VERSION.'</strong></span>';
146
+ } else {
147
+ // you're not PHP enough
148
+ echo '<span class="compatCheck compatdisabled">PHP Version: <strong><a href="https://support.clickfunnels.com/support/home" target="_blank">This plugin requires PHP 5.3.0 or above.</a></strong></span>';
149
+ }
150
+ ?>
151
+ </div>
152
+ <div id="tab4" class="cftabs" style="display: none;">
153
+ <!-- Agency Feature -->
154
+ <h2>Agency Feature <small style="float: right;opacity: .7;margin-top: 7px;font-size: 12px;margin-right: 53px;">(for advanced users only)</small></h2>
155
+ <div class="control-group clearfix" >
156
+ <label class="control-label" for="clickfunnels_agency_group_tag"> Only Show Group Tag:</span> </label>
157
+ <div class="controls" style="padding-left: 24px;margin-bottom: 16px;">
158
+ <select name="clickfunnels_agency_group_tag" id="clickfunnels_agency_group_tag" class="input-xlarge" style="height: 30px;">
159
+ <option value="off">Show All Funnels (default)</option>
160
+ <option value="ungrouped" <?php if (get_option('clickfunnels_agency_group_tag') == 'ungrouped') { echo "selected";} ?>>Only Show: UnGrouped Funnels</option>
161
+ <!-- Get Group Tags Funnel JSON API -->
162
+ </select>
163
+ </div>
164
+ </div>
165
+ <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> Select a <strong>Group Tag</strong> to <em>ONLY SHOW</em> for this blog. This is for limiting what Funnels are accessible via the plugin. This is for anyone who allows their pages to be managed by multiple people. </p>
166
+ <hr style="margin-left: 51px;" />
167
+ <div class="control-group clearfix" >
168
+ <label class="control-label" for="clickfunnels_agency_api_details"> Show or Hide Auth Code:</span> </label>
169
+ <div class="controls" style="padding-left: 24px;margin-bottom: 16px;">
170
+ <select name="clickfunnels_agency_api_details" id="clickfunnels_agency_api_details" class="input-xlarge" style="height: 30px;">
171
+ <option value="show">Show API Connection Details (default)</option>
172
+ <option value="hide" <?php if (get_option('clickfunnels_agency_api_details') == 'hide') { echo "selected";} ?>>Hide API Connection Details</option>
173
+ </select>
174
+ </div>
175
+ </div>
176
+ <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> For advanced users only - if you hide your details you can ONLY change them by enabling 'show' again in the select box above. Only use when you want to hide your API details.</p>
177
+ <hr style="margin-left: 51px;" />
178
+ <div class="control-group clearfix" >
179
+ <label class="control-label" for="clickfunnels_agency_reset_data"> Show or Hide Reset Data:</span> </label>
180
+ <div class="controls" style="padding-left: 24px;margin-bottom: 16px;">
181
+ <select name="clickfunnels_agency_reset_data" id="clickfunnels_agency_reset_data" class="input-xlarge" style="height: 30px;">
182
+ <option value="show">Show Reset Data (default)</option>
183
+ <option value="hide" <?php if (get_option('clickfunnels_agency_reset_data') == 'hide') { echo "selected";} ?>>Hide Reset Data Settings</option>
184
+ </select>
185
+ </div>
186
+ </div>
187
+ <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> Choose "Hide Reset Data" to prevent any users from deleting all of your pages and API settings. Use if you have other people managing your blog.</p>
188
+ <hr style="margin-left: 51px;" />
189
+ <div class="control-group clearfix" >
190
+ <label class="control-label" for="clickfunnels_agency_hide_settings"> Show or Hide Settings:</span> </label>
191
+ <div class="controls" style="padding-left: 24px;margin-bottom: 16px;">
192
+ <select name="clickfunnels_agency_hide_settings" id="clickfunnels_agency_hide_settings" class="input-xlarge" style="height: 30px;">
193
+ <option value="show">Show Settings (default)</option>
194
+ <option value="hide" <?php if (get_option('clickfunnels_agency_hide_settings') == 'hide') { echo "selected";} ?>>Hide Settings</option>
195
+ </select>
196
+ </div>
197
+ </div>
198
+ <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> Choose "Hide Settings" to prevent any users from being able to view the settings panel. You will only be able to access it via the agency feature to turn it back on.</p>
199
+ <button class="action-button shadow animate green " id="publish" style="float: right;margin-top: 10px;"><i class="fa fa-check-circle"></i> Save Settings</button>
200
+ </div>
201
+ <div id="tab1" class="cftabs" style="<?php if($_GET['error'] || $_GET['agency'] && $_GET['agency'] == get_option('clickfunnels_api_auth')) { echo 'display: none';} ?>">
202
+ <!-- Main Settings -->
203
+ <h2>API Connection</h2>
204
+ <input type="hidden" class="form-control" name="save_api" value="yes" />
205
+ <div style='<?php if (get_option( "clickfunnels_agency_api_details" ) == 'hide') { echo 'display: none'; } ?>'>
206
+ <div class="control-group clearfix">
207
+ <label class="control-label" for="clickfunnels_api_email"> Account Email: <span class="checkSuccess"></span> </label>
208
+ <div class="controls" style="padding-left: 24px;margin-bottom: 16px;">
209
+ <input type="text" class="input-xlarge" style="height: 30px;" value="<?php echo get_option( 'clickfunnels_api_email' ); ?>" name="clickfunnels_api_email" />
210
+ </div>
211
+ </div>
212
+ <div class="control-group clearfix">
213
+ <label class="control-label" for="clickfunnels_api_auth"> Authentication Token: <span class="checkSuccess"></span> </label>
214
+ <div class="controls" style="padding-left: 24px;margin-bottom: 16px;">
215
+ <input type="text" class="input-xlarge" style="height: 30px;" value="<?php echo get_option( 'clickfunnels_api_auth' ); ?>" name="clickfunnels_api_auth" />
216
+ </div>
217
+ </div>
218
+ <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> To access your Authentication Token go to your ClickFunnels Members area and choose <a href="https://app.clickfunnels.com/users/edit" target="_blank">My Account > Settings</a> and you will find your API information.</p>
219
+ </div>
220
+ <div style='display: none;<?php if (get_option( "clickfunnels_agency_api_details" ) == 'hide') { echo 'display: block'; } ?>'>
221
+ <span class="compatCheck compatwarning">API Details Locked: <strong>Set by administrator.</strong></span>
222
+ <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> If you need access to change the API details, please contact the person who set up the ClickFunnels plugin for you.</p>
223
+ </div>
224
+ <button class="action-button shadow animate green " id="publish" style="float: right;margin-top: 10px;"><i class="fa fa-check-circle"></i> Save Settings</button>
225
+ </div>
226
 
227
+ <br clear="both" />
228
+ </div>
 
 
 
 
 
 
 
 
 
229
  </div>
230
+ </form>
231
+ <?php include('footer.php'); ?>
232
+ </div>
 
 
 
 
 
 
admin.php CHANGED
@@ -1 +1 @@
1
-
2
  $cf_thefunnel = get_post_meta( $_GET['post'], "cf_thefunnel", true );
3
  $cf_thepage = get_post_meta( $_GET['post'], "cf_thepage", true );
4
  $cf_iframe_check = get_post_meta( $_GET['post'], "cf_iframe_check", true );
5
  $cf_iframe_url = get_post_meta( $_GET['post'], "cf_iframe_url", true );
6
  $cf_seo_title = get_post_meta( $_GET['post'], "cf_seo_title", true );
7
  $cf_seo_desc = get_post_meta( $_GET['post'], "cf_seo_desc", true );
8
  $cf_seo_image = get_post_meta( $_GET['post'], "cf_seo_image", true );
9
  $cf_page_url = get_post_meta( $_GET['post'], "cf_page_url", true );
10
 
11
  if ( !isset( $cf_page['page_id'] ) || $cf_page['page_id'] < 10 ) {
12
  $thepage = explode( "{#}", $cf_page );
13
  $savedData = $cf_page;
14
  }
15
  else {
16
  $thepage = explode( "{#}", $cf_page['page_id'] );
17
  $savedData = $cf_page['page_id'];
18
  }
19
  $cf_options = get_option( "cf_options" );
20
  jQuery(document).ready(function(){
21
  // Set Correct Options
22
  var thefunnel = jQuery('#cf_thefunnel').val();
23
  var specificFunnel = 'https://api.clickfunnels.com/funnels/'+thefunnel+'.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
24
  jQuery('#cf_thepage').find('option').remove().end();
25
  jQuery('#loading').fadeIn();
26
  jQuery.getJSON(specificFunnel, function(data) {
27
  setTimeout(function() {
28
  jQuery('#loading').fadeOut();
29
  }, 2000);
30
  var is_selected = "";
31
  jQuery.each(data.funnel_steps, function() {
32
  if (this.pages != ''){
33
  if(this.pages[0].id == "<?php echo $thepage[2] ?>" && this.pages != '' ) {
34
  is_selected = "selected";
35
  jQuery('#cf_seo_tags').val(this.pages[0].metatags);
36
  } else {
37
  is_selected = "";
38
  }
39
  if ( this.wp_friendly == true && this.pages != '' ) {
40
  var baseurl = this.pages[0].published_url.split('.com/');
41
  var baseurlnew = baseurl[0]+'.com/'+this.path;
42
  jQuery('#iframeURL').val(baseurlnew);
43
  // Check if has split tests
44
  var splittestkeys = 'none';
45
  // if (this.pages.length == 2) {
46
  // splittestkeys = this.pages[0].key + '{|}' + this.pages[1].key;
47
  // }
48
  // else if (this.pages.length == 3) {
49
  // splittestkeys = this.pages[0].key + '{|}' + this.pages[1].key+ '{|}' + this.pages[2].key;
50
  // }
51
 
52
  pageKey = this.pages[0].key;
53
 
54
  jQuery('#cf_thepage').append('<option value="' + pageKey + '{#}' + this.pages[0].id + '{#}' + this.pages[0].funnel_step_id + '{#}' + encodeURI(this.pages[0].metatags) + '{#}<?php echo get_the_ID(); ?>{#}' + this.name +'{#}'+baseurlnew+'" '+is_selected+'>'+ this.name +'</option>');
55
  }
56
  }
57
  });
58
  }).done(function() {
59
  jQuery('#loading').fadeOut();
60
  var savedMeta = jQuery('#cf_thepage').val();
61
  if(savedMeta != undefined || savedMeta != null){
62
  savedMeta = savedMeta.split('{#}');
63
  jQuery('#jsmeta').val(savedMeta[3]);
64
  <?php if ( !empty( $_GET['action'] ) ) { ?>
65
  if (savedMeta[3] != jQuery('#oldmeta').val()){
66
  jQuery('#metaalreadyupdated').hide();
67
  jQuery('#showupdatemetalink').show();
68
  }
69
  <?php } ?>
70
  }
71
  <?php if ( empty( $_GET['action'] ) ) { ?>
72
  jQuery('#cf_thefunnel').prepend('<option value="" disabled selected>Select a Funnel</option>');
73
  <?php } ?>
74
  })
75
  .fail(function() {
76
  jQuery('#loading').fadeOut();
77
  })
78
  .always(function() {
79
  jQuery('#loading').fadeOut();
80
  });
81
  // Change Funnel Populate Dropdown
82
  jQuery( '#cf_thefunnel' ).change(function() {
83
  jQuery('#loading').fadeIn();
84
  var thefunnel = jQuery(this).val();
85
  var totalPages = 0;
86
  var specificFunnel = 'https://api.clickfunnels.com/funnels/'+thefunnel+'.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
87
  jQuery('#cf_thepage').find('option').remove().end();
88
  jQuery.getJSON(specificFunnel, function(data) {
89
  setTimeout(function() {
90
  jQuery('#loading').fadeOut();
91
  }, 2000);
92
  // alert( specificFunnel);
93
  jQuery.each(data.funnel_steps, function() {
94
  if( this.wp_friendly == true && this.pages != '' ) {
95
  if (this.pages.length > 1) {
96
  jQuery('#usingSplitTests').show();
97
  } else {
98
  jQuery('#usingSplitTests').hide();
99
  }
100
 
101
  var baseurl = this.pages[0].published_url.split('.com/');
102
  var baseurlnew = baseurl[0]+'.com/'+this.path;
103
  jQuery('#iframeURL').val(baseurlnew);
104
  jQuery('#cf_thepage').append('<option value="' + this.pages[0].key + '{#}' + this.pages[0].id + '{#}' + this.pages[0].funnel_step_id + '{#}' + encodeURI(this.pages[0].metatags) + '{#}<?php echo get_the_ID(); ?>{#}' + this.name +'{#}'+baseurlnew+'">'+ this.name +'</option>');
105
 
106
 
107
  totalPages += 1;
108
  }
109
  });
110
 
111
  }).done(function() {
112
  jQuery('#loading').fadeOut();
113
  var savedMeta = jQuery('#cf_thepage').val();
114
  if(savedMeta != undefined || savedMeta != null){
115
  savedMeta = savedMeta.split('{#}');
116
  jQuery('#previewiframe').attr('src', savedMeta[6]+'?preview=true');
117
  }
118
  jQuery('#cf_thepage').trigger('change');
119
 
120
  if (totalPages == 0) {
121
  jQuery('#noPageWarning').fadeIn();
122
  jQuery('#cf_thepage').fadeOut();
123
  }
124
  else {
125
  jQuery('#noPageWarning').hide();
126
  jQuery('#cf_thepage').fadeIn();
127
  }
128
  var theposition = jQuery('#cf_thepage').val();
129
  jQuery('#cf_data').val(thefunnel+'{#}'+theposition);
130
  var myString = thefunnel+'{#}'+theposition;
131
  var arr = myString.split('{#}');
132
  // jQuery('#loadPageforUpdate').attr('src', 'https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true');
133
  var do_ping = function() {
134
  ping('https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true').then(function(delta) {
135
  }).catch(function(error) {
136
  });
137
  };
138
  do_ping();
139
  })
140
  .fail(function() {
141
  jQuery('#loading').fadeOut();
142
  })
143
  .always(function() {
144
  jQuery('#loading').fadeOut();
145
  });
146
  setTimeout(function() {
147
 
148
  }, 3000);
149
 
150
  });
151
  var request_image = function(url) {
152
  return new Promise(function(resolve, reject) {
153
  var img = new Image();
154
  img.onload = function() { resolve(img); };
155
  img.onerror = function() { reject(url); };
156
  img.src = url + '?random-no-cache=' + Math.floor((1 + Math.random()) * 0x10000).toString(16);
157
  });
158
  };
159
  /**
160
  * Pings a url.
161
  * @param {String} url
162
  * @return {Promise} promise that resolves to a ping (ms, float).
163
  */
164
  var ping = function(url) {
165
  return new Promise(function(resolve, reject) {
166
  var start = (new Date()).getTime();
167
  var response = function() {
168
  var delta = ((new Date()).getTime() - start);
169
  // HACK: Use a fudge factor to correct the ping for HTTP bulk.
170
  delta /= 4;
171
  resolve(delta);
172
  };
173
  request_image(url).then(response).catch(response);
174
  // Set a timeout for max-pings, 5s.
175
  setTimeout(function() { reject(Error('Timeout')); }, 5000);
176
  });
177
  };
178
  function replaceText(inputText, tagName, tagReplace) {
179
  var regExp = new RegExp('\\[' + tagName+ '\\]([^\\[]*)\\[\/' + tagName + '\\]', 'g');
180
  return inputText.replace(regExp, tagReplace);
181
  }
182
  // Select New Page
183
  jQuery( '#cf_thepage' ).change(function() {
184
  jQuery('#loading').fadeOut();
185
  var thefunnel = jQuery('#cf_thefunnel').val();
186
  var theposition = jQuery(this).val();
187
  jQuery('#cf_data').val(thefunnel+'{#}'+theposition);
188
  if(theposition != undefined || theposition != null){
189
  var myString = thefunnel+'{#}'+theposition;
190
  var arr = myString.split('{#}');
191
  var arr2 = theposition.split('{#}');
192
  // Iframe
193
  jQuery('#iframeURL').val(arr2[6]);
194
  var myStr = arr2[3];
195
  // Browser title
196
  var subStr = myStr.match("%3Ctitle%3E(.*)%3C/title%3E");
197
 
198
  jQuery('#seoTitle').val(subStr[1].replace(/%20/g, ' '));
199
 
200
  // SEO Desc
201
  var subStr = myStr.match("description%22%20content=%22(.*)%22%3E%3Cmeta%20class=%22metaTagTop%22%20name=%22keywo");
202
  jQuery('#seoDesc').val(subStr[1].replace(/%20/g, ' '));
203
  // SEO Share Image
204
  var subStr = myStr.match("rty=%22og:image%22%20content=%22(.*)%22%20id=%22social-image%22%3E");
205
  jQuery('#seosocial').val(subStr[1]);
206
  // jQuery('#loadPageforUpdate').attr('src', 'https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true');
207
  var do_ping = function() {
208
  ping('https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true').then(function(delta) {
209
  }).catch(function(error) {
210
  });
211
  };
212
  do_ping();
213
  jQuery('#previewiframe').attr('src', arr[7]+'?preview=true');
214
  }
215
 
216
  });
217
  // Fade Out Message
218
  setTimeout(function() {
219
  jQuery('#message').fadeOut();
220
  }, 3500);
221
  // Savings
222
  jQuery('#publish').click(function() {
223
  jQuery('#saving').fadeIn();
224
  });
225
  jQuery('#delete').on('click', function () {
226
  return confirm('Are you sure you want to delete this page?');
227
  });
228
  jQuery('#cf_slug').bind('keyup keypress blur', function()
229
  {
230
  var myStr = jQuery(this).val()
231
  myStr=myStr.toLowerCase();
232
  myStr=myStr.replace(/\s/g , "-");
233
  jQuery('#cf_slug').val(myStr);
234
  });
235
  // Check Null and Resave v1.0.6
236
  <?php if ($thepage[1] == 'null') { ?>
237
  // jQuery('#autosaving').fadeIn();
238
  // setTimeout(function() {
239
  // jQuery('form').submit();
240
  // }, 2000);
241
  <?php } ?>
242
  jQuery('#showupdatemetalink').click(function() {
243
  jQuery('form').submit();
244
  });
245
 
246
  });
247
  if ( $cf_page != "" ) {
248
  $json = get_file_content( 'https://api.clickfunnels.com/funnels/'.$cf_thefunnel.'.json?email='.get_option( 'clickfunnels_api_email' ).'&auth_token='.get_option( 'clickfunnels_api_auth' ) );
249
  $cf_funnels_pages = json_decode( $json );
250
  }
251
  <h4><i class="fa fa-times"></i> Uh oh, your page did not save correctly.</h4>
252
  <h2>Saving and Reloading...</h2>
253
  <h1><i class="fa fa-cog fa-spin"></i></h1>
254
  <img src="<?php echo plugins_url( 'logo.png', __FILE__ ); ?>" alt="">
255
  <a href="https://www.app.clickfunnels.com/funnels" target="_blank" class=""><i class="fa fa-bars"></i> My Account</a>
256
  <br clear="all">
257
  <?php if ( !empty( $_GET['action'] ) ) { ?>
258
  <?php if ( $cf_type=='p' ) {?>
259
  <a style="margin-right: -3px;" href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>" target="_blank" class="editThisPage"><i class="fa fa-edit"></i> Open Editor</a>
260
  <a style="margin-right: 10px;" href="https://www.clickfunnels.com/funnels/<?php echo $thepage[0]; ?>#<?php echo $thepage[3]; ?>" target="_blank" class="editThisPage"><i class="fa fa-cogs"></i> View Funnel</a>
261
  <a style="margin-right: 10px;" href="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/<?php echo $cf_slug; ?>" title="View Page" target="_blank" class="editThisPage"><i class="fa fa-search"></i> Preview</a>
262
  <h2><?php foreach ( $cf_funnels as $key=>$funnel ) { ?>
263
  <?php if ( $cf_thefunnel == $funnel->id ) { if(strlen($funnel->name) > 30) { echo substr($funnel->name,0,30).'...'; } else { echo $funnel->name;} } } ?></h2>
264
 
265
  <a href="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/<?php echo $cf_slug; ?>" title="View Page" target="_blank"> <?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/<?php echo $cf_slug; ?></a>
266
  <?php }?>
267
  <?php if ( $cf_type=='hp' ) {?>
268
  <a href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>" target="_blank" class="editThisPage"><i class="fa fa-edit"></i> Launch in Editor</a>
269
  <a style="margin-right: 10px;" href="https://www.clickfunnels.com/funnels/<?php echo $thepage[0]; ?>#<?php echo $thepage[3]; ?>" target="_blank" class="editThisPage"><i class="fa fa-cogs"></i> Edit Funnel</a>
270
  <a style="margin-right: 10px;" href="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/<?php echo $cf_slug; ?>" title="View Page" target="_blank" class="editThisPage"><i class="fa fa-search"></i> View Page</a>
271
  <h2>Set as Home Page</h2>
272
  <a href="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>" title="View Page" target="_blank"><i class="fa fa-search"></i> <?php echo get_option( 'clickfunnels_siteURL' ) ; ?></a>
273
  <?php }?>
274
  <?php if ( $cf_type=='np' ) {?>
275
  <a href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>" target="_blank" class="editThisPage"><i class="fa fa-edit"></i> Launch in Editor</a>
276
  <a style="margin-right: 10px;" href="https://www.clickfunnels.com/funnels/<?php echo $thepage[0]; ?>#<?php echo $thepage[3]; ?>" target="_blank" class="editThisPage"><i class="fa fa-cogs"></i> Edit Funnel</a>
277
  <a style="margin-right: 10px;" href="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/<?php echo $cf_slug; ?>/invalid-url-404-testing" title="View Page" target="_blank" class="editThisPage"><i class="fa fa-search"></i> View Page</a>
278
  <h2>Set as 404 Page</h2>
279
  <a href="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/invalid-url" title="View Page" target="_blank"><i class="fa fa-search"></i> <?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/invalid-url</a>
280
  <?php }?>
281
  <?php if ( $cf_type=='' ) {?>
282
  <h2>Page Undefined - Try saving your page again.</h2>
283
  <?php }?>
284
  <?php if ( $cf_type=='noapi' ) {?>
285
  <h2>No API Fallback</h2>
286
  <?php }?>
287
  <?php } else { ?>
288
  <h2 style="font-size: 17px;">Add ClickFunnels Page to Your Blog</h2>
289
  <?php } ?>
290
  <h4>You haven't setup your API settings. <a href="../wp-admin/edit.php?post_type=clickfunnels&page=cf_api">Click here to setup now.</a></h4>
291
  <iframe src="<?php echo $cf_iframe_url; ?>" style="width: 1280px;height: 750px;-ms-zoom: 0.20; -moz-transform: scale(0.20); -moz-transform-origin: 0 0; -o-transform: scale(0.20); -o-transform-origin: 0 0; -webkit-transform: scale(0.20); -webkit-transform-origin: 0 0;" frameborder="0" id="previewiframe"></iframe>
292
  </div> -->
293
  <input type="hidden" name="post_title" size="30" tabindex="1" value="ClickFunnels Page" id="title" autocomplete="off" />
294
  <input type="hidden" name="post_status" size="30" tabindex="1" value="publish" id="title" autocomplete="off" />
295
  <div class="bootstrap-wp" style=" border-bottom-left-radius: 5px;border-bottom-right-radius: 5px;"><?php wp_nonce_field( "save_clickfunnel", "clickfunnel_nonce" ); ?>
296
  <div class="row-fluid form-horizontal">
297
  <br>
298
  <a style="float: right;position:relative;z-index: 999999;margin-right: 8px" class="btn pageSettings">Page Settings</a>
299
 
300
  <div class="control-group" style="margin-left: -10px; margin-bottom: 20px !important">
301
  <div data-target="cf_type" class="btn-group multichoice cf_header">
302
  <a data-value="p" class="btn <?php if ( $cf_type=='p' || $cf_type=='') {?> active btn-selected<?php }?>">Regular Page</a>
303
  <a data-value="hp" class="btn <?php if ( $cf_type=='hp' ) {?> active btn-selected<?php }?>">Home Page</a>
304
  <a data-value="np" class="btn <?php if ( $cf_type=='np' ) {?> active btn-selected<?php }?>">404 Page</a>
305
  <!-- <a data-value="shortcode" class="btn <?php if ( $cf_type=='shortcode' ) {?> active btn-selected<?php }?>">Shortcode</a> -->
306
  </div>
307
  <input type="hidden" id="cf_type" name="cf_type"/>
308
  </div>
309
  <div class="control-group cf_uses_api" style="">
310
  <label class="control-label" for="cf_thefunnel"> Choose Funnel <i class="fa fa-filter"></i></label>
311
  <div class="controls">
312
  <select class="input-xlarge" id="cf_thefunnel" name="cf_thefunnel_backup">
313
  <?php if ( empty( $cf_funnels ) ) { ?>
314
  <option value="0">No Funnels Found</option>
315
  <?php }
316
  else {
317
  foreach ( $cf_funnels as $key=>$funnel ) { ?>
318
  <option value="<?php echo $funnel->id;?>" <?php if ( $cf_thefunnel == $funnel->id ) { echo "selected"; } ?>><?php echo $funnel->name;?></option>
319
  <?php
320
  }
321
  } ?>
322
  </select>
323
  </div>
324
  </div>
325
  <div id="usingSplitTests" style="display: none">
326
  Using split tests
327
  </div>
328
  <div class="control-group cf_uses_api">
329
  <label class="control-label" for="cf_thepage"> Choose Page <i class="fa fa-file-o"></i></label>
330
  <div class="controls">
331
  <select class="input-xlarge" id="cf_thepage" name="cf_thepage" style="float: left;">
332
  <?php if ( empty( $cf_funnels_pages ) ) { ?>
333
  <option value="0">No Pages Found</option>
334
  <?php }
335
  else {
336
  foreach ( $cf_funnels_pages->funnel_steps as $key => $funnel ) { ?>
337
  <option value="<?php echo $funnel->position;?>" <?php if ( $cf_thepage == $funnel->position ) { echo "selected"; } ?>><?php echo $funnel->name;?></option>
338
  <?php
339
  }
340
  }
341
  ?>
342
  </select>
343
  <i class="fa fa-spinner fa-spin" id="loading"></i>
344
  </div>
345
  <div id="noPageWarning" style="font-size: 11px; margin-left: 160px;margin-top: -33px;float: left;padding-top: 10px;display: none;width: 100%; clear: both"><em>No compatible pages found for this funnel.</em></div>
346
  </div>
347
  <div class="control-group cf_no_api" >
348
  <label class="control-label" for="cf_iframe_check"> ClickFunnels URL <i class="fa fa-globe"></i></label>
349
  <div class="controls">
350
  <input type="text" class="input-xlarge" id="iframeURL" style="height: 30px;" value="<?php echo $cf_iframe_url; ?>" name="cf_iframe_url" />
351
  </div>
352
  </div>
353
  <div class="control-group cf_no_api" >
354
  <label class="control-label" for="cf_iframe_check"> Website Title <i class="fa fa-globe"></i></label>
355
  <div class="controls">
356
  <input type="text" class="input-xlarge" id="seoTitle" style="height: 30px;" value="<?php echo $cf_seo_title; ?>" name="cf_seo_title" />
357
  </div>
358
  </div>
359
  <div class="control-group cf_no_api" >
360
  <label class="control-label" for="cf_iframe_check"> Description <i class="fa fa-globe"></i></label>
361
  <div class="controls">
362
  <input type="text" class="input-xlarge" id="seoDesc" style="height: 30px;" value="<?php echo $cf_seo_desc; ?>" name="cf_seo_desc" />
363
  </div>
364
  </div>
365
  <div class="control-group cf_no_api" >
366
  <label class="control-label" for="cf_iframe_check"> Social Image URL <i class="fa fa-globe"></i></label>
367
  <div class="controls">
368
  <input type="text" class="input-xlarge" id="seosocial" style="height: 30px;" value="<?php echo $cf_seo_image; ?>" name="cf_seo_image" />
369
  </div>
370
  </div>
371
  <input type="text" style="display: none" class="input-xlarge" style="height: 30px;" value="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/<?php echo $cf_slug; ?>" name="cf_page_url" />
372
 
373
 
374
  <div class="control-group cf_uses_api" >
375
  <label class="control-label" for="cf_iframe_check"> Cookie Split Tests <i class="fa fa-bar-chart"></i></label>
376
  <div class="controls">
377
  <select class="input-xlarge" id="cf_iframe_check" name="cf_iframe_check" style="float: left;">
378
  <option value="off">Show random cookied version</option>
379
  <option value="on" <?php if( $cf_iframe_check == 'on') { ?>selected <?php } ?>>Show page in iframe (don't cookie)</option>
380
  </select>
381
  <!-- <small style="float: left;font-size: 11px;padding: 5px;margin-left: 6px"><a href="<?php echo admin_url( 'edit.php?post_type=clickfunnels&page=clickfunnels_support' );?>">What is this?</a></small> -->
382
  </div>
383
  </div>
384
  <?php if ( !empty( $_GET['action'] ) ) { ?>
385
  <div class="control-group cf_uses_api" style="margin-bottom: 20px">
386
  <label class="control-label" for="cf_iframe_check"> Meta Data <i class="fa fa-info"></i></label>
387
  <a href="#" style="margin-left: 20px;margin-top: 5px;display: block;float: left;display: none" id="showupdatemetalink"><i class="fa fa-refresh"></i> Meta Data is Out Dated -- Click to Update</a>
388
  <span style="margin-left: 20px;margin-top: 5px;display: block;float: left" id="metaalreadyupdated"><i class="fa fa-check"></i> Meta Data is Up to Date</span>
389
  </div>
390
  <?php } else { ?>
391
  <div class="control-group cf_uses_api" style="margin-bottom: 20px">
392
  <label class="control-label" for="cf_iframe_check"> Meta Data <i class="fa fa-info"></i></label>
393
 
394
  <span style="margin-left: 20px;margin-top: 5px;display: block;float: left" id="metaalreadyupdated"><i class="fa fa-check"></i> Meta Data is Up to Date</span>
395
  </div>
396
  <?php } ?>
397
  <?php if ( $cf_type!="p" ) $display ="display:none"; else $display="";?>
398
  <div class="cf_url control-group" style="<?php echo $display;?>" >
399
  <label class="control-label" for="cf_slug"> Custom URL <i class="fa fa-globe"></i></label>
400
  <div id="cf-wp-path" class="controls ">
401
  <div class="input-prepend">
402
  <span class="add-on" style="font-size: 13px;padding: 4px 10px; background: #ECEEEF; color: #777; text-shadow: none; border: 1px solid #ccc"><?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/</span><input style="height:28px;width: 150px !important" type="textbox" value="<?php if ( isset( $cf_slug ) ) echo $cf_slug;?>" name="cf_slug" id="cf_slug" class="input-xlarge">
403
  <div style="color:red; display:none" id="cf_invalid_slug" style="width: 90%" >You must enter an URL</div>
404
  </div>
405
  </div>
406
  </div>
407
 
408
 
409
 
410
  <style>
411
  #hiddenStuff {display: none}
412
  </style>
413
  <div class="control-group" id="hiddenStuff" <?php if ( !empty( $_GET['cf'] ) ) { ?>style="display: block" <?php } ?>>
414
  <div class="controls">
415
  <strong>Funnel ID: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $thepage[0]; ?>" /> <br></strong>
416
  <strong>Page Key: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $thepage[1]; ?>" /><br></strong>
417
  <strong>Page ID: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $thepage[2]; ?>" /><br></strong>
418
  <strong>Funnel Step ID: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $thepage[3]; ?>" /><br></strong>
419
  <strong>Saved Meta: <input type="text" style="font-weight: normal;width: 300px;" id="oldmeta" value="<?php echo $thepage[4]; ?>" /><br></strong>
420
  <strong>JS Meta: <input type="text" style="font-weight: normal;width: 300px;" id="jsmeta" value="" /><br></strong>
421
  <strong>Post ID: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $thepage[5]; ?>" /><br></strong>
422
  <strong>Page Name: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $thepage[6]; ?>" /><br></strong>
423
  <strong>Use iframe?: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $cf_iframe_check; ?>" /><br></strong>
424
  <strong>Iframe URL: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $cf_iframe_url; ?>" /><br></strong>
425
  <textarea name="cf_thefunnel" id="cf_data" style="width: 400px;height: 300px; font-size: 13px;"><?php echo $savedData; ?></textarea>
426
  </div>
427
  </div>
428
 
429
  <!-- <div style="background: #fafafa;border-top: 1px solid #eee;padding: 10px;text-align: center;margin: 10px 0px;margin-bottom: 20px" >
430
  <strong style="color: #777"> Running split tests or custom code on your page? Check here
431
  <input type="checkbox" id="useIframe" value="on" <?php if( $cf_iframe_check == 'on') { ?>checked <?php } ?> style="margin: 0 3px;width: 18px;height: 18px;" name="cf_iframe_check"> to activate settings.</strong>
432
  <small style="display: block;font-size: 11px;opacity: .5"><a href="<?php echo admin_url( 'edit.php?post_type=clickfunnels&page=clickfunnels_support' );?>">Why do you have to activate settings?</a></small>
433
  <input type="text" style="display: none;" id="iframeURL" value="<?php echo $cf_iframe_url; ?>" name="cf_iframe_url" />
434
  </div> -->
435
  <!-- <div class="p_text helpinfo" <?php if ( $cf_type!='p' ) {?> style="display: none" <?php }?>>
436
  <h4><i class="fa fa-question-circle"></i> Set as a Page</h4>
437
  <p>Choose any ClickFunnels page to be shown using a custom URL just select any funnel to refresh the list of pages. Create a custom URL and hit 'Save/Publish' to start sending traffic. <a href="<?php echo admin_url( 'edit.php?post_type=clickfunnels&page=clickfunnels_support' );?>">Need more help?</a> </p>
438
  <p style="font-size: 11px;opacity: .7;"><i class="fa fa-exclamation-triangle"></i> If you change META data in editor, refresh page and hit 'Save Changes' to update meta data.</p>
439
  </div>
440
  <div class="hp_text helpinfo" <?php if ( $cf_type!='hp' ) {?> style="display: none" <?php }?>>
441
  <h4><i class="fa fa-question-circle"></i> Set as Home Page</h4>
442
  <p> Replace your homepage with a specific ClickFunnels page. You can show any page that you want, this will replace any other homepage settings you may have.</p>
443
  <p style="font-size: 11px;opacity: .7"><i class="fa fa-exclamation-triangle"></i> If you change META data in editor, refresh page and hit 'Save Changes' to update meta data.</p>
444
  </div>
445
  <div class="np_text helpinfo" <?php if ( $cf_type!='np' ) {?> style="display: none" <?php }?>>
446
  <h4><i class="fa fa-question-circle"></i> Set as 404 Page</h4>
447
  <p> Show a specific page to be shown on any "Page not Found" such as a misspelled URL or a deleted blog post. Very good place for a squeeze page to get the most out of your traffic.</p>
448
  <p style="font-size: 11px;opacity: .7"><i class="fa fa-exclamation-triangle"></i> If you change META data in editor, refresh page and hit 'Save Changes' to update meta data.</p>
449
  </div> -->
450
  <div class="row-fluid" id="apiFooter">
451
  <?php if ( get_option( 'clickfunnels_api_email' ) == "" || get_option( 'clickfunnels_api_auth' ) == "" ) { ?>
452
  <button id="publish" name="publish" disabled class="button button-primary " style="float: right; ">
453
  <?php if ( !empty( $_GET['action'] ) ) { echo "<i class='fa fa-save'></i> Save Changes"; } else { echo "<i class='fa fa-save'></i> Publish Page"; } ?>
454
  </button>
455
  <?php } else { ?>
456
  <button id="publish" name="publish" class="button button-primary " style="float: right; ">
457
  <?php if ( !empty( $_GET['action'] ) ) { echo "<i class='fa fa-save'></i> Save Changes"; } else { echo "<i class='fa fa-save'></i> Publish Page"; } ?>
458
  </button>
459
  <?php } ?>
460
  <div id="saving" style="float: right;display: none; padding-right: 10px;opacity: .6;padding-top: 5px;">
461
  <i class="fa fa-spinner fa-spin"></i>
462
  <span>Saving...</span>
463
  </div>
464
  <a class="button button-secondary" style="float: left; margin-right: 10px" type="submit" href="<?php echo admin_url( 'edit.php?post_type=clickfunnels' );?>"><i class="fa fa-file-text-o"></i> Pages</a>
465
  <a class="button button-secondary" style="float: left; margin-right: 10px" type="submit" href="<?php echo admin_url( 'edit.php?post_type=clickfunnels&page=cf_api' );?>"><i class="fa fa-cog"></i> Settings</a>
466
  <a href="<?php echo admin_url( 'edit.php?post_type=clickfunnels&page=clickfunnels_support' );?>" class="button button-default" style="float: left;margin-right: 10px"><i class="fa fa-life-ring"></i> Support</a>
467
  <?php if ( !empty( $delete_link ) ) {?>
468
  <a class="button button-secondary" id="delete" type="submit" href="<?php echo $delete_link;?>"><i class="fa fa-trash"></i> Delete Page</a>
469
  <?php }?>
470
  </div>
471
  </div>
472
  </div>
473
  (function($) {
474
  setTimeout(function() {
475
  $('#cf_thepage').trigger( "change" );
476
  }, 1500);
477
  })(jQuery);
 
478
  if(!get_option( 'clickfunnels_api_email')) {
479
  update_option( 'clickfunnels_api_email', '');
480
  }
481
  if(!get_option( 'clickfunnels_api_auth')) {
482
  update_option( 'clickfunnels_api_auth', '');
483
  }
484
  if(!get_option( 'clickfunnels_siteURL')) {
485
  update_option( 'clickfunnels_siteURL', '');
486
  }
487
  if(!get_option( 'clickfunnels_404Redirect')) {
488
  update_option( 'clickfunnels_404Redirect', '');
489
  }
490
  if(!get_option( 'clickfunnels_agency_group_tag')) {
491
  update_option( 'clickfunnels_agency_group_tag', '');
492
  }
493
  if(!get_option( 'clickfunnels_agency_api_details')) {
494
  update_option( 'clickfunnels_agency_api_details', '');
495
  }
496
  if(!get_option( 'clickfunnels_agency_reset_data')) {
497
  update_option( 'clickfunnels_agency_reset_data', '');
498
  }
499
  if(!get_option( 'clickfunnels_agency_hide_settings')) {
500
  update_option( 'clickfunnels_agency_hide_settings', '');
501
  }
502
  $cf_thefunnel = get_post_meta( $_GET['post'], "cf_thefunnel", true );
503
  $cf_thepage = get_post_meta( $_GET['post'], "cf_thepage", true );
504
  $cf_iframe_check = get_post_meta( $_GET['post'], "cf_iframe_check", true );
505
  $cf_iframe_url = get_post_meta( $_GET['post'], "cf_iframe_url", true );
506
  $cf_seo_title = get_post_meta( $_GET['post'], "cf_seo_title", true );
507
  $cf_seo_desc = get_post_meta( $_GET['post'], "cf_seo_desc", true );
508
  $cf_seo_image = get_post_meta( $_GET['post'], "cf_seo_image", true );
509
  $cf_page_url = get_post_meta( $_GET['post'], "cf_page_url", true );
510
  $cf_favicon = get_post_meta( $_GET['post'], "cf_favicon", true );
511
  $cf_author = get_post_meta( $_GET['post'], "cf_author", true );
512
  $cf_keywords = get_post_meta( $_GET['post'], "cf_keywords", true );
513
  $cf_head_tracking = get_post_meta( $_GET['post'], "cf_head_tracking", true );
514
  $cf_footer_tracking = get_post_meta( $_GET['post'], "cf_footer_tracking", true );
515
  $cf_wptracking_code = get_post_meta( $_GET['post'], "cf_wptracking_code", true );
516
  $cf_favicon_choice = get_post_meta( $_GET['post'], "cf_favicon_choice", true );
517
  $cf_slug= get_post_meta( $_GET['post'], 'cf_slug', true );
518
  if ( !isset( $cf_page['page_id'] ) || $cf_page['page_id'] < 10 ) {
519
  $thepage = explode( "{#}", $cf_page );
520
  $savedData = $cf_page;
521
  }
522
  else {
523
  $thepage = explode( "{#}", $cf_page['page_id'] );
524
  $savedData = $cf_page['page_id'];
525
  }
526
  $cf_options = get_option( "cf_options" );
527
  // populate funnels option field
528
  if ( get_option( 'clickfunnels_api_email' ) == "" || get_option( 'clickfunnels_api_auth' ) == "" ) {
529
  }
530
  else {
531
  if ($cf_page != "") {
532
  $response = wp_remote_get( 'https://api.clickfunnels.com/funnels/'.$cf_thefunnel.'.json?email='.get_option( 'clickfunnels_api_email' ).'&auth_token='.get_option( 'clickfunnels_api_auth' ));
533
  if( is_array($response) ) {
534
  $json = $response['body']; // use the content
535
  }
536
  $cf_funnels_pages = json_decode( $json );
537
  }
538
  }
539
  jQuery(document).ready(function(){
540
  jQuery('.draft').hide();
541
  console.log("%cClickFunnels WordPress Plugin", "background: #0166AE; color: white; font-size: 23px");
542
  console.log("%cEditing anything inside the console is for developers only. Do not paste in any code given to you by anyone. Use with caution. Visit for support: https://support.clickfunnels.com/", "color: #888; font-size: 16px");
543
  // Set Correct Options
544
  var thenewdata = jQuery('#cf_thefunnel').val();
545
  var thenewdata = thenewdata.split('{#}');
546
  var specificFunnel = 'https://api.clickfunnels.com/funnels/'+thenewdata[0]+'.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
547
  jQuery('#cf_thepage').find('option').remove().end();
548
  // alert(specificFunnel);
549
  // alert(thenewdata);
550
  jQuery('#loading').fadeIn();
551
  var favicon = 'https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png';
552
  <?php if ( empty( $_GET['action'] ) ) { ?>
553
  jQuery('#cf_thefunnel').prepend('<option value="" disabled selected>Select a Funnel</option>');
554
  <?php } ?>
555
  jQuery.getJSON(specificFunnel, function(data) {
556
  setTimeout(function() {
557
  jQuery('#loading').fadeOut();
558
  }, 2000);
559
  var is_selected = "";
560
  if (data.favicon){
561
  favicon = data.favicon;
562
  }
563
  else {
564
  favicon = 'https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png';
565
  }
566
  jQuery.each(data.funnel_steps, function() {
567
  if (this.pages != ''){
568
  if(this.pages[0].id == "<?php echo $thepage[2] ?>" && this.pages != '' ) {
569
  is_selected = "selected";
570
  jQuery('#cf_seo_tags').val(this.pages[0].metatags);
571
  } else {
572
  is_selected = "";
573
  }
574
  if ( this.wp_friendly == true && this.pages != '' ) {
575
  jQuery('#iframeURL').val(this.pages[0].published_url);
576
  if (data.favicon){
577
  jQuery('#cf_favicon').val(favicon);
578
  jQuery('#faviconPreview').attr('src', favicon);
579
  } else {
580
  jQuery('#cf_favicon').val('https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
581
  jQuery('#faviconPreview').attr('src', 'https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
582
  }
583
  // Check if has split tests
584
  var splittestkeys = 'none';
585
  if (this.pages.length == 2) {
586
  splittestkeys = '2';
587
  }
588
  else if (this.pages.length == 3) {
589
  splittestkeys = '3';
590
  }
591
  // Ping All Pages in Funnel (to refresh split tests / api)
592
  ping('https://api.clickfunnels.com/s3_proxy/'+this.pages[0].key+'?preview=true');
593
  pageKey = this.pages[0].key;
594
  jQuery('#headTracking').val(this.pages[0].head_tag);
595
  jQuery('#footerTracking').val(this.pages[0].body_tag);
596
  if(this.pages[0].head_tag) { head_tag = encodeURIComponent(this.pages[0].head_tag); } else { head_tag = ''; }
597
  if(this.pages[0].body_tag) { body_tag = encodeURIComponent(this.pages[0].body_tag); } else { body_tag = ''; }
598
  jQuery('#cf_thepage').append('<option value="' + pageKey + '{#}' + this.pages[0].id + '{#}' + this.pages[0].funnel_step_id + '{#}' + encodeURI(this.pages[0].metatags) + '{#}<?php echo get_the_ID(); ?>{#}' + this.name +'{#}'+this.pages[0].published_url+'{#}'+favicon+'{#}'+head_tag+'{#}'+body_tag+'{#}'+data.name+'{#}'+splittestkeys+'" '+is_selected+'>'+ this.name +'</option>');
599
  }
600
  }
601
  });
602
  }).done(function() {
603
  jQuery('#loading').fadeOut();
604
  var savedMeta = jQuery('#cf_thepage').val();
605
  if(savedMeta != undefined || savedMeta != null){
606
  savedMeta = savedMeta.split('{#}');
607
  <?php if ( !empty( $_GET['action'] ) ) { ?>
608
  jQuery('#cf_thepage').trigger('change');
609
  <?php } ?>
610
  }
611
  })
612
  .fail(function(jqXHR) {
613
  jQuery('#loading').fadeOut();
614
  jQuery('.badAPI').show();
615
  })
616
  .always(function() {
617
  jQuery('#loading').fadeOut();
618
  });
619
  // Change Funnel Populate Dropdown
620
  jQuery( '#cf_thefunnel' ).change(function() {
621
  jQuery('.choosePageBox').fadeIn();
622
  jQuery('.cftablink').removeClass('disabledLink');
623
  jQuery('#publish').removeClass('disabledLink');
624
  jQuery('#loading').fadeIn();
625
  var thenewdata = jQuery(this).val();
626
  var thenewdata = thenewdata.split('{#}');
627
  var totalPages = 0;
628
  var specificFunnel = 'https://api.clickfunnels.com/funnels/'+thenewdata[0]+'.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
629
  // alert(specificFunnel);
630
  jQuery('#cf_thepage').find('option').remove().end();
631
  jQuery.getJSON(specificFunnel, function(data) {
632
  setTimeout(function() {
633
  jQuery('#loading').fadeOut();
634
  }, 2000);
635
  if (data.favicon){
636
  favicon = data.favicon;
637
  }
638
  else {
639
  favicon = 'https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png';
640
  }
641
  // alert( specificFunnel);
642
  jQuery.each(data.funnel_steps, function() {
643
  if( this.wp_friendly == true && this.pages != '' ) {
644
  // Ping All Pages in Funnel (to refresh split tests / api)
645
  ping('https://api.clickfunnels.com/s3_proxy/'+this.pages[0].key+'?preview=true');
646
  // Check if has split tests
647
  var splittestkeys = 'none';
648
  if (this.pages.length == 2) {
649
  splittestkeys = '2';
650
  }
651
  else if (this.pages.length == 3) {
652
  splittestkeys = '3';
653
  }
654
  jQuery('#iframeURL').val(this.pages[0].published_url);
655
  jQuery('#cf_funnelwide_tracking_head').val(favicon);
656
  if (data.favicon){
657
  jQuery('#cf_favicon').val(favicon);
658
  jQuery('#faviconPreview').attr('src', favicon);
659
  } else {
660
  jQuery('#cf_favicon').val('https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
661
  jQuery('#faviconPreview').attr('src', 'https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
662
  }
663
  // Tracking Codes
664
  jQuery('#headTracking').val(this.pages[0].head_tag);
665
  jQuery('#footerTracking').val(this.pages[0].body_tag);
666
  jQuery('#fw_headerTracking').val(thenewdata[1]);
667
  jQuery('#fw_footerTracking').val(thenewdata[2]);
668
  if(this.pages[0].head_tag) { head_tag = encodeURIComponent(this.pages[0].head_tag); } else { head_tag = ''; }
669
  if(this.pages[0].body_tag) { body_tag = encodeURIComponent(this.pages[0].body_tag); } else { body_tag = ''; }
670
  jQuery('#cf_thepage').append('<option value="' + this.pages[0].key + '{#}' + this.pages[0].id + '{#}' + this.pages[0].funnel_step_id + '{#}' + encodeURI(this.pages[0].metatags) + '{#}<?php echo get_the_ID(); ?>{#}' + this.name +'{#}'+this.pages[0].published_url+'{#}'+favicon+'{#}'+head_tag+'{#}'+body_tag+'{#}'+data.name+'{#}'+splittestkeys+'">'+ this.name +'</option>');
671
  totalPages += 1;
672
  }
673
  });
674
  }).done(function() {
675
  jQuery('#loading').fadeOut();
676
  var savedMeta = jQuery('#cf_thepage').val();
677
  jQuery('#cf_thepage').trigger('change');
678
  if (totalPages == 0) {
679
  jQuery('#cf_thepage').hide();
680
  jQuery('#runningSplitTests').hide();
681
  jQuery('#noPageWarning').fadeIn();
682
  }
683
  else {
684
  jQuery('#noPageWarning').hide();
685
  jQuery('#cf_thepage').fadeIn();
686
  }
687
  var theposition = jQuery('#cf_thepage').val();
688
  var thefunnel = jQuery('#cf_thefunnel').val();
689
  thefunnel = thefunnel.split('{#}');
690
  jQuery('#cf_data').val(thefunnel[0]+'{#}'+theposition);
691
  var myString = thefunnel[0]+'{#}'+theposition;
692
  var arr = myString.split('{#}');
693
  // jQuery('#loadPageforUpdate').attr('src', 'https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true');
694
  var do_ping = function() {
695
  ping('https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true').then(function(delta) {}).catch(function(error) {});
696
  };
697
  do_ping();
698
  })
699
  .fail(function() {
700
  jQuery('#loading').fadeOut();
701
  })
702
  .always(function() {
703
  jQuery('#loading').fadeOut();
704
  });
705
  });
706
  var request_image = function(url) {
707
  return new Promise(function(resolve, reject) {
708
  var img = new Image();
709
  img.onload = function() { resolve(img); };
710
  img.onerror = function() { reject(url); };
711
  img.src = url + '?random-no-cache=' + Math.floor((1 + Math.random()) * 0x10000).toString(16);
712
  });
713
  };
714
  /**
715
  * Pings a url.
716
  * @param {String} url
717
  * @return {Promise} promise that resolves to a ping (ms, float).
718
  */
719
  var ping = function(url) {
720
  return new Promise(function(resolve, reject) {
721
  var start = (new Date()).getTime();
722
  var response = function() {
723
  var delta = ((new Date()).getTime() - start);
724
  // HACK: Use a fudge factor to correct the ping for HTTP bulk.
725
  delta /= 4;
726
  resolve(delta);
727
  };
728
  request_image(url).then(response).catch(response);
729
  // Set a timeout for max-pings, 5s.
730
  setTimeout(function() { reject(Error('Timeout')); }, 5000);
731
  });
732
  };
733
  function replaceText(inputText, tagName, tagReplace) {
734
  var regExp = new RegExp('\\[' + tagName+ '\\]([^\\[]*)\\[\/' + tagName + '\\]', 'g');
735
  return inputText.replace(regExp, tagReplace);
736
  }
737
  // Select New Page
738
  jQuery( '#cf_thepage' ).change(function() {
739
  jQuery('#loading').fadeOut();
740
  var thefunnel = jQuery('#cf_thefunnel').val();
741
  thefunnel = thefunnel.split('{#}');
742
  var theposition = jQuery(this).val();
743
  jQuery('#cf_data').val(thefunnel[0]+'{#}'+theposition);
744
  if(theposition != undefined || theposition != null){
745
  var myString = thefunnel[0]+'{#}'+theposition;
746
  var arr = myString.split('{#}');
747
  var arr2 = theposition.split('{#}');
748
  jQuery('#iframeURL').val(arr2[6]);
749
  <?php if ($cf_favicon_choice == '') { ?>
750
  if (arr2[7] !== ''){
751
  jQuery('#cf_favicon').val(arr2[7]);
752
  jQuery('#faviconPreview').attr('src', arr2[7]);
753
  } else {
754
  jQuery('#cf_favicon').val('https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
755
  jQuery('#faviconPreview').attr('src', 'https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
756
  }
757
  <?php } else { ?>
758
  if (arr2[7] !== ''){
759
  jQuery('#cf_favicon').val(arr2[7]);
760
  jQuery('#faviconPreview').hide();
761
  jQuery('#metaPreview strong').hide();
762
  } else {
763
  jQuery('#cf_favicon').val('https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
764
  jQuery('#faviconPreview').hide();
765
  jQuery('#metaPreview strong').hide();
766
  }
767
  <?php } ?>
768
  // Tracking Code
769
  jQuery('#headTracking').val(decodeURIComponent(arr2[8]));
770
  jQuery('#footerTracking').val(decodeURIComponent(arr2[9]));
771
  var thenewdata = jQuery('#cf_thefunnel').val();
772
  var thenewdata = thenewdata.split('{#}');
773
  jQuery('#fw_headTracking').val(thenewdata[1]);
774
  jQuery('#fw_footerTracking').val(thenewdata[2]);
775
  // Check if has split tests
776
  if (arr2[11] == 2) {
777
  var splittestkeys = '1 Active Split Test';
778
  jQuery('#runningSplitTests').show();
779
  jQuery('#runningSplitTests').html('<em style="display: block"><i class="fa fa-bar-chart" style="margin-right: 2px"></i> '+splittestkeys+'</em>');
780
  }
781
  else if (arr2[11] == 3) {
782
  var splittestkeys = '2 Active Split Tests';
783
  jQuery('#runningSplitTests').show();
784
  jQuery('#runningSplitTests').html('<em style="display: block"><i class="fa fa-bar-chart" style="margin-right: 2px"></i> '+splittestkeys+'</em>');
785
  }
786
  else {
787
  jQuery('#runningSplitTests').hide();
788
  }
789
  var myStr = arr2[3];
790
  // Browser title
791
  var subStr = myStr.match("%3Ctitle%3E(.*)%3C/title%3E");
792
  jQuery('.seoTitle').val(subStr[1].replace(/%20/g, ' '));
793
  jQuery('#metaPreview h3').text(subStr[1].replace(/%20/g, ' '));
794
  jQuery('#opengraphPreview h3').text(subStr[1].replace(/%20/g, ' '));
795
  var authorname = myStr.match('author%22%20content=%22(.*)%22%3E%3');
796
  jQuery('#seoAuthor').val(authorname[1].replace(/%20/g, ' '));
797
  jQuery('#theAuthor').html('| '+authorname[1].replace(/%20/g, ' '));
798
  var keywordsmeta = myStr.match('keywords%22%20content=%22(.*)%22%3E%3');
799
  var keywords = keywordsmeta[1].replace(/%20/g, ' ').split('%');
800
  jQuery('#seoKeywords').val(keywords[0]);
801
  // SEO Desc
802
  var subStr = myStr.match("description%22%20content=%22(.*)%22%3E%3Cmeta%20class=%22metaTagTop%22%20name=%22keywo");
803
  jQuery('.seoDesc').val(subStr[1].replace(/%20/g, ' '));
804
  jQuery('#metaPreview p').text(subStr[1].replace(/%20/g, ' '));
805
  jQuery('#opengraphPreview p').text(subStr[1].replace(/%20/g, ' '));
806
  // SEO Share Image
807
  var subStr = myStr.match("rty=%22og:image%22%20content=%22(.*)%22%20id=%22social-image%22%3E");
808
  jQuery('#seosocial').val(subStr[1]);
809
  if (subStr[1] != ''){
810
  jQuery('#seosocialimage').show();
811
  jQuery('#seosocialimage').attr('src', subStr[1]);
812
  } else {
813
  jQuery('#seosocialimage').hide();
814
  }
815
  ping('https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true');
816
  <?php if ( !empty( $_GET['updatemeta']) ) { ?>
817
  setTimeout(function() {
818
  jQuery('#publish').trigger('click');
819
  }, 4000);
820
  <?php } ?>
821
  }
822
  });
823
  // Savings
824
  jQuery('#publish').click(function() {
825
  if (jQuery(this).hasClass('disabledLink')=== true) {
826
  }
827
  else {
828
  jQuery('#saving').fadeIn();
829
  if (jQuery('#cf_slug').val() == '' && jQuery('.cf_header').val() == 'p') {
830
  jQuery('.selectapagelink').trigger('click');
831
  jQuery('#customurlError').fadeIn();
832
  jQuery('#cf_slug').focus();
833
  jQuery('#saving').fadeOut();
834
  }
835
  else {
836
  saveNow = 'yes';
837
  jQuery('.used_slug').each(function () {
838
  if (jQuery(this).html() == jQuery('#cf_slug').val()) {
839
  jQuery('#customurlError_duplicate').fadeIn();
840
  jQuery('#saving').fadeOut();
841
  saveNow = 'no!';
842
  }
843
  });
844
  if (saveNow == 'yes') {
845
  jQuery('form').submit();
846
  }
847
  }
848
  }
849
  });
850
  jQuery('.showupdatemetalink').click(function() {
851
  jQuery('form').submit();
852
  });
853
  if (jQuery(this).hasClass('disabledLink')=== true) {
854
  }
855
  else {
856
  jQuery('.cftabs').hide();
857
  jQuery('.cftablink').removeClass('active');
858
  jQuery(this).addClass('active');
859
  var tab = jQuery(this).attr('data-tab');
860
  jQuery('#'+tab).show();
861
  }
862
  str = str.replace(/^\s+|\s+$/g, ''); // trim
863
  str = str.toLowerCase();
864
  // remove accents, swap ñ for n, etc
865
  var from = "àáäâèéëêìíïîòóöôùúüûñç·/_,:;";
866
  var to = "aaaaeeeeiiiioooouuuunc------";
867
  for (var i=0, l=from.length ; i<l ; i++) {
868
  str = str.replace(new RegExp(from.charAt(i), 'g'), to.charAt(i));
869
  }
870
  str = str.replace(/[^a-z0-9 -]/g, '') // remove invalid chars
871
  .replace(/\s+/g, '-') // collapse whitespace and replace by -
872
  .replace(/-+/g, '-'); // collapse dashes
873
  return str;
874
  {
875
  var myStr = jQuery(this).val()
876
  myStr=myStr.toLowerCase();
877
  myStr=myStr.replace(/\s/g , "-");
878
  jQuery('#cf_slug').val(myStr);
879
  slug = jQuery(this).val();
880
  customSlug = slug;
881
  customSlug = string_to_slug(customSlug);
882
  jQuery(this).val(customSlug);
883
  jQuery('.customSlugText').text(customSlug);
884
  newurl = jQuery('#cfslugurl').text();
885
  jQuery('#cfslugurl').attr('href', newurl);
886
  jQuery('#cf_page_url').val('<?php echo get_home_url(); ?>/'+myStr);
887
  jQuery('#customurlError').hide();
888
  jQuery('#customurlError_duplicate').hide();
889
  jQuery('#publish').removeClass('disabledLink');
890
  jQuery('.used_slug').each(function () {
891
  if (jQuery(this).html() == customSlug) {
892
  jQuery('#customurlError_duplicate').fadeIn();
893
  jQuery('#publish').addClass('disabledLink');
894
  }
895
  });
896
  if ('' == customSlug) {
897
  jQuery('#customurlError').fadeIn();
898
  jQuery('#publish').addClass('disabledLink');
899
  }
900
  });
901
  if (jQuery(this).val() == 'clickgate') {
902
  jQuery('.cf_url').hide();
903
  jQuery('.clickgateinfo').show();
904
  jQuery('#publish').removeClass('disabledLink');
905
  }
906
  else if (jQuery(this).val() == 'hp') {
907
  jQuery('.cf_url').hide();
908
  jQuery('#publish').removeClass('disabledLink');
909
  }
910
  else if (jQuery(this).val() == 'np') {
911
  jQuery('.cf_url').hide();
912
  jQuery('#publish').removeClass('disabledLink');
913
  }
914
  else {
915
  jQuery('.cf_url').show();
916
  jQuery('.clickgateinfo').hide();
917
  jQuery('#cf_slug').trigger('keyup');
918
  }
919
  });
920
  <?php
921
  // check all CF page slugs
922
  $posts = get_posts(array(
923
  'post_type' => 'clickfunnels',
924
  'post_status' => 'publish',
925
  'fields' => 'ids'
926
  )
927
  );
928
  foreach($posts as $p){
929
  $slug = get_post_meta($p,"cf_slug",true);
930
  if ($slug != $cf_slug) {
931
  echo "<li class='used_slug'>$slug</li>";
932
  }
933
  }
934
  foreach( get_posts('numberposts=-1') as $post ) {
935
  echo "<li class='used_slug'>$post->post_name</li>";
936
  }
937
  foreach( get_pages('numberposts=-1') as $post ) {
938
  echo "<li class='used_slug'>$post->post_name</li>";
939
  }
940
  ?>
941
  <?php if ( !empty( $_GET['updatemeta'] ) ) { ?>
942
  <?php $hideforUpdateMeta = 'display: none !important'; ?>
943
  <style>.bootstrap-wp, .copyrightInfo {display: none; }</style>
944
  <span style="margin: 10px;" class="compatCheck compatwarning">Updating Your Meta Data... <strong><i class="fa fa-spinner fa-spin"></i> Please wait just a moment.</strong></span>
945
  <input type="hidden" name="meta_redirect" value='yes'>
946
  <?php } else { ?>
947
  <h2>
948
  <?php
949
  if ( !empty( $_GET['action'] ) && $cf_funnels ) {
950
  $blankpage = 'no';
951
  foreach ( $cf_funnels as $key=>$funnel ) {
952
  if ( $cf_thefunnel == $funnel->id ) {
953
  $lengthofheadline = 40;
954
  if ( $cf_type=='hp' || $cf_type=='np' || $cf_type=='clickgate' ) { $lengthofheadline = 19; }
955
  if (strlen($thepage[6]) > $lengthofheadline) {
956
  echo '<i class="fa fa-edit" style="margin-right: 5px"></i> '.trim(substr($thepage[6],0,$lengthofheadline)).' ...';
957
  $check = '1';
958
  }
959
  else {
960
  if(strlen($thepage[6]) > $lengthofheadline) { echo '<i class="fa fa-edit" style="margin-right: 5px"></i> '.trim(substr($thepage[6],0,$lengthofheadline)).' ...'; }
961
  else { echo '<i class="fa fa-edit" style="margin-right: 5px"></i> '.$thepage[6];}
962
  $check = '1';
963
  }
964
  }
965
  else {
966
  $blankpage = 'yes';
967
  }
968
  }
969
  $cf_options = get_option( "cf_options" );
970
  $homeCheck = $cf_options['home'];
971
  $postid = get_the_ID();
972
  if ($cf_page == '' && $cf_type == '' && $blankpage = 'yes' && $homeCheck['post_id'] != $postid && $cf_thepage != '') {
973
  echo 'Requires Custom URL';
974
  }
975
  } else {
976
  echo '<i class="fa fa-plus-square" style="margin-right: 5px"></i> Add New Page';
977
  }
978
  ?>
979
  <?php if ($cf_type == 'clickgate') { ?>
980
  ClickGate Popup
981
  <?php } ?> -->
982
  </h2>
983
  <?php if ( !empty( $_GET['action'] ) ) { ?>
984
  <a style="margin-right: 0;margin-top: -33px;" href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>" target="_blank" class="editThisPage"><i class="fa fa-edit"></i> EDITOR</a>
985
  <a style="margin-right: 10px;margin-top: -33px;" href="https://www.clickfunnels.com/funnels/<?php echo $thepage[0]; ?>#<?php echo $thepage[3]; ?>" target="_blank" class="editThisPage"><i class="fa fa-filter"></i> FUNNEL</a>
986
  <a style="margin-right: 10px;margin-top: -33px;" href="<?php echo get_home_url() ; ?>/<?php echo $cf_slug; ?>" title="View Page" target="_blank" class="editThisPage"><i class="fa fa-search"></i> PREVIEW</a>
987
  <?php if ( $cf_type=='p' ) {?>
988
  <?php }?>
989
  <?php if ( $cf_type=='hp' ) {?>
990
  <span style="margin-right: 10px;margin-top: -33px;" class="editThisPage2"><i class="fa fa-home"></i> Set as Home Page</span>
991
  <?php }?>
992
  <?php if ( $cf_type=='np' ) {?>
993
  <span style="margin-right: 10px;margin-top: -33px;" class="editThisPage2"><i class="fa fa-exclamation-triangle"></i> Set as 404 Page</span>
994
  <?php }?>
995
  <?php if ( $cf_type=='clickgate' ) {?>
996
  <span style="margin-right: 10px;margin-top: -33px;" class="editThisPage2"><i class="fa fa-external-link"></i> Set as ClickGate</span>
997
  <?php }?>
998
  <?php }?>
999
  <h4>You haven't setup your API settings. <a href="../wp-admin/edit.php?post_type=clickfunnels&page=cf_api">Click here to setup now.</a></h4>
1000
  <?php if ( !empty( $_GET['updatemeta'] ) ) { ?>
1001
  <input type="hidden" name="meta_redirect" value='yes'>
1002
  <?php } ?>
1003
  <input type="hidden" name="post_title" size="30" tabindex="1" value="ClickFunnels Page" id="title" autocomplete="off" />
1004
  <input type="hidden" name="post_status" size="30" tabindex="1" value="publish" id="title" autocomplete="off" />
1005
  <div class="bootstrap-wp"><?php wp_nonce_field( "save_clickfunnel", "clickfunnel_nonce" ); ?>
1006
  <div id="app_sidebar">
1007
  <a href="#" data-tab="tab1" class="cftablink selectapagelink active">Select Page</a>
1008
  <a href="#" data-tab="tab2" class="cftablink <?php if ( empty( $_GET['action'] ) ) { echo 'disabledLink'; } ?>">Meta Data</a>
1009
  <a href="#" data-tab="tab4" class="cftablink <?php if ( empty( $_GET['action'] ) ) { echo 'disabledLink'; } ?>">Open Graph</a>
1010
  <a href="#" data-tab="tab6" class="cftablink <?php if ( empty( $_GET['action'] ) ) { echo 'disabledLink'; } ?>">Tracking Code</a>
1011
  <a href="#" data-tab="tab3" class="cftablink <?php if ( empty( $_GET['action'] ) ) { echo 'disabledLink'; } ?>">Settings</a>
1012
  </div>
1013
  <div id="app_main" class="col-sm-7 row-fluid form-horizontal">
1014
  <div id="tab6" class="cftabs" style="display: none">
1015
  <!-- Tracking Code -->
1016
  <h2>Tracking Code</h2>
1017
  <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> To edit your meta data settings <a target="_blank" href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>">click to open this page inside the editor</a> and edit meta data inside the settings panel.</em></p>
1018
  <hr style="margin-left: 51px">
1019
  <div class="control-group" >
1020
  <label class="control-label" for="cf_iframe_check"> WordPress Only Tracking Code </label>
1021
  <div class="controls">
1022
  <textarea class="input-xlarge wpfooterTracking" id="wpfooterTracking" style="height: 80px;" name="cf_wptracking_code"><?php echo $cf_wptracking_code; ?></textarea>
1023
  </div>
1024
  </div>
1025
  <hr style="margin-left: 51px">
1026
  <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> You can add your own custom tracking code for only this WordPress page, meaning your original page will not have this tracking code.</em></p>
1027
  <hr style="margin-left: 51px">
1028
  <div class="control-group" >
1029
  <label class="control-label" for="cf_iframe_check"> Header Tracking </label>
1030
  <div class="controls">
1031
  <textarea class="input-xlarge headTracking" id="headTracking" readonly="readonly"style="height: 80px;" name="cf_head_tracking"><?php echo $cf_head_tracking; ?></textarea>
1032
  </div>
1033
  </div>
1034
  <div class="control-group" >
1035
  <label class="control-label" for="cf_iframe_check"> Footer Tracking </label>
1036
  <div class="controls">
1037
  <textarea class="input-xlarge footerTracking" id="footerTracking" readonly="readonly"style="height: 80px;" name="cf_footer_tracking"><?php echo $cf_footer_tracking; ?></textarea>
1038
  </div>
1039
  </div>
1040
  <hr style="margin-left: 51px">
1041
  <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> Funnel wide tracking is set inside the Funnel Settings in the ClickFunnels app.</em></p>
1042
  <hr style="margin-left: 51px">
1043
  <div class="control-group" >
1044
  <label class="control-label" for="cf_iframe_check"> Funnel Wide Header Tracking </label>
1045
  <div class="controls">
1046
  <textarea class="input-xlarge fw_headTracking" id="fw_headTracking" readonly="readonly"style="height: 80px;" name="cf_head_tracking"><?php echo $cf_head_tracking; ?></textarea>
1047
  </div>
1048
  </div>
1049
  <div class="control-group" >
1050
  <label class="control-label" for="cf_iframe_check"> Funnel Wide Footer Tracking </label>
1051
  <div class="controls">
1052
  <textarea class="input-xlarge fw_footerTracking" id="fw_footerTracking" readonly="readonly"style="height: 80px;" name="cf_footer_tracking"><?php echo $cf_footer_tracking; ?></textarea>
1053
  </div>
1054
  </div>
1055
  </div>
1056
  <div id="tab1" class="cftabs">
1057
  <!-- Select a Page / Funnel -->
1058
  <h2>Select a Page</h2>
1059
  <div class="control-group cf_uses_api clearfix" style="">
1060
  <label class="control-label" for="cf_thefunnel"> Choose Funnel </label>
1061
  <div class="controls">
1062
  <select class="input-xlarge" id="cf_thefunnel" name="cf_thefunnel_backup">
1063
  <?php if ( empty( $cf_funnels ) ) { ?>
1064
  <option value="0">No Funnels Found</option>
1065
  <?php }
1066
  else {
1067
  // Agency Gate Check
1068
  $agency_group_tag = get_option('clickfunnels_agency_group_tag');
1069
  foreach ( $cf_funnels as $key=>$funnel ) {
1070
  if ($agency_group_tag != 'off') {
1071
  if ($funnel->group_tag || $funnel->group_tag != '') {
1072
  $group_tag = str_replace("'", '{replace}', $funnel->group_tag);
1073
  $group_tag = str_replace("\"", '{replace}', $funnel->group_tag);
1074
  if ($agency_group_tag == $group_tag) { ?>
1075
  <option value="<?php echo $funnel->id;?>{#}<?php echo htmlentities($funnel->head_tracking_code, ENT_QUOTES);?>{#}<?php echo htmlentities($funnel->body_tracking_code, ENT_QUOTES);?>" <?php if ( $cf_thefunnel == $funnel->id ) { echo "selected"; } ?>><?php echo $funnel->name;?></option>
1076
  <?php }
1077
  } else {
1078
  if ($agency_group_tag == 'ungrouped') { ?>
1079
  <option value="<?php echo $funnel->id;?>{#}<?php echo htmlentities($funnel->head_tracking_code, ENT_QUOTES);?>{#}<?php echo htmlentities($funnel->body_tracking_code, ENT_QUOTES);?>" <?php if ( $cf_thefunnel == $funnel->id ) { echo "selected"; } ?>><?php echo $funnel->name;?></option>
1080
  <?php }
1081
  }
1082
  }
1083
  else { ?>
1084
  <option value="<?php echo $funnel->id;?>{#}<?php echo htmlentities($funnel->head_tracking_code, ENT_QUOTES);?>{#}<?php echo htmlentities($funnel->body_tracking_code, ENT_QUOTES);?>" <?php if ( $cf_thefunnel == $funnel->id ) { echo "selected"; } ?>><?php echo $funnel->name;?></option>
1085
  <?php }
1086
  }
1087
  } ?>
1088
  </select>
1089
  </div>
1090
  </div>
1091
  <div class="control-group choosePageBox clearfix" style="<?php if ( empty( $_GET['action'] ) ) { echo "display: none"; } ?>">
1092
  <label class="control-label" for="cf_thepage">
1093
  Choose Page <span id="loading"><i class="fa fa-spinner"></i> <em style="margin-left: 5px;font-size: 11px;">Loading Pages...</em></span>
1094
  <div id="runningSplitTests" style="font-size: 11px;opacity: .8;float: right;padding-top: 5px;color: #555;margin-right: 26px;display: none;clear: both">
1095
  <!-- Number of Split Tests -->
1096
  </div>
1097
  </label>
1098
  <div class="controls">
1099
  <select class="input-xlarge" id="cf_thepage" name="cf_thepage" style="float: left;">
1100
  <?php if ( empty( $cf_funnels_pages ) ) { ?>
1101
  <option value="0">No Pages Found</option>
1102
  <?php }
1103
  else {
1104
  foreach ( $cf_funnels_pages->funnel_steps as $key => $funnel ) { ?>
1105
  <option value="<?php echo $funnel->position;?>" <?php if ( $cf_thepage == $funnel->position ) { echo "selected"; } ?>><?php echo $funnel->name;?></option>
1106
  <?php
1107
  }
1108
  }
1109
  ?>
1110
  </select>
1111
  </div>
1112
  <div id="noPageWarning" style="font-size: 11px; margin-left: 28px; margin-top: -13px;float: left;padding-top: 14px;display: none;width: 100%; clear: both">
1113
  <strong style="font-size: 13px;display: block;">No compatible pages found. </strong>
1114
  <em style="display: block">Membership pages and order pages are not available through plugin.</em>
1115
  </div>
1116
  <br clear="all">
1117
  </div>
1118
  <?php if ( $cf_type!="p" && $check == '1') $display ="display:none"; else $display="";?>
1119
  <?php if ( $cf_type == '') $display ="display:block"; ?>
1120
  <div class="cf_url control-group clearfix" style="<?php echo $display;?>" >
1121
  <label class="control-label" for="cf_slug"> Custom Slug</label>
1122
  <div id="cf-wp-path" class="controls ">
1123
  <input style="padding:10px;"type="text" value="<?php if ( isset( $cf_slug ) ) echo $cf_slug;?>" placeholder="your-path-here" name="cf_slug" id="cf_slug" class="input-xlarge">
1124
  <?php if ( $cf_type == '' ) $display ="display:block;"; else $display="";?>
1125
  <div id="customurlError" style="display: none; <?php echo $display; ?> color: #E54F3F; font-weight: bold;margin-top: 4px;">
1126
  Add a path before saving.
1127
  </div>
1128
  <div id="customurlError_duplicate" style="display: none; <?php echo $display; ?> color: #E54F3F; font-weight: bold;margin-top: 4px;">
1129
  Slug already taken
1130
  </div>
1131
  </div>
1132
  <p class="infoHelp" style="padding-left: 25px;margin-top: 13px;"><span><i class="fa fa-globe" style="margin-right: 3px"></i>
1133
  <?php if ( !empty( $_GET['action'] ) ) { ?>
1134
  <a style="font-weight: bold;text-decoration: none; padding-bottom: 3px;" id="cfslugurl" href="<?php echo get_home_url() ; ?>/<?php echo $cf_slug; ?>" target="_blank"><?php echo get_home_url() ; ?>/<span class="customSlugText"><?php echo $cf_slug; ?></span></a>
1135
  <?php } else { ?>
1136
  <span style="font-weight: bold;text-decoration: none; padding-bottom: 3px;"> <?php echo get_home_url() ; ?>/<span class="customSlugText"><?php echo $cf_slug; ?></span></span>
1137
  <?php } ?>
1138
  </span></p>
1139
  <input type="text" style="display: none" class="input-xlarge" style="height: 30px;" value="<?php echo $cf_page_url; ?>" name="cf_page_url" id="cf_page_url" />
1140
  </div>
1141
  </div>
1142
  <div id="tab2" class="cftabs" style="display: none">
1143
  <!-- Meta Data -->
1144
  <h2>Meta Data</h2>
1145
  <div id="metaPreview">
1146
  <h5>PREVIEW</h5>
1147
  <img src="<?php echo $cf_favicon; ?>" id="faviconPreview" style="width: 18px;margin-left: 10px;margin-bottom: 5px;float: left;" />
1148
  <strong>FAVICON</strong>
1149
  <h3><?php echo $cf_seo_title; ?></h3>
1150
  <span><?php echo get_home_url() ; ?>/<em style="font-style: normal" class="customSlugText"><?php echo $cf_slug; ?></em></span>
1151
  <p><?php echo $cf_seo_desc; ?></p>
1152
  </div>
1153
  <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> To edit your meta data settings <a target="_blank" href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>">click to open this page inside the editor</a> and edit meta data inside the settings panel. To update this page with new changes, re-save this page to keep your meta data up-to-date.</em></p>
1154
  <hr style="margin-left: 51px">
1155
  <div class="control-group" >
1156
  <label class="control-label" for="cf_iframe_check"> Website Title </label>
1157
  <div class="controls">
1158
  <input type="text" class="input-xlarge seoTitle" id="seoTitle" readonly="readonly"style="height: 30px;" value="<?php echo $cf_seo_title; ?>" name="cf_seo_title" />
1159
  </div>
1160
  </div>
1161
  <div class="control-group" >
1162
  <label class="control-label" for="cf_iframe_check"> Description </label>
1163
  <div class="controls">
1164
  <textarea class="input-xlarge seoDesc" id="seoDesc" readonly="readonly"style="height: 80px;" name="cf_seo_desc"><?php echo $cf_seo_desc; ?></textarea>
1165
  </div>
1166
  </div>
1167
  <div class="control-group" >
1168
  <label class="control-label" for="cf_iframe_check"> Keywords </label>
1169
  <div class="controls">
1170
  <input type="text" class="input-xlarge" id="seoKeywords" readonly="readonly"style="height: 30px;" value="<?php echo $cf_keywords; ?>" name="cf_keywords" />
1171
  </div>
1172
  </div>
1173
  <div class="control-group" >
1174
  <label class="control-label" for="cf_iframe_check"> Favicon </label>
1175
  <div class="controls">
1176
  <input type="text" class="input-xlarge" readonly="readonly"id="cf_favicon" style="height: 30px;" value="<?php echo $cf_favicon; ?>" name="cf_favicon" />
1177
  </div>
1178
  </div>
1179
  <div class="control-group" >
1180
  <label class="control-label" for="cf_favicon_choice"> Choose Favicon to Show </label>
1181
  <div class="controls">
1182
  <select name="cf_favicon_choice" id="cf_favicon_choice" class="cf_favicon_choice" style="width: 100% !important">
1183
  <option value="" <?php if($cf_favicon_choice == ''){ echo 'selected'; } ?>>Show ClickFunnels Page Favicon</option>
1184
  <option value="default"<?php if($cf_favicon_choice == 'default'){ echo 'selected'; } ?>>Show Default WordPress Favicon</option>
1185
  </select>
1186
  </div>
1187
  </div>
1188
  </div>
1189
  <div id="tab3" class="cftabs" style="display: none">
1190
  <!-- Page Settings -->
1191
  <h2>Page Settings</h2>
1192
  <div class="innerTab">
1193
  <div class="control-group ">
1194
  <label class="control-label" for="cf_type"> Choose Page Type</label>
1195
  <select name="cf_type" id="cf_type" class="cf_header" style="width: 100% !important">
1196
  <option value="p" <?php if($cf_type == 'p'){ echo 'selected'; } ?>>Regular Page</option>
1197
  <option value="hp"<?php if($cf_type == 'hp'){ echo 'selected'; } ?>>Set as Home Page</option>
1198
  <option value="np"<?php if($cf_type == 'np'){ echo 'selected'; } ?>>Set as 404 Page</option>
1199
  <option value="clickgate"<?php if($cf_type == 'clickgate'){ echo 'selected'; } ?>>Set as ClickGate</option>
1200
  </select>
1201
  </div>
1202
  </div>
1203
  <?php if ( $cf_type == 'clickgate') $display ="display:block;"; else $display="";?>
1204
  <p class="infoHelp clickgateinfo" style="color: #8A6D3B;display: none; <?php echo $display; ?>"><i class="fa fa-star" style="margin-right: 3px"></i> <strong>ClickGate will show this page at the top of any page or post that your visitors land on and will cookie them to show only page only once.</strong></em></p>
1205
  <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> Choose to make this a regular page with a path (custom URL) or show this page as the Home Page for your blog. You can also set this page as a 404 page for any old, mispelled or deleted paths. <em>(only one page can be set as a Home, 404 or ClickGate at a time)</em></p>
1206
  <hr style="margin-left: 51px">
1207
  <div class="control-group cf_uses_api" >
1208
  <label class="control-label" for="cf_iframe_check"> Show Page Inside of Iframe</label>
1209
  <div class="controls">
1210
  <select class="input-xlarge" id="cf_iframe_check" name="cf_iframe_check" style="float: left;">
1211
  <option value="off">No, show page using ClickFunnels API.</option>
1212
  <option value="on" <?php if( $cf_iframe_check == 'on') { ?>selected <?php } ?>>Yes, show page using an iframe.</option>
1213
  </select>
1214
  </div>
1215
  </div>
1216
  <br style="clear: both">
1217
  <p class="infoHelp" style="margin-top: 15px"><i class="fa fa-question-circle" style="margin-right: 3px"></i> If you have custom code on your page that is not working, choose to show your page inside an iframe to fix any custom code issues. If your page is showing up blank use the iframe option and submit a support ticket.</p>
1218
  <hr style="margin-left: 51px">
1219
  <div class="control-group" style="display: block">
1220
  <label class="control-label" for="cf_iframe_check"> ClickFunnels Page URL <small>(reference only)</small></label>
1221
  <div class="controls">
1222
  <input type="text" class="input-xlarge" id="iframeURL" readonly="readonly"style="height: 30px;" value="<?php echo $cf_iframe_url; ?>" name="cf_iframe_url" />
1223
  </div>
1224
  </div>
1225
  </div>
1226
  <div id="tab4" class="cftabs" style="display: none">
1227
  <!-- Extra Settings -->
1228
  <h2>Open Graph</h2>
1229
  <div id="opengraphPreview">
1230
  <h5>PREVIEW</h5>
1231
  <img style="<?php if ($cf_seo_image == '') { echo 'display: none;'; } ?>" src="<?php echo $cf_seo_image; ?>" id="seosocialimage">
1232
  <h3><?php echo $cf_seo_title; ?></h3>
1233
  <p><?php echo $cf_seo_desc; ?></p>
1234
  <span><?php echo get_home_url() ; ?> <em id="theAuthor"><?php echo '| '.$cf_author; ?></em></span>
1235
  </div>
1236
  <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> To edit your meta data settings <a target="_blank" href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>">click to open this page inside the editor</a> and edit meta data inside the settings panel. To update this page with new changes, re-save this page to keep your meta data up-to-date.</em></p>
1237
  <hr style="margin-left: 51px">
1238
  <div class="control-group" >
1239
  <label class="control-label" for="cf_iframe_check"> Title </label>
1240
  <div class="controls">
1241
  <input type="text" class="input-xlarge seoTitle" id="seoTitle" readonly="readonly"style="height: 30px;" value="<?php echo $cf_seo_title; ?>" />
1242
  </div>
1243
  </div>
1244
  <div class="control-group" >
1245
  <label class="control-label" for="cf_iframe_check"> Description </label>
1246
  <div class="controls">
1247
  <textarea class="input-xlarge seoDesc" id="seoDesc" readonly="readonly"style="height: 80px;" name="cf_seo_desc"><?php echo $cf_seo_desc; ?></textarea>
1248
  </div>
1249
  </div>
1250
  <div class="control-group" >
1251
  <label class="control-label" for="cf_iframe_check"> Author </label>
1252
  <div class="controls">
1253
  <input type="text" class="input-xlarge" id="seoAuthor" readonly="readonly"style="height: 30px;" value="<?php echo $cf_author; ?>" name="cf_author" />
1254
  </div>
1255
  </div>
1256
  <div class="control-group" >
1257
  <label class="control-label" for="cf_iframe_check"> Social Image URL </label>
1258
  <div class="controls">
1259
  <input type="text" class="input-xlarge" id="seosocial" readonly="readonly" style=" height: 30px;" value="<?php echo $cf_seo_image; ?>" name="cf_seo_image" />
1260
  </div>
1261
  </div>
1262
  </div>
1263
  <div id="savePage">
1264
  <div style="width: 100%">
1265
  <?php if ( get_option( 'clickfunnels_api_email' ) == "" || get_option( 'clickfunnels_api_auth' ) == "" ) { ?>
1266
  <a href="#" id="publish" name="publish" class="action-button shadow animate green <?php if ( empty( $_GET['action'] ) ) { echo 'disabledLink'; } ?>" disabled style="float: right; ">
1267
  <?php if ( !empty( $_GET['action'] ) ) { echo "<i class='fa fa-check-circle'></i> Update Page"; } else { echo "<i class='fa fa-check-circle'></i> Save and Publish"; } ?>
1268
  </a>
1269
  <?php } else { ?>
1270
  <a href="#" id="publish" name="publish" class="action-button shadow animate green <?php if ( empty( $_GET['action'] ) ) { echo 'disabledLink'; } ?>" style="float: right; ">
1271
  <?php if ( !empty( $_GET['action'] ) ) { echo "<i class='fa fa-check-circle'></i> Update Page"; } else { echo "<i class='fa fa-check-circle'></i> Save and Publish"; } ?>
1272
  </a>
1273
  <?php } ?>
1274
  <div id="saving" style="float: right;display: none; padding-right: 10px;opacity: .6;padding-top: 9px;margin-right: 4px;font-size: 15px;">
1275
  <i class="fa fa-spinner fa-spin"></i>
1276
  <span>Saving...</span>
1277
  </div>
1278
  </div>
1279
  </div>
1280
  <style>
1281
  #hiddenStuff {display: none}
1282
  </style>
1283
  <div class="control-group" id="hiddenStuff" <?php if ( !empty( $_GET['cf'] ) ) { ?>style="display: block;clear: both;" <?php } ?>>
1284
  <style>
1285
  #hiddenStuff input {
1286
  display:block;margin-top: 5px;margin-bottom: 5px;font-weight: normal;width: 100%;
1287
  }
1288
  </style>
1289
  <div class="controls">
1290
  <br>
1291
  <h3>Dev Checks:</h3>
1292
  <hr />
1293
  <strong>Funnel ID: <input id="checkFunID" type="text" value="<?php echo $thepage[0]; ?>" /></strong>
1294
  <strong>Page Key: <input type="text" value="<?php echo $thepage[1]; ?>" /></strong>
1295
  <strong>Page ID: <input type="text" value="<?php echo $thepage[2]; ?>" /></strong>
1296
  <strong>Funnel Step ID: <input type="text" value="<?php echo $thepage[3]; ?>" /></strong>
1297
  <strong>Saved Meta: <input type="text" id="oldmeta" value="<?php echo $thepage[4]; ?>" /></strong>
1298
  <strong>JS Meta: <input type="text" id="jsmeta" value="" /></strong>
1299
  <strong>Post ID: <input type="text" value="<?php echo $thepage[5]; ?>" /></strong>
1300
  <strong>Page Name: <input type="text" value="<?php echo $thepage[6]; ?>" /></strong>
1301
  <strong>Use iframe?: <input type="text" value="<?php echo $cf_iframe_check; ?>" /></strong>
1302
  <strong>Iframe URL: <input type="text" value="<?php echo $cf_iframe_url; ?>" /></strong>
1303
  <textarea name="cf_thefunnel" id="cf_data" style="display:block;margin-top: 5px;margin-bottom: 10px;width: 100%;height: 300px; font-size: 13px;"><?php echo $savedData; ?></textarea>
1304
  </div>
1305
  </div>
1306
  </div>
1307
  </div>
 
1
  $cf_thefunnel = get_post_meta( $_GET['post'], "cf_thefunnel", true );
2
  $cf_thepage = get_post_meta( $_GET['post'], "cf_thepage", true );
3
  $cf_iframe_check = get_post_meta( $_GET['post'], "cf_iframe_check", true );
4
  $cf_iframe_url = get_post_meta( $_GET['post'], "cf_iframe_url", true );
5
  $cf_seo_title = get_post_meta( $_GET['post'], "cf_seo_title", true );
6
  $cf_seo_desc = get_post_meta( $_GET['post'], "cf_seo_desc", true );
7
  $cf_seo_image = get_post_meta( $_GET['post'], "cf_seo_image", true );
8
  $cf_page_url = get_post_meta( $_GET['post'], "cf_page_url", true );
9
 
10
  if ( !isset( $cf_page['page_id'] ) || $cf_page['page_id'] < 10 ) {
11
  $thepage = explode( "{#}", $cf_page );
12
  $savedData = $cf_page;
13
  }
14
  else {
15
  $thepage = explode( "{#}", $cf_page['page_id'] );
16
  $savedData = $cf_page['page_id'];
17
  }
18
  $cf_options = get_option( "cf_options" );
19
  jQuery(document).ready(function(){
20
  // Set Correct Options
21
  var thefunnel = jQuery('#cf_thefunnel').val();
22
  var specificFunnel = 'https://api.clickfunnels.com/funnels/'+thefunnel+'.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
23
  jQuery('#cf_thepage').find('option').remove().end();
24
  jQuery('#loading').fadeIn();
25
  jQuery.getJSON(specificFunnel, function(data) {
26
  setTimeout(function() {
27
  jQuery('#loading').fadeOut();
28
  }, 2000);
29
  var is_selected = "";
30
  jQuery.each(data.funnel_steps, function() {
31
  if (this.pages != ''){
32
  if(this.pages[0].id == "<?php echo $thepage[2] ?>" && this.pages != '' ) {
33
  is_selected = "selected";
34
  jQuery('#cf_seo_tags').val(this.pages[0].metatags);
35
  } else {
36
  is_selected = "";
37
  }
38
  if ( this.wp_friendly == true && this.pages != '' ) {
39
  var baseurl = this.pages[0].published_url.split('.com/');
40
  var baseurlnew = baseurl[0]+'.com/'+this.path;
41
  jQuery('#iframeURL').val(baseurlnew);
42
  // Check if has split tests
43
  var splittestkeys = 'none';
44
  // if (this.pages.length == 2) {
45
  // splittestkeys = this.pages[0].key + '{|}' + this.pages[1].key;
46
  // }
47
  // else if (this.pages.length == 3) {
48
  // splittestkeys = this.pages[0].key + '{|}' + this.pages[1].key+ '{|}' + this.pages[2].key;
49
  // }
50
 
51
  pageKey = this.pages[0].key;
52
 
53
  jQuery('#cf_thepage').append('<option value="' + pageKey + '{#}' + this.pages[0].id + '{#}' + this.pages[0].funnel_step_id + '{#}' + encodeURI(this.pages[0].metatags) + '{#}<?php echo get_the_ID(); ?>{#}' + this.name +'{#}'+baseurlnew+'" '+is_selected+'>'+ this.name +'</option>');
54
  }
55
  }
56
  });
57
  }).done(function() {
58
  jQuery('#loading').fadeOut();
59
  var savedMeta = jQuery('#cf_thepage').val();
60
  if(savedMeta != undefined || savedMeta != null){
61
  savedMeta = savedMeta.split('{#}');
62
  jQuery('#jsmeta').val(savedMeta[3]);
63
  <?php if ( !empty( $_GET['action'] ) ) { ?>
64
  if (savedMeta[3] != jQuery('#oldmeta').val()){
65
  jQuery('#metaalreadyupdated').hide();
66
  jQuery('#showupdatemetalink').show();
67
  }
68
  <?php } ?>
69
  }
70
  <?php if ( empty( $_GET['action'] ) ) { ?>
71
  jQuery('#cf_thefunnel').prepend('<option value="" disabled selected>Select a Funnel</option>');
72
  <?php } ?>
73
  })
74
  .fail(function() {
75
  jQuery('#loading').fadeOut();
76
  })
77
  .always(function() {
78
  jQuery('#loading').fadeOut();
79
  });
80
  // Change Funnel Populate Dropdown
81
  jQuery( '#cf_thefunnel' ).change(function() {
82
  jQuery('#loading').fadeIn();
83
  var thefunnel = jQuery(this).val();
84
  var totalPages = 0;
85
  var specificFunnel = 'https://api.clickfunnels.com/funnels/'+thefunnel+'.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
86
  jQuery('#cf_thepage').find('option').remove().end();
87
  jQuery.getJSON(specificFunnel, function(data) {
88
  setTimeout(function() {
89
  jQuery('#loading').fadeOut();
90
  }, 2000);
91
  // alert( specificFunnel);
92
  jQuery.each(data.funnel_steps, function() {
93
  if( this.wp_friendly == true && this.pages != '' ) {
94
  if (this.pages.length > 1) {
95
  jQuery('#usingSplitTests').show();
96
  } else {
97
  jQuery('#usingSplitTests').hide();
98
  }
99
 
100
  var baseurl = this.pages[0].published_url.split('.com/');
101
  var baseurlnew = baseurl[0]+'.com/'+this.path;
102
  jQuery('#iframeURL').val(baseurlnew);
103
  jQuery('#cf_thepage').append('<option value="' + this.pages[0].key + '{#}' + this.pages[0].id + '{#}' + this.pages[0].funnel_step_id + '{#}' + encodeURI(this.pages[0].metatags) + '{#}<?php echo get_the_ID(); ?>{#}' + this.name +'{#}'+baseurlnew+'">'+ this.name +'</option>');
104
 
105
 
106
  totalPages += 1;
107
  }
108
  });
109
 
110
  }).done(function() {
111
  jQuery('#loading').fadeOut();
112
  var savedMeta = jQuery('#cf_thepage').val();
113
  if(savedMeta != undefined || savedMeta != null){
114
  savedMeta = savedMeta.split('{#}');
115
  jQuery('#previewiframe').attr('src', savedMeta[6]+'?preview=true');
116
  }
117
  jQuery('#cf_thepage').trigger('change');
118
 
119
  if (totalPages == 0) {
120
  jQuery('#noPageWarning').fadeIn();
121
  jQuery('#cf_thepage').fadeOut();
122
  }
123
  else {
124
  jQuery('#noPageWarning').hide();
125
  jQuery('#cf_thepage').fadeIn();
126
  }
127
  var theposition = jQuery('#cf_thepage').val();
128
  jQuery('#cf_data').val(thefunnel+'{#}'+theposition);
129
  var myString = thefunnel+'{#}'+theposition;
130
  var arr = myString.split('{#}');
131
  // jQuery('#loadPageforUpdate').attr('src', 'https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true');
132
  var do_ping = function() {
133
  ping('https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true').then(function(delta) {
134
  }).catch(function(error) {
135
  });
136
  };
137
  do_ping();
138
  })
139
  .fail(function() {
140
  jQuery('#loading').fadeOut();
141
  })
142
  .always(function() {
143
  jQuery('#loading').fadeOut();
144
  });
145
  setTimeout(function() {
146
 
147
  }, 3000);
148
 
149
  });
150
  var request_image = function(url) {
151
  return new Promise(function(resolve, reject) {
152
  var img = new Image();
153
  img.onload = function() { resolve(img); };
154
  img.onerror = function() { reject(url); };
155
  img.src = url + '?random-no-cache=' + Math.floor((1 + Math.random()) * 0x10000).toString(16);
156
  });
157
  };
158
  /**
159
  * Pings a url.
160
  * @param {String} url
161
  * @return {Promise} promise that resolves to a ping (ms, float).
162
  */
163
  var ping = function(url) {
164
  return new Promise(function(resolve, reject) {
165
  var start = (new Date()).getTime();
166
  var response = function() {
167
  var delta = ((new Date()).getTime() - start);
168
  // HACK: Use a fudge factor to correct the ping for HTTP bulk.
169
  delta /= 4;
170
  resolve(delta);
171
  };
172
  request_image(url).then(response).catch(response);
173
  // Set a timeout for max-pings, 5s.
174
  setTimeout(function() { reject(Error('Timeout')); }, 5000);
175
  });
176
  };
177
  function replaceText(inputText, tagName, tagReplace) {
178
  var regExp = new RegExp('\\[' + tagName+ '\\]([^\\[]*)\\[\/' + tagName + '\\]', 'g');
179
  return inputText.replace(regExp, tagReplace);
180
  }
181
  // Select New Page
182
  jQuery( '#cf_thepage' ).change(function() {
183
  jQuery('#loading').fadeOut();
184
  var thefunnel = jQuery('#cf_thefunnel').val();
185
  var theposition = jQuery(this).val();
186
  jQuery('#cf_data').val(thefunnel+'{#}'+theposition);
187
  if(theposition != undefined || theposition != null){
188
  var myString = thefunnel+'{#}'+theposition;
189
  var arr = myString.split('{#}');
190
  var arr2 = theposition.split('{#}');
191
  // Iframe
192
  jQuery('#iframeURL').val(arr2[6]);
193
  var myStr = arr2[3];
194
  // Browser title
195
  var subStr = myStr.match("%3Ctitle%3E(.*)%3C/title%3E");
196
 
197
  jQuery('#seoTitle').val(subStr[1].replace(/%20/g, ' '));
198
 
199
  // SEO Desc
200
  var subStr = myStr.match("description%22%20content=%22(.*)%22%3E%3Cmeta%20class=%22metaTagTop%22%20name=%22keywo");
201
  jQuery('#seoDesc').val(subStr[1].replace(/%20/g, ' '));
202
  // SEO Share Image
203
  var subStr = myStr.match("rty=%22og:image%22%20content=%22(.*)%22%20id=%22social-image%22%3E");
204
  jQuery('#seosocial').val(subStr[1]);
205
  // jQuery('#loadPageforUpdate').attr('src', 'https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true');
206
  var do_ping = function() {
207
  ping('https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true').then(function(delta) {
208
  }).catch(function(error) {
209
  });
210
  };
211
  do_ping();
212
  jQuery('#previewiframe').attr('src', arr[7]+'?preview=true');
213
  }
214
 
215
  });
216
  // Fade Out Message
217
  setTimeout(function() {
218
  jQuery('#message').fadeOut();
219
  }, 3500);
220
  // Savings
221
  jQuery('#publish').click(function() {
222
  jQuery('#saving').fadeIn();
223
  });
224
  jQuery('#delete').on('click', function () {
225
  return confirm('Are you sure you want to delete this page?');
226
  });
227
  jQuery('#cf_slug').bind('keyup keypress blur', function()
228
  {
229
  var myStr = jQuery(this).val()
230
  myStr=myStr.toLowerCase();
231
  myStr=myStr.replace(/\s/g , "-");
232
  jQuery('#cf_slug').val(myStr);
233
  });
234
  // Check Null and Resave v1.0.6
235
  <?php if ($thepage[1] == 'null') { ?>
236
  // jQuery('#autosaving').fadeIn();
237
  // setTimeout(function() {
238
  // jQuery('form').submit();
239
  // }, 2000);
240
  <?php } ?>
241
  jQuery('#showupdatemetalink').click(function() {
242
  jQuery('form').submit();
243
  });
244
 
245
  });
246
  if ( $cf_page != "" ) {
247
  $json = get_file_content( 'https://api.clickfunnels.com/funnels/'.$cf_thefunnel.'.json?email='.get_option( 'clickfunnels_api_email' ).'&auth_token='.get_option( 'clickfunnels_api_auth' ) );
248
  $cf_funnels_pages = json_decode( $json );
249
  }
250
  <h4><i class="fa fa-times"></i> Uh oh, your page did not save correctly.</h4>
251
  <h2>Saving and Reloading...</h2>
252
  <h1><i class="fa fa-cog fa-spin"></i></h1>
253
  <img src="<?php echo plugins_url( 'logo.png', __FILE__ ); ?>" alt="">
254
  <a href="https://www.app.clickfunnels.com/funnels" target="_blank" class=""><i class="fa fa-bars"></i> My Account</a>
255
  <br clear="all">
256
  <?php if ( !empty( $_GET['action'] ) ) { ?>
257
  <?php if ( $cf_type=='p' ) {?>
258
  <a style="margin-right: -3px;" href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>" target="_blank" class="editThisPage"><i class="fa fa-edit"></i> Open Editor</a>
259
  <a style="margin-right: 10px;" href="https://www.clickfunnels.com/funnels/<?php echo $thepage[0]; ?>#<?php echo $thepage[3]; ?>" target="_blank" class="editThisPage"><i class="fa fa-cogs"></i> View Funnel</a>
260
  <a style="margin-right: 10px;" href="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/<?php echo $cf_slug; ?>" title="View Page" target="_blank" class="editThisPage"><i class="fa fa-search"></i> Preview</a>
261
  <h2><?php foreach ( $cf_funnels as $key=>$funnel ) { ?>
262
  <?php if ( $cf_thefunnel == $funnel->id ) { if(strlen($funnel->name) > 30) { echo substr($funnel->name,0,30).'...'; } else { echo $funnel->name;} } } ?></h2>
263
 
264
  <a href="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/<?php echo $cf_slug; ?>" title="View Page" target="_blank"> <?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/<?php echo $cf_slug; ?></a>
265
  <?php }?>
266
  <?php if ( $cf_type=='hp' ) {?>
267
  <a href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>" target="_blank" class="editThisPage"><i class="fa fa-edit"></i> Launch in Editor</a>
268
  <a style="margin-right: 10px;" href="https://www.clickfunnels.com/funnels/<?php echo $thepage[0]; ?>#<?php echo $thepage[3]; ?>" target="_blank" class="editThisPage"><i class="fa fa-cogs"></i> Edit Funnel</a>
269
  <a style="margin-right: 10px;" href="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/<?php echo $cf_slug; ?>" title="View Page" target="_blank" class="editThisPage"><i class="fa fa-search"></i> View Page</a>
270
  <h2>Set as Home Page</h2>
271
  <a href="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>" title="View Page" target="_blank"><i class="fa fa-search"></i> <?php echo get_option( 'clickfunnels_siteURL' ) ; ?></a>
272
  <?php }?>
273
  <?php if ( $cf_type=='np' ) {?>
274
  <a href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>" target="_blank" class="editThisPage"><i class="fa fa-edit"></i> Launch in Editor</a>
275
  <a style="margin-right: 10px;" href="https://www.clickfunnels.com/funnels/<?php echo $thepage[0]; ?>#<?php echo $thepage[3]; ?>" target="_blank" class="editThisPage"><i class="fa fa-cogs"></i> Edit Funnel</a>
276
  <a style="margin-right: 10px;" href="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/<?php echo $cf_slug; ?>/invalid-url-404-testing" title="View Page" target="_blank" class="editThisPage"><i class="fa fa-search"></i> View Page</a>
277
  <h2>Set as 404 Page</h2>
278
  <a href="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/invalid-url" title="View Page" target="_blank"><i class="fa fa-search"></i> <?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/invalid-url</a>
279
  <?php }?>
280
  <?php if ( $cf_type=='' ) {?>
281
  <h2>Page Undefined - Try saving your page again.</h2>
282
  <?php }?>
283
  <?php if ( $cf_type=='noapi' ) {?>
284
  <h2>No API Fallback</h2>
285
  <?php }?>
286
  <?php } else { ?>
287
  <h2 style="font-size: 17px;">Add ClickFunnels Page to Your Blog</h2>
288
  <?php } ?>
289
  <h4>You haven't setup your API settings. <a href="../wp-admin/edit.php?post_type=clickfunnels&page=cf_api">Click here to setup now.</a></h4>
290
  <iframe src="<?php echo $cf_iframe_url; ?>" style="width: 1280px;height: 750px;-ms-zoom: 0.20; -moz-transform: scale(0.20); -moz-transform-origin: 0 0; -o-transform: scale(0.20); -o-transform-origin: 0 0; -webkit-transform: scale(0.20); -webkit-transform-origin: 0 0;" frameborder="0" id="previewiframe"></iframe>
291
  </div> -->
292
  <input type="hidden" name="post_title" size="30" tabindex="1" value="ClickFunnels Page" id="title" autocomplete="off" />
293
  <input type="hidden" name="post_status" size="30" tabindex="1" value="publish" id="title" autocomplete="off" />
294
  <div class="bootstrap-wp" style=" border-bottom-left-radius: 5px;border-bottom-right-radius: 5px;"><?php wp_nonce_field( "save_clickfunnel", "clickfunnel_nonce" ); ?>
295
  <div class="row-fluid form-horizontal">
296
  <br>
297
  <a style="float: right;position:relative;z-index: 999999;margin-right: 8px" class="btn pageSettings">Page Settings</a>
298
 
299
  <div class="control-group" style="margin-left: -10px; margin-bottom: 20px !important">
300
  <div data-target="cf_type" class="btn-group multichoice cf_header">
301
  <a data-value="p" class="btn <?php if ( $cf_type=='p' || $cf_type=='') {?> active btn-selected<?php }?>">Regular Page</a>
302
  <a data-value="hp" class="btn <?php if ( $cf_type=='hp' ) {?> active btn-selected<?php }?>">Home Page</a>
303
  <a data-value="np" class="btn <?php if ( $cf_type=='np' ) {?> active btn-selected<?php }?>">404 Page</a>
304
  <!-- <a data-value="shortcode" class="btn <?php if ( $cf_type=='shortcode' ) {?> active btn-selected<?php }?>">Shortcode</a> -->
305
  </div>
306
  <input type="hidden" id="cf_type" name="cf_type"/>
307
  </div>
308
  <div class="control-group cf_uses_api" style="">
309
  <label class="control-label" for="cf_thefunnel"> Choose Funnel <i class="fa fa-filter"></i></label>
310
  <div class="controls">
311
  <select class="input-xlarge" id="cf_thefunnel" name="cf_thefunnel_backup">
312
  <?php if ( empty( $cf_funnels ) ) { ?>
313
  <option value="0">No Funnels Found</option>
314
  <?php }
315
  else {
316
  foreach ( $cf_funnels as $key=>$funnel ) { ?>
317
  <option value="<?php echo $funnel->id;?>" <?php if ( $cf_thefunnel == $funnel->id ) { echo "selected"; } ?>><?php echo $funnel->name;?></option>
318
  <?php
319
  }
320
  } ?>
321
  </select>
322
  </div>
323
  </div>
324
  <div id="usingSplitTests" style="display: none">
325
  Using split tests
326
  </div>
327
  <div class="control-group cf_uses_api">
328
  <label class="control-label" for="cf_thepage"> Choose Page <i class="fa fa-file-o"></i></label>
329
  <div class="controls">
330
  <select class="input-xlarge" id="cf_thepage" name="cf_thepage" style="float: left;">
331
  <?php if ( empty( $cf_funnels_pages ) ) { ?>
332
  <option value="0">No Pages Found</option>
333
  <?php }
334
  else {
335
  foreach ( $cf_funnels_pages->funnel_steps as $key => $funnel ) { ?>
336
  <option value="<?php echo $funnel->position;?>" <?php if ( $cf_thepage == $funnel->position ) { echo "selected"; } ?>><?php echo $funnel->name;?></option>
337
  <?php
338
  }
339
  }
340
  ?>
341
  </select>
342
  <i class="fa fa-spinner fa-spin" id="loading"></i>
343
  </div>
344
  <div id="noPageWarning" style="font-size: 11px; margin-left: 160px;margin-top: -33px;float: left;padding-top: 10px;display: none;width: 100%; clear: both"><em>No compatible pages found for this funnel.</em></div>
345
  </div>
346
  <div class="control-group cf_no_api" >
347
  <label class="control-label" for="cf_iframe_check"> ClickFunnels URL <i class="fa fa-globe"></i></label>
348
  <div class="controls">
349
  <input type="text" class="input-xlarge" id="iframeURL" style="height: 30px;" value="<?php echo $cf_iframe_url; ?>" name="cf_iframe_url" />
350
  </div>
351
  </div>
352
  <div class="control-group cf_no_api" >
353
  <label class="control-label" for="cf_iframe_check"> Website Title <i class="fa fa-globe"></i></label>
354
  <div class="controls">
355
  <input type="text" class="input-xlarge" id="seoTitle" style="height: 30px;" value="<?php echo $cf_seo_title; ?>" name="cf_seo_title" />
356
  </div>
357
  </div>
358
  <div class="control-group cf_no_api" >
359
  <label class="control-label" for="cf_iframe_check"> Description <i class="fa fa-globe"></i></label>
360
  <div class="controls">
361
  <input type="text" class="input-xlarge" id="seoDesc" style="height: 30px;" value="<?php echo $cf_seo_desc; ?>" name="cf_seo_desc" />
362
  </div>
363
  </div>
364
  <div class="control-group cf_no_api" >
365
  <label class="control-label" for="cf_iframe_check"> Social Image URL <i class="fa fa-globe"></i></label>
366
  <div class="controls">
367
  <input type="text" class="input-xlarge" id="seosocial" style="height: 30px;" value="<?php echo $cf_seo_image; ?>" name="cf_seo_image" />
368
  </div>
369
  </div>
370
  <input type="text" style="display: none" class="input-xlarge" style="height: 30px;" value="<?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/<?php echo $cf_slug; ?>" name="cf_page_url" />
371
 
372
 
373
  <div class="control-group cf_uses_api" >
374
  <label class="control-label" for="cf_iframe_check"> Cookie Split Tests <i class="fa fa-bar-chart"></i></label>
375
  <div class="controls">
376
  <select class="input-xlarge" id="cf_iframe_check" name="cf_iframe_check" style="float: left;">
377
  <option value="off">Show random cookied version</option>
378
  <option value="on" <?php if( $cf_iframe_check == 'on') { ?>selected <?php } ?>>Show page in iframe (don't cookie)</option>
379
  </select>
380
  <!-- <small style="float: left;font-size: 11px;padding: 5px;margin-left: 6px"><a href="<?php echo admin_url( 'edit.php?post_type=clickfunnels&page=clickfunnels_support' );?>">What is this?</a></small> -->
381
  </div>
382
  </div>
383
  <?php if ( !empty( $_GET['action'] ) ) { ?>
384
  <div class="control-group cf_uses_api" style="margin-bottom: 20px">
385
  <label class="control-label" for="cf_iframe_check"> Meta Data <i class="fa fa-info"></i></label>
386
  <a href="#" style="margin-left: 20px;margin-top: 5px;display: block;float: left;display: none" id="showupdatemetalink"><i class="fa fa-refresh"></i> Meta Data is Out Dated -- Click to Update</a>
387
  <span style="margin-left: 20px;margin-top: 5px;display: block;float: left" id="metaalreadyupdated"><i class="fa fa-check"></i> Meta Data is Up to Date</span>
388
  </div>
389
  <?php } else { ?>
390
  <div class="control-group cf_uses_api" style="margin-bottom: 20px">
391
  <label class="control-label" for="cf_iframe_check"> Meta Data <i class="fa fa-info"></i></label>
392
 
393
  <span style="margin-left: 20px;margin-top: 5px;display: block;float: left" id="metaalreadyupdated"><i class="fa fa-check"></i> Meta Data is Up to Date</span>
394
  </div>
395
  <?php } ?>
396
  <?php if ( $cf_type!="p" ) $display ="display:none"; else $display="";?>
397
  <div class="cf_url control-group" style="<?php echo $display;?>" >
398
  <label class="control-label" for="cf_slug"> Custom URL <i class="fa fa-globe"></i></label>
399
  <div id="cf-wp-path" class="controls ">
400
  <div class="input-prepend">
401
  <span class="add-on" style="font-size: 13px;padding: 4px 10px; background: #ECEEEF; color: #777; text-shadow: none; border: 1px solid #ccc"><?php echo get_option( 'clickfunnels_siteURL' ) ; ?>/</span><input style="height:28px;width: 150px !important" type="textbox" value="<?php if ( isset( $cf_slug ) ) echo $cf_slug;?>" name="cf_slug" id="cf_slug" class="input-xlarge">
402
  <div style="color:red; display:none" id="cf_invalid_slug" style="width: 90%" >You must enter an URL</div>
403
  </div>
404
  </div>
405
  </div>
406
 
407
 
408
 
409
  <style>
410
  #hiddenStuff {display: none}
411
  </style>
412
  <div class="control-group" id="hiddenStuff" <?php if ( !empty( $_GET['cf'] ) ) { ?>style="display: block" <?php } ?>>
413
  <div class="controls">
414
  <strong>Funnel ID: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $thepage[0]; ?>" /> <br></strong>
415
  <strong>Page Key: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $thepage[1]; ?>" /><br></strong>
416
  <strong>Page ID: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $thepage[2]; ?>" /><br></strong>
417
  <strong>Funnel Step ID: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $thepage[3]; ?>" /><br></strong>
418
  <strong>Saved Meta: <input type="text" style="font-weight: normal;width: 300px;" id="oldmeta" value="<?php echo $thepage[4]; ?>" /><br></strong>
419
  <strong>JS Meta: <input type="text" style="font-weight: normal;width: 300px;" id="jsmeta" value="" /><br></strong>
420
  <strong>Post ID: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $thepage[5]; ?>" /><br></strong>
421
  <strong>Page Name: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $thepage[6]; ?>" /><br></strong>
422
  <strong>Use iframe?: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $cf_iframe_check; ?>" /><br></strong>
423
  <strong>Iframe URL: <input type="text" style="font-weight: normal;width: 300px;" value="<?php echo $cf_iframe_url; ?>" /><br></strong>
424
  <textarea name="cf_thefunnel" id="cf_data" style="width: 400px;height: 300px; font-size: 13px;"><?php echo $savedData; ?></textarea>
425
  </div>
426
  </div>
427
 
428
  <!-- <div style="background: #fafafa;border-top: 1px solid #eee;padding: 10px;text-align: center;margin: 10px 0px;margin-bottom: 20px" >
429
  <strong style="color: #777"> Running split tests or custom code on your page? Check here
430
  <input type="checkbox" id="useIframe" value="on" <?php if( $cf_iframe_check == 'on') { ?>checked <?php } ?> style="margin: 0 3px;width: 18px;height: 18px;" name="cf_iframe_check"> to activate settings.</strong>
431
  <small style="display: block;font-size: 11px;opacity: .5"><a href="<?php echo admin_url( 'edit.php?post_type=clickfunnels&page=clickfunnels_support' );?>">Why do you have to activate settings?</a></small>
432
  <input type="text" style="display: none;" id="iframeURL" value="<?php echo $cf_iframe_url; ?>" name="cf_iframe_url" />
433
  </div> -->
434
  <!-- <div class="p_text helpinfo" <?php if ( $cf_type!='p' ) {?> style="display: none" <?php }?>>
435
  <h4><i class="fa fa-question-circle"></i> Set as a Page</h4>
436
  <p>Choose any ClickFunnels page to be shown using a custom URL just select any funnel to refresh the list of pages. Create a custom URL and hit 'Save/Publish' to start sending traffic. <a href="<?php echo admin_url( 'edit.php?post_type=clickfunnels&page=clickfunnels_support' );?>">Need more help?</a> </p>
437
  <p style="font-size: 11px;opacity: .7;"><i class="fa fa-exclamation-triangle"></i> If you change META data in editor, refresh page and hit 'Save Changes' to update meta data.</p>
438
  </div>
439
  <div class="hp_text helpinfo" <?php if ( $cf_type!='hp' ) {?> style="display: none" <?php }?>>
440
  <h4><i class="fa fa-question-circle"></i> Set as Home Page</h4>
441
  <p> Replace your homepage with a specific ClickFunnels page. You can show any page that you want, this will replace any other homepage settings you may have.</p>
442
  <p style="font-size: 11px;opacity: .7"><i class="fa fa-exclamation-triangle"></i> If you change META data in editor, refresh page and hit 'Save Changes' to update meta data.</p>
443
  </div>
444
  <div class="np_text helpinfo" <?php if ( $cf_type!='np' ) {?> style="display: none" <?php }?>>
445
  <h4><i class="fa fa-question-circle"></i> Set as 404 Page</h4>
446
  <p> Show a specific page to be shown on any "Page not Found" such as a misspelled URL or a deleted blog post. Very good place for a squeeze page to get the most out of your traffic.</p>
447
  <p style="font-size: 11px;opacity: .7"><i class="fa fa-exclamation-triangle"></i> If you change META data in editor, refresh page and hit 'Save Changes' to update meta data.</p>
448
  </div> -->
449
  <div class="row-fluid" id="apiFooter">
450
  <?php if ( get_option( 'clickfunnels_api_email' ) == "" || get_option( 'clickfunnels_api_auth' ) == "" ) { ?>
451
  <button id="publish" name="publish" disabled class="button button-primary " style="float: right; ">
452
  <?php if ( !empty( $_GET['action'] ) ) { echo "<i class='fa fa-save'></i> Save Changes"; } else { echo "<i class='fa fa-save'></i> Publish Page"; } ?>
453
  </button>
454
  <?php } else { ?>
455
  <button id="publish" name="publish" class="button button-primary " style="float: right; ">
456
  <?php if ( !empty( $_GET['action'] ) ) { echo "<i class='fa fa-save'></i> Save Changes"; } else { echo "<i class='fa fa-save'></i> Publish Page"; } ?>
457
  </button>
458
  <?php } ?>
459
  <div id="saving" style="float: right;display: none; padding-right: 10px;opacity: .6;padding-top: 5px;">
460
  <i class="fa fa-spinner fa-spin"></i>
461
  <span>Saving...</span>
462
  </div>
463
  <a class="button button-secondary" style="float: left; margin-right: 10px" type="submit" href="<?php echo admin_url( 'edit.php?post_type=clickfunnels' );?>"><i class="fa fa-file-text-o"></i> Pages</a>
464
  <a class="button button-secondary" style="float: left; margin-right: 10px" type="submit" href="<?php echo admin_url( 'edit.php?post_type=clickfunnels&page=cf_api' );?>"><i class="fa fa-cog"></i> Settings</a>
465
  <a href="<?php echo admin_url( 'edit.php?post_type=clickfunnels&page=clickfunnels_support' );?>" class="button button-default" style="float: left;margin-right: 10px"><i class="fa fa-life-ring"></i> Support</a>
466
  <?php if ( !empty( $delete_link ) ) {?>
467
  <a class="button button-secondary" id="delete" type="submit" href="<?php echo $delete_link;?>"><i class="fa fa-trash"></i> Delete Page</a>
468
  <?php }?>
469
  </div>
470
  </div>
471
  </div>
472
  (function($) {
473
  setTimeout(function() {
474
  $('#cf_thepage').trigger( "change" );
475
  }, 1500);
476
  })(jQuery);
477
+ <style>.hndle {display: none !important}</style>
478
  if(!get_option( 'clickfunnels_api_email')) {
479
  update_option( 'clickfunnels_api_email', '');
480
  }
481
  if(!get_option( 'clickfunnels_api_auth')) {
482
  update_option( 'clickfunnels_api_auth', '');
483
  }
484
  if(!get_option( 'clickfunnels_siteURL')) {
485
  update_option( 'clickfunnels_siteURL', '');
486
  }
487
  if(!get_option( 'clickfunnels_404Redirect')) {
488
  update_option( 'clickfunnels_404Redirect', '');
489
  }
490
  if(!get_option( 'clickfunnels_agency_group_tag')) {
491
  update_option( 'clickfunnels_agency_group_tag', '');
492
  }
493
  if(!get_option( 'clickfunnels_agency_api_details')) {
494
  update_option( 'clickfunnels_agency_api_details', '');
495
  }
496
  if(!get_option( 'clickfunnels_agency_reset_data')) {
497
  update_option( 'clickfunnels_agency_reset_data', '');
498
  }
499
  if(!get_option( 'clickfunnels_agency_hide_settings')) {
500
  update_option( 'clickfunnels_agency_hide_settings', '');
501
  }
502
  $cf_thefunnel = get_post_meta( $_GET['post'], "cf_thefunnel", true );
503
  $cf_thepage = get_post_meta( $_GET['post'], "cf_thepage", true );
504
  $cf_iframe_check = get_post_meta( $_GET['post'], "cf_iframe_check", true );
505
  $cf_iframe_url = get_post_meta( $_GET['post'], "cf_iframe_url", true );
506
  $cf_seo_title = get_post_meta( $_GET['post'], "cf_seo_title", true );
507
  $cf_seo_desc = get_post_meta( $_GET['post'], "cf_seo_desc", true );
508
  $cf_seo_image = get_post_meta( $_GET['post'], "cf_seo_image", true );
509
  $cf_page_url = get_post_meta( $_GET['post'], "cf_page_url", true );
510
  $cf_favicon = get_post_meta( $_GET['post'], "cf_favicon", true );
511
  $cf_author = get_post_meta( $_GET['post'], "cf_author", true );
512
  $cf_keywords = get_post_meta( $_GET['post'], "cf_keywords", true );
513
  $cf_head_tracking = get_post_meta( $_GET['post'], "cf_head_tracking", true );
514
  $cf_footer_tracking = get_post_meta( $_GET['post'], "cf_footer_tracking", true );
515
  $cf_wptracking_code = get_post_meta( $_GET['post'], "cf_wptracking_code", true );
516
  $cf_favicon_choice = get_post_meta( $_GET['post'], "cf_favicon_choice", true );
517
  $cf_slug= get_post_meta( $_GET['post'], 'cf_slug', true );
518
  if ( !isset( $cf_page['page_id'] ) || $cf_page['page_id'] < 10 ) {
519
  $thepage = explode( "{#}", $cf_page );
520
  $savedData = $cf_page;
521
  }
522
  else {
523
  $thepage = explode( "{#}", $cf_page['page_id'] );
524
  $savedData = $cf_page['page_id'];
525
  }
526
  $cf_options = get_option( "cf_options" );
527
  // populate funnels option field
528
  if ( get_option( 'clickfunnels_api_email' ) == "" || get_option( 'clickfunnels_api_auth' ) == "" ) {
529
  }
530
  else {
531
  if ($cf_page != "") {
532
  $response = wp_remote_get( 'https://api.clickfunnels.com/funnels/'.$cf_thefunnel.'.json?email='.get_option( 'clickfunnels_api_email' ).'&auth_token='.get_option( 'clickfunnels_api_auth' ));
533
  if( is_array($response) ) {
534
  $json = $response['body']; // use the content
535
  }
536
  $cf_funnels_pages = json_decode( $json );
537
  }
538
  }
539
  jQuery(document).ready(function(){
540
  jQuery('.draft').hide();
541
  console.log("%cClickFunnels WordPress Plugin", "background: #0166AE; color: white; font-size: 23px");
542
  console.log("%cEditing anything inside the console is for developers only. Do not paste in any code given to you by anyone. Use with caution. Visit for support: https://support.clickfunnels.com/", "color: #888; font-size: 16px");
543
  // Set Correct Options
544
  var thenewdata = jQuery('#cf_thefunnel').val();
545
  var thenewdata = thenewdata.split('{#}');
546
  var specificFunnel = 'https://api.clickfunnels.com/funnels/'+thenewdata[0]+'.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
547
  jQuery('#cf_thepage').find('option').remove().end();
548
  // alert(specificFunnel);
549
  // alert(thenewdata);
550
  jQuery('#loading').fadeIn();
551
  var favicon = 'https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png';
552
  <?php if ( empty( $_GET['action'] ) ) { ?>
553
  jQuery('#cf_thefunnel').prepend('<option value="" disabled selected>Select a Funnel</option>');
554
  <?php } ?>
555
  jQuery.getJSON(specificFunnel, function(data) {
556
  setTimeout(function() {
557
  jQuery('#loading').fadeOut();
558
  }, 2000);
559
  var is_selected = "";
560
  if (data.favicon){
561
  favicon = data.favicon;
562
  }
563
  else {
564
  favicon = 'https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png';
565
  }
566
  jQuery.each(data.funnel_steps, function() {
567
  if (this.pages != ''){
568
  if(this.pages[0].id == "<?php echo $thepage[2] ?>" && this.pages != '' ) {
569
  is_selected = "selected";
570
  jQuery('#cf_seo_tags').val(this.pages[0].metatags);
571
  } else {
572
  is_selected = "";
573
  }
574
  if ( this.wp_friendly == true && this.pages != '' ) {
575
  jQuery('#iframeURL').val(this.pages[0].published_url);
576
  if (data.favicon){
577
  jQuery('#cf_favicon').val(favicon);
578
  jQuery('#faviconPreview').attr('src', favicon);
579
  } else {
580
  jQuery('#cf_favicon').val('https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
581
  jQuery('#faviconPreview').attr('src', 'https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
582
  }
583
  // Check if has split tests
584
  var splittestkeys = 'none';
585
  if (this.pages.length == 2) {
586
  splittestkeys = '2';
587
  }
588
  else if (this.pages.length == 3) {
589
  splittestkeys = '3';
590
  }
591
  // Ping All Pages in Funnel (to refresh split tests / api)
592
  ping('https://api.clickfunnels.com/s3_proxy/'+this.pages[0].key+'?preview=true');
593
  pageKey = this.pages[0].key;
594
  jQuery('#headTracking').val(this.pages[0].head_tag);
595
  jQuery('#footerTracking').val(this.pages[0].body_tag);
596
  if(this.pages[0].head_tag) { head_tag = encodeURIComponent(this.pages[0].head_tag); } else { head_tag = ''; }
597
  if(this.pages[0].body_tag) { body_tag = encodeURIComponent(this.pages[0].body_tag); } else { body_tag = ''; }
598
  jQuery('#cf_thepage').append('<option value="' + pageKey + '{#}' + this.pages[0].id + '{#}' + this.pages[0].funnel_step_id + '{#}' + encodeURI(this.pages[0].metatags) + '{#}<?php echo get_the_ID(); ?>{#}' + this.name +'{#}'+this.pages[0].published_url+'{#}'+favicon+'{#}'+head_tag+'{#}'+body_tag+'{#}'+data.name+'{#}'+splittestkeys+'" '+is_selected+'>'+ this.name +'</option>');
599
  }
600
  }
601
  });
602
  }).done(function() {
603
  jQuery('#loading').fadeOut();
604
  var savedMeta = jQuery('#cf_thepage').val();
605
  if(savedMeta != undefined || savedMeta != null){
606
  savedMeta = savedMeta.split('{#}');
607
  <?php if ( !empty( $_GET['action'] ) ) { ?>
608
  jQuery('#cf_thepage').trigger('change');
609
  <?php } ?>
610
  }
611
  })
612
  .fail(function(jqXHR) {
613
  jQuery('#loading').fadeOut();
614
  jQuery('.badAPI').show();
615
  })
616
  .always(function() {
617
  jQuery('#loading').fadeOut();
618
  });
619
  // Change Funnel Populate Dropdown
620
  jQuery( '#cf_thefunnel' ).change(function() {
621
  jQuery('.choosePageBox').fadeIn();
622
  jQuery('.cftablink').removeClass('disabledLink');
623
  jQuery('#publish').removeClass('disabledLink');
624
  jQuery('#loading').fadeIn();
625
  var thenewdata = jQuery(this).val();
626
  var thenewdata = thenewdata.split('{#}');
627
  var totalPages = 0;
628
  var specificFunnel = 'https://api.clickfunnels.com/funnels/'+thenewdata[0]+'.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
629
  // alert(specificFunnel);
630
  jQuery('#cf_thepage').find('option').remove().end();
631
  jQuery.getJSON(specificFunnel, function(data) {
632
  setTimeout(function() {
633
  jQuery('#loading').fadeOut();
634
  }, 2000);
635
  if (data.favicon){
636
  favicon = data.favicon;
637
  }
638
  else {
639
  favicon = 'https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png';
640
  }
641
  // alert( specificFunnel);
642
  jQuery.each(data.funnel_steps, function() {
643
  if( this.wp_friendly == true && this.pages != '' ) {
644
  // Ping All Pages in Funnel (to refresh split tests / api)
645
  ping('https://api.clickfunnels.com/s3_proxy/'+this.pages[0].key+'?preview=true');
646
  // Check if has split tests
647
  var splittestkeys = 'none';
648
  if (this.pages.length == 2) {
649
  splittestkeys = '2';
650
  }
651
  else if (this.pages.length == 3) {
652
  splittestkeys = '3';
653
  }
654
  jQuery('#iframeURL').val(this.pages[0].published_url);
655
  jQuery('#cf_funnelwide_tracking_head').val(favicon);
656
  if (data.favicon){
657
  jQuery('#cf_favicon').val(favicon);
658
  jQuery('#faviconPreview').attr('src', favicon);
659
  } else {
660
  jQuery('#cf_favicon').val('https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
661
  jQuery('#faviconPreview').attr('src', 'https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
662
  }
663
  // Tracking Codes
664
  jQuery('#headTracking').val(this.pages[0].head_tag);
665
  jQuery('#footerTracking').val(this.pages[0].body_tag);
666
  jQuery('#fw_headerTracking').val(thenewdata[1]);
667
  jQuery('#fw_footerTracking').val(thenewdata[2]);
668
  if(this.pages[0].head_tag) { head_tag = encodeURIComponent(this.pages[0].head_tag); } else { head_tag = ''; }
669
  if(this.pages[0].body_tag) { body_tag = encodeURIComponent(this.pages[0].body_tag); } else { body_tag = ''; }
670
  jQuery('#cf_thepage').append('<option value="' + this.pages[0].key + '{#}' + this.pages[0].id + '{#}' + this.pages[0].funnel_step_id + '{#}' + encodeURI(this.pages[0].metatags) + '{#}<?php echo get_the_ID(); ?>{#}' + this.name +'{#}'+this.pages[0].published_url+'{#}'+favicon+'{#}'+head_tag+'{#}'+body_tag+'{#}'+data.name+'{#}'+splittestkeys+'">'+ this.name +'</option>');
671
  totalPages += 1;
672
  }
673
  });
674
  }).done(function() {
675
  jQuery('#loading').fadeOut();
676
  var savedMeta = jQuery('#cf_thepage').val();
677
  jQuery('#cf_thepage').trigger('change');
678
  if (totalPages == 0) {
679
  jQuery('#cf_thepage').hide();
680
  jQuery('#runningSplitTests').hide();
681
  jQuery('#noPageWarning').fadeIn();
682
  }
683
  else {
684
  jQuery('#noPageWarning').hide();
685
  jQuery('#cf_thepage').fadeIn();
686
  }
687
  var theposition = jQuery('#cf_thepage').val();
688
  var thefunnel = jQuery('#cf_thefunnel').val();
689
  thefunnel = thefunnel.split('{#}');
690
  jQuery('#cf_data').val(thefunnel[0]+'{#}'+theposition);
691
  var myString = thefunnel[0]+'{#}'+theposition;
692
  var arr = myString.split('{#}');
693
  // jQuery('#loadPageforUpdate').attr('src', 'https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true');
694
  var do_ping = function() {
695
  ping('https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true').then(function(delta) {}).catch(function(error) {});
696
  };
697
  do_ping();
698
  })
699
  .fail(function() {
700
  jQuery('#loading').fadeOut();
701
  })
702
  .always(function() {
703
  jQuery('#loading').fadeOut();
704
  });
705
  });
706
  var request_image = function(url) {
707
  return new Promise(function(resolve, reject) {
708
  var img = new Image();
709
  img.onload = function() { resolve(img); };
710
  img.onerror = function() { reject(url); };
711
  img.src = url + '?random-no-cache=' + Math.floor((1 + Math.random()) * 0x10000).toString(16);
712
  });
713
  };
714
  /**
715
  * Pings a url.
716
  * @param {String} url
717
  * @return {Promise} promise that resolves to a ping (ms, float).
718
  */
719
  var ping = function(url) {
720
  return new Promise(function(resolve, reject) {
721
  var start = (new Date()).getTime();
722
  var response = function() {
723
  var delta = ((new Date()).getTime() - start);
724
  // HACK: Use a fudge factor to correct the ping for HTTP bulk.
725
  delta /= 4;
726
  resolve(delta);
727
  };
728
  request_image(url).then(response).catch(response);
729
  // Set a timeout for max-pings, 5s.
730
  setTimeout(function() { reject(Error('Timeout')); }, 5000);
731
  });
732
  };
733
  function replaceText(inputText, tagName, tagReplace) {
734
  var regExp = new RegExp('\\[' + tagName+ '\\]([^\\[]*)\\[\/' + tagName + '\\]', 'g');
735
  return inputText.replace(regExp, tagReplace);
736
  }
737
  // Select New Page
738
  jQuery( '#cf_thepage' ).change(function() {
739
  jQuery('#loading').fadeOut();
740
  var thefunnel = jQuery('#cf_thefunnel').val();
741
  thefunnel = thefunnel.split('{#}');
742
  var theposition = jQuery(this).val();
743
  jQuery('#cf_data').val(thefunnel[0]+'{#}'+theposition);
744
  if(theposition != undefined || theposition != null){
745
  var myString = thefunnel[0]+'{#}'+theposition;
746
  var arr = myString.split('{#}');
747
  var arr2 = theposition.split('{#}');
748
  jQuery('#iframeURL').val(arr2[6]);
749
  <?php if ($cf_favicon_choice == '') { ?>
750
  if (arr2[7] !== ''){
751
  jQuery('#cf_favicon').val(arr2[7]);
752
  jQuery('#faviconPreview').attr('src', arr2[7]);
753
  } else {
754
  jQuery('#cf_favicon').val('https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
755
  jQuery('#faviconPreview').attr('src', 'https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
756
  }
757
  <?php } else { ?>
758
  if (arr2[7] !== ''){
759
  jQuery('#cf_favicon').val(arr2[7]);
760
  jQuery('#faviconPreview').hide();
761
  jQuery('#metaPreview strong').hide();
762
  } else {
763
  jQuery('#cf_favicon').val('https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png');
764
  jQuery('#faviconPreview').hide();
765
  jQuery('#metaPreview strong').hide();
766
  }
767
  <?php } ?>
768
  // Tracking Code
769
  jQuery('#headTracking').val(decodeURIComponent(arr2[8]));
770
  jQuery('#footerTracking').val(decodeURIComponent(arr2[9]));
771
  var thenewdata = jQuery('#cf_thefunnel').val();
772
  var thenewdata = thenewdata.split('{#}');
773
  jQuery('#fw_headTracking').val(thenewdata[1]);
774
  jQuery('#fw_footerTracking').val(thenewdata[2]);
775
  // Check if has split tests
776
  if (arr2[11] == 2) {
777
  var splittestkeys = '1 Active Split Test';
778
  jQuery('#runningSplitTests').show();
779
  jQuery('#runningSplitTests').html('<em style="display: block"><i class="fa fa-bar-chart" style="margin-right: 2px"></i> '+splittestkeys+'</em>');
780
  }
781
  else if (arr2[11] == 3) {
782
  var splittestkeys = '2 Active Split Tests';
783
  jQuery('#runningSplitTests').show();
784
  jQuery('#runningSplitTests').html('<em style="display: block"><i class="fa fa-bar-chart" style="margin-right: 2px"></i> '+splittestkeys+'</em>');
785
  }
786
  else {
787
  jQuery('#runningSplitTests').hide();
788
  }
789
  var myStr = arr2[3];
790
  // Browser title
791
  var subStr = myStr.match("%3Ctitle%3E(.*)%3C/title%3E");
792
  jQuery('.seoTitle').val(subStr[1].replace(/%20/g, ' '));
793
  jQuery('#metaPreview h3').text(subStr[1].replace(/%20/g, ' '));
794
  jQuery('#opengraphPreview h3').text(subStr[1].replace(/%20/g, ' '));
795
  var authorname = myStr.match('author%22%20content=%22(.*)%22%3E%3');
796
  jQuery('#seoAuthor').val(authorname[1].replace(/%20/g, ' '));
797
  jQuery('#theAuthor').html('| '+authorname[1].replace(/%20/g, ' '));
798
  var keywordsmeta = myStr.match('keywords%22%20content=%22(.*)%22%3E%3');
799
  var keywords = keywordsmeta[1].replace(/%20/g, ' ').split('%');
800
  jQuery('#seoKeywords').val(keywords[0]);
801
  // SEO Desc
802
  var subStr = myStr.match("description%22%20content=%22(.*)%22%3E%3Cmeta%20class=%22metaTagTop%22%20name=%22keywo");
803
  jQuery('.seoDesc').val(subStr[1].replace(/%20/g, ' '));
804
  jQuery('#metaPreview p').text(subStr[1].replace(/%20/g, ' '));
805
  jQuery('#opengraphPreview p').text(subStr[1].replace(/%20/g, ' '));
806
  // SEO Share Image
807
  var subStr = myStr.match("rty=%22og:image%22%20content=%22(.*)%22%20id=%22social-image%22%3E");
808
  jQuery('#seosocial').val(subStr[1]);
809
  if (subStr[1] != ''){
810
  jQuery('#seosocialimage').show();
811
  jQuery('#seosocialimage').attr('src', subStr[1]);
812
  } else {
813
  jQuery('#seosocialimage').hide();
814
  }
815
  ping('https://api.clickfunnels.com/s3_proxy/'+arr[1]+'?preview=true');
816
  <?php if ( !empty( $_GET['updatemeta']) ) { ?>
817
  setTimeout(function() {
818
  jQuery('#publish').trigger('click');
819
  }, 4000);
820
  <?php } ?>
821
  }
822
  });
823
  // Savings
824
  jQuery('#publish').click(function() {
825
  if (jQuery(this).hasClass('disabledLink')=== true) {
826
  }
827
  else {
828
  jQuery('#saving').fadeIn();
829
  if (jQuery('#cf_slug').val() == '' && jQuery('.cf_header').val() == 'p') {
830
  jQuery('.selectapagelink').trigger('click');
831
  jQuery('#customurlError').fadeIn();
832
  jQuery('#cf_slug').focus();
833
  jQuery('#saving').fadeOut();
834
  }
835
  else {
836
  saveNow = 'yes';
837
  jQuery('.used_slug').each(function () {
838
  if (jQuery(this).html() == jQuery('#cf_slug').val()) {
839
  jQuery('#customurlError_duplicate').fadeIn();
840
  jQuery('#saving').fadeOut();
841
  saveNow = 'no!';
842
  }
843
  });
844
  if (saveNow == 'yes') {
845
  jQuery('form').submit();
846
  }
847
  }
848
  }
849
  });
850
  jQuery('.showupdatemetalink').click(function() {
851
  jQuery('form').submit();
852
  });
853
  if (jQuery(this).hasClass('disabledLink')=== true) {
854
  }
855
  else {
856
  jQuery('.cftabs').hide();
857
  jQuery('.cftablink').removeClass('active');
858
  jQuery(this).addClass('active');
859
  var tab = jQuery(this).attr('data-tab');
860
  jQuery('#'+tab).show();
861
  }
862
  str = str.replace(/^\s+|\s+$/g, ''); // trim
863
  str = str.toLowerCase();
864
  // remove accents, swap ñ for n, etc
865
  var from = "àáäâèéëêìíïîòóöôùúüûñç·/_,:;";
866
  var to = "aaaaeeeeiiiioooouuuunc------";
867
  for (var i=0, l=from.length ; i<l ; i++) {
868
  str = str.replace(new RegExp(from.charAt(i), 'g'), to.charAt(i));
869
  }
870
  str = str.replace(/[^a-z0-9 -]/g, '') // remove invalid chars
871
  .replace(/\s+/g, '-') // collapse whitespace and replace by -
872
  .replace(/-+/g, '-'); // collapse dashes
873
  return str;
874
  {
875
  var myStr = jQuery(this).val()
876
  myStr=myStr.toLowerCase();
877
  myStr=myStr.replace(/\s/g , "-");
878
  jQuery('#cf_slug').val(myStr);
879
  slug = jQuery(this).val();
880
  customSlug = slug;
881
  customSlug = string_to_slug(customSlug);
882
  jQuery(this).val(customSlug);
883
  jQuery('.customSlugText').text(customSlug);
884
  newurl = jQuery('#cfslugurl').text();
885
  jQuery('#cfslugurl').attr('href', newurl);
886
  jQuery('#cf_page_url').val('<?php echo get_home_url(); ?>/'+myStr);
887
  jQuery('#customurlError').hide();
888
  jQuery('#customurlError_duplicate').hide();
889
  jQuery('#publish').removeClass('disabledLink');
890
  jQuery('.used_slug').each(function () {
891
  if (jQuery(this).html() == customSlug) {
892
  jQuery('#customurlError_duplicate').fadeIn();
893
  jQuery('#publish').addClass('disabledLink');
894
  }
895
  });
896
  if ('' == customSlug) {
897
  jQuery('#customurlError').fadeIn();
898
  jQuery('#publish').addClass('disabledLink');
899
  }
900
  });
901
  if (jQuery(this).val() == 'clickgate') {
902
  jQuery('.cf_url').hide();
903
  jQuery('.clickgateinfo').show();
904
  jQuery('#publish').removeClass('disabledLink');
905
  }
906
  else if (jQuery(this).val() == 'hp') {
907
  jQuery('.cf_url').hide();
908
  jQuery('#publish').removeClass('disabledLink');
909
  }
910
  else if (jQuery(this).val() == 'np') {
911
  jQuery('.cf_url').hide();
912
  jQuery('#publish').removeClass('disabledLink');
913
  }
914
  else {
915
  jQuery('.cf_url').show();
916
  jQuery('.clickgateinfo').hide();
917
  jQuery('#cf_slug').trigger('keyup');
918
  }
919
  });
920
  <?php
921
  // check all CF page slugs
922
  $posts = get_posts(array(
923
  'post_type' => 'clickfunnels',
924
  'post_status' => 'publish',
925
  'fields' => 'ids'
926
  )
927
  );
928
  foreach($posts as $p){
929
  $slug = get_post_meta($p,"cf_slug",true);
930
  if ($slug != $cf_slug) {
931
  echo "<li class='used_slug'>$slug</li>";
932
  }
933
  }
934
  foreach( get_posts('numberposts=-1') as $post ) {
935
  echo "<li class='used_slug'>$post->post_name</li>";
936
  }
937
  foreach( get_pages('numberposts=-1') as $post ) {
938
  echo "<li class='used_slug'>$post->post_name</li>";
939
  }
940
  ?>
941
  <?php if ( !empty( $_GET['updatemeta'] ) ) { ?>
942
  <?php $hideforUpdateMeta = 'display: none !important'; ?>
943
  <style>.bootstrap-wp, .copyrightInfo {display: none; }</style>
944
  <span style="margin: 10px;" class="compatCheck compatwarning">Updating Your Meta Data... <strong><i class="fa fa-spinner fa-spin"></i> Please wait just a moment.</strong></span>
945
  <input type="hidden" name="meta_redirect" value='yes'>
946
  <?php } else { ?>
947
  <h2>
948
  <?php
949
  if ( !empty( $_GET['action'] ) && $cf_funnels ) {
950
  $blankpage = 'no';
951
  foreach ( $cf_funnels as $key=>$funnel ) {
952
  if ( $cf_thefunnel == $funnel->id ) {
953
  $lengthofheadline = 40;
954
  if ( $cf_type=='hp' || $cf_type=='np' || $cf_type=='clickgate' ) { $lengthofheadline = 19; }
955
  if (strlen($thepage[6]) > $lengthofheadline) {
956
  echo '<i class="fa fa-edit" style="margin-right: 5px"></i> '.trim(substr($thepage[6],0,$lengthofheadline)).' ...';
957
  $check = '1';
958
  }
959
  else {
960
  if(strlen($thepage[6]) > $lengthofheadline) { echo '<i class="fa fa-edit" style="margin-right: 5px"></i> '.trim(substr($thepage[6],0,$lengthofheadline)).' ...'; }
961
  else { echo '<i class="fa fa-edit" style="margin-right: 5px"></i> '.$thepage[6];}
962
  $check = '1';
963
  }
964
  }
965
  else {
966
  $blankpage = 'yes';
967
  }
968
  }
969
  $cf_options = get_option( "cf_options" );
970
  $homeCheck = $cf_options['home'];
971
  $postid = get_the_ID();
972
  if ($cf_page == '' && $cf_type == '' && $blankpage = 'yes' && $homeCheck['post_id'] != $postid && $cf_thepage != '') {
973
  echo 'Requires Custom URL';
974
  }
975
  } else {
976
  echo '<i class="fa fa-plus-square" style="margin-right: 5px"></i> Add New Page';
977
  }
978
  ?>
979
  <?php if ($cf_type == 'clickgate') { ?>
980
  ClickGate Popup
981
  <?php } ?> -->
982
  </h2>
983
  <?php if ( !empty( $_GET['action'] ) ) { ?>
984
  <a style="margin-right: 0;margin-top: -33px;" href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>" target="_blank" class="editThisPage"><i class="fa fa-edit"></i> EDITOR</a>
985
  <a style="margin-right: 10px;margin-top: -33px;" href="https://www.clickfunnels.com/funnels/<?php echo $thepage[0]; ?>#<?php echo $thepage[3]; ?>" target="_blank" class="editThisPage"><i class="fa fa-filter"></i> FUNNEL</a>
986
  <a style="margin-right: 10px;margin-top: -33px;" href="<?php echo get_home_url() ; ?>/<?php echo $cf_slug; ?>" title="View Page" target="_blank" class="editThisPage"><i class="fa fa-search"></i> PREVIEW</a>
987
  <?php if ( $cf_type=='p' ) {?>
988
  <?php }?>
989
  <?php if ( $cf_type=='hp' ) {?>
990
  <span style="margin-right: 10px;margin-top: -33px;" class="editThisPage2"><i class="fa fa-home"></i> Set as Home Page</span>
991
  <?php }?>
992
  <?php if ( $cf_type=='np' ) {?>
993
  <span style="margin-right: 10px;margin-top: -33px;" class="editThisPage2"><i class="fa fa-exclamation-triangle"></i> Set as 404 Page</span>
994
  <?php }?>
995
  <?php if ( $cf_type=='clickgate' ) {?>
996
  <span style="margin-right: 10px;margin-top: -33px;" class="editThisPage2"><i class="fa fa-external-link"></i> Set as ClickGate</span>
997
  <?php }?>
998
  <?php }?>
999
  <h4>You haven't setup your API settings. <a href="../wp-admin/edit.php?post_type=clickfunnels&page=cf_api">Click here to setup now.</a></h4>
1000
  <?php if ( !empty( $_GET['updatemeta'] ) ) { ?>
1001
  <input type="hidden" name="meta_redirect" value='yes'>
1002
  <?php } ?>
1003
  <input type="hidden" name="post_title" size="30" tabindex="1" value="ClickFunnels Page" id="title" autocomplete="off" />
1004
  <input type="hidden" name="post_status" size="30" tabindex="1" value="publish" id="title" autocomplete="off" />
1005
  <div class="bootstrap-wp"><?php wp_nonce_field( "save_clickfunnel", "clickfunnel_nonce" ); ?>
1006
  <div id="app_sidebar">
1007
  <a href="#" data-tab="tab1" class="cftablink selectapagelink active">Select Page</a>
1008
  <a href="#" data-tab="tab2" class="cftablink <?php if ( empty( $_GET['action'] ) ) { echo 'disabledLink'; } ?>">Meta Data</a>
1009
  <a href="#" data-tab="tab4" class="cftablink <?php if ( empty( $_GET['action'] ) ) { echo 'disabledLink'; } ?>">Open Graph</a>
1010
  <a href="#" data-tab="tab6" class="cftablink <?php if ( empty( $_GET['action'] ) ) { echo 'disabledLink'; } ?>">Tracking Code</a>
1011
  <a href="#" data-tab="tab3" class="cftablink <?php if ( empty( $_GET['action'] ) ) { echo 'disabledLink'; } ?>">Settings</a>
1012
  </div>
1013
  <div id="app_main" class="col-sm-7 row-fluid form-horizontal">
1014
  <div id="tab6" class="cftabs" style="display: none">
1015
  <!-- Tracking Code -->
1016
  <h2>Tracking Code</h2>
1017
  <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> To edit your meta data settings <a target="_blank" href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>">click to open this page inside the editor</a> and edit meta data inside the settings panel.</em></p>
1018
  <hr style="margin-left: 51px">
1019
  <div class="control-group" >
1020
  <label class="control-label" for="cf_iframe_check"> WordPress Only Tracking Code </label>
1021
  <div class="controls">
1022
  <textarea class="input-xlarge wpfooterTracking" id="wpfooterTracking" style="height: 80px;" name="cf_wptracking_code"><?php echo $cf_wptracking_code; ?></textarea>
1023
  </div>
1024
  </div>
1025
  <hr style="margin-left: 51px">
1026
  <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> You can add your own custom tracking code for only this WordPress page, meaning your original page will not have this tracking code.</em></p>
1027
  <hr style="margin-left: 51px">
1028
  <div class="control-group" >
1029
  <label class="control-label" for="cf_iframe_check"> Header Tracking </label>
1030
  <div class="controls">
1031
  <textarea class="input-xlarge headTracking" id="headTracking" readonly="readonly"style="height: 80px;" name="cf_head_tracking"><?php echo $cf_head_tracking; ?></textarea>
1032
  </div>
1033
  </div>
1034
  <div class="control-group" >
1035
  <label class="control-label" for="cf_iframe_check"> Footer Tracking </label>
1036
  <div class="controls">
1037
  <textarea class="input-xlarge footerTracking" id="footerTracking" readonly="readonly"style="height: 80px;" name="cf_footer_tracking"><?php echo $cf_footer_tracking; ?></textarea>
1038
  </div>
1039
  </div>
1040
  <hr style="margin-left: 51px">
1041
  <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> Funnel wide tracking is set inside the Funnel Settings in the ClickFunnels app.</em></p>
1042
  <hr style="margin-left: 51px">
1043
  <div class="control-group" >
1044
  <label class="control-label" for="cf_iframe_check"> Funnel Wide Header Tracking </label>
1045
  <div class="controls">
1046
  <textarea class="input-xlarge fw_headTracking" id="fw_headTracking" readonly="readonly"style="height: 80px;" name="cf_head_tracking"><?php echo $cf_head_tracking; ?></textarea>
1047
  </div>
1048
  </div>
1049
  <div class="control-group" >
1050
  <label class="control-label" for="cf_iframe_check"> Funnel Wide Footer Tracking </label>
1051
  <div class="controls">
1052
  <textarea class="input-xlarge fw_footerTracking" id="fw_footerTracking" readonly="readonly"style="height: 80px;" name="cf_footer_tracking"><?php echo $cf_footer_tracking; ?></textarea>
1053
  </div>
1054
  </div>
1055
  </div>
1056
  <div id="tab1" class="cftabs">
1057
  <!-- Select a Page / Funnel -->
1058
  <h2>Select a Page</h2>
1059
  <div class="control-group cf_uses_api clearfix" style="">
1060
  <label class="control-label" for="cf_thefunnel"> Choose Funnel </label>
1061
  <div class="controls">
1062
  <select class="input-xlarge" id="cf_thefunnel" name="cf_thefunnel_backup">
1063
  <?php if ( empty( $cf_funnels ) ) { ?>
1064
  <option value="0">No Funnels Found</option>
1065
  <?php }
1066
  else {
1067
  // Agency Gate Check
1068
  $agency_group_tag = get_option('clickfunnels_agency_group_tag');
1069
  foreach ( $cf_funnels as $key=>$funnel ) {
1070
  if ($agency_group_tag != 'off') {
1071
  if ($funnel->group_tag || $funnel->group_tag != '') {
1072
  $group_tag = str_replace("'", '{replace}', $funnel->group_tag);
1073
  $group_tag = str_replace("\"", '{replace}', $funnel->group_tag);
1074
  if ($agency_group_tag == $group_tag) { ?>
1075
  <option value="<?php echo $funnel->id;?>{#}<?php echo htmlentities($funnel->head_tracking_code, ENT_QUOTES);?>{#}<?php echo htmlentities($funnel->body_tracking_code, ENT_QUOTES);?>" <?php if ( $cf_thefunnel == $funnel->id ) { echo "selected"; } ?>><?php echo $funnel->name;?></option>
1076
  <?php }
1077
  } else {
1078
  if ($agency_group_tag == 'ungrouped') { ?>
1079
  <option value="<?php echo $funnel->id;?>{#}<?php echo htmlentities($funnel->head_tracking_code, ENT_QUOTES);?>{#}<?php echo htmlentities($funnel->body_tracking_code, ENT_QUOTES);?>" <?php if ( $cf_thefunnel == $funnel->id ) { echo "selected"; } ?>><?php echo $funnel->name;?></option>
1080
  <?php }
1081
  }
1082
  }
1083
  else { ?>
1084
  <option value="<?php echo $funnel->id;?>{#}<?php echo htmlentities($funnel->head_tracking_code, ENT_QUOTES);?>{#}<?php echo htmlentities($funnel->body_tracking_code, ENT_QUOTES);?>" <?php if ( $cf_thefunnel == $funnel->id ) { echo "selected"; } ?>><?php echo $funnel->name;?></option>
1085
  <?php }
1086
  }
1087
  } ?>
1088
  </select>
1089
  </div>
1090
  </div>
1091
  <div class="control-group choosePageBox clearfix" style="<?php if ( empty( $_GET['action'] ) ) { echo "display: none"; } ?>">
1092
  <label class="control-label" for="cf_thepage">
1093
  Choose Page <span id="loading"><i class="fa fa-spinner"></i> <em style="margin-left: 5px;font-size: 11px;">Loading Pages...</em></span>
1094
  <div id="runningSplitTests" style="font-size: 11px;opacity: .8;float: right;padding-top: 5px;color: #555;margin-right: 26px;display: none;clear: both">
1095
  <!-- Number of Split Tests -->
1096
  </div>
1097
  </label>
1098
  <div class="controls">
1099
  <select class="input-xlarge" id="cf_thepage" name="cf_thepage" style="float: left;">
1100
  <?php if ( empty( $cf_funnels_pages ) ) { ?>
1101
  <option value="0">No Pages Found</option>
1102
  <?php }
1103
  else {
1104
  foreach ( $cf_funnels_pages->funnel_steps as $key => $funnel ) { ?>
1105
  <option value="<?php echo $funnel->position;?>" <?php if ( $cf_thepage == $funnel->position ) { echo "selected"; } ?>><?php echo $funnel->name;?></option>
1106
  <?php
1107
  }
1108
  }
1109
  ?>
1110
  </select>
1111
  </div>
1112
  <div id="noPageWarning" style="font-size: 11px; margin-left: 28px; margin-top: -13px;float: left;padding-top: 14px;display: none;width: 100%; clear: both">
1113
  <strong style="font-size: 13px;display: block;">No compatible pages found. </strong>
1114
  <em style="display: block">Membership pages and order pages are not available through plugin.</em>
1115
  </div>
1116
  <br clear="all">
1117
  </div>
1118
  <?php if ( $cf_type!="p" && $check == '1') $display ="display:none"; else $display="";?>
1119
  <?php if ( $cf_type == '') $display ="display:block"; ?>
1120
  <div class="cf_url control-group clearfix" style="<?php echo $display;?>" >
1121
  <label class="control-label" for="cf_slug"> Custom Slug</label>
1122
  <div id="cf-wp-path" class="controls ">
1123
  <input style="padding:10px;"type="text" value="<?php if ( isset( $cf_slug ) ) echo $cf_slug;?>" placeholder="your-path-here" name="cf_slug" id="cf_slug" class="input-xlarge">
1124
  <?php if ( $cf_type == '' ) $display ="display:block;"; else $display="";?>
1125
  <div id="customurlError" style="display: none; <?php echo $display; ?> color: #E54F3F; font-weight: bold;margin-top: 4px;">
1126
  Add a path before saving.
1127
  </div>
1128
  <div id="customurlError_duplicate" style="display: none; <?php echo $display; ?> color: #E54F3F; font-weight: bold;margin-top: 4px;">
1129
  Slug already taken
1130
  </div>
1131
  </div>
1132
  <p class="infoHelp" style="padding-left: 25px;margin-top: 13px;"><span><i class="fa fa-globe" style="margin-right: 3px"></i>
1133
  <?php if ( !empty( $_GET['action'] ) ) { ?>
1134
  <a style="font-weight: bold;text-decoration: none; padding-bottom: 3px;" id="cfslugurl" href="<?php echo get_home_url() ; ?>/<?php echo $cf_slug; ?>" target="_blank"><?php echo get_home_url() ; ?>/<span class="customSlugText"><?php echo $cf_slug; ?></span></a>
1135
  <?php } else { ?>
1136
  <span style="font-weight: bold;text-decoration: none; padding-bottom: 3px;"> <?php echo get_home_url() ; ?>/<span class="customSlugText"><?php echo $cf_slug; ?></span></span>
1137
  <?php } ?>
1138
  </span></p>
1139
  <input type="text" style="display: none" class="input-xlarge" style="height: 30px;" value="<?php echo $cf_page_url; ?>" name="cf_page_url" id="cf_page_url" />
1140
  </div>
1141
  </div>
1142
  <div id="tab2" class="cftabs" style="display: none">
1143
  <!-- Meta Data -->
1144
  <h2>Meta Data</h2>
1145
  <div id="metaPreview">
1146
  <h5>PREVIEW</h5>
1147
  <img src="<?php echo $cf_favicon; ?>" id="faviconPreview" style="width: 18px;margin-left: 10px;margin-bottom: 5px;float: left;" />
1148
  <strong>FAVICON</strong>
1149
  <h3><?php echo $cf_seo_title; ?></h3>
1150
  <span><?php echo get_home_url() ; ?>/<em style="font-style: normal" class="customSlugText"><?php echo $cf_slug; ?></em></span>
1151
  <p><?php echo $cf_seo_desc; ?></p>
1152
  </div>
1153
  <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> To edit your meta data settings <a target="_blank" href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>">click to open this page inside the editor</a> and edit meta data inside the settings panel. To update this page with new changes, re-save this page to keep your meta data up-to-date.</em></p>
1154
  <hr style="margin-left: 51px">
1155
  <div class="control-group" >
1156
  <label class="control-label" for="cf_iframe_check"> Website Title </label>
1157
  <div class="controls">
1158
  <input type="text" class="input-xlarge seoTitle" id="seoTitle" readonly="readonly"style="height: 30px;" value="<?php echo $cf_seo_title; ?>" name="cf_seo_title" />
1159
  </div>
1160
  </div>
1161
  <div class="control-group" >
1162
  <label class="control-label" for="cf_iframe_check"> Description </label>
1163
  <div class="controls">
1164
  <textarea class="input-xlarge seoDesc" id="seoDesc" readonly="readonly"style="height: 80px;" name="cf_seo_desc"><?php echo $cf_seo_desc; ?></textarea>
1165
  </div>
1166
  </div>
1167
  <div class="control-group" >
1168
  <label class="control-label" for="cf_iframe_check"> Keywords </label>
1169
  <div class="controls">
1170
  <input type="text" class="input-xlarge" id="seoKeywords" readonly="readonly"style="height: 30px;" value="<?php echo $cf_keywords; ?>" name="cf_keywords" />
1171
  </div>
1172
  </div>
1173
  <div class="control-group" >
1174
  <label class="control-label" for="cf_iframe_check"> Favicon </label>
1175
  <div class="controls">
1176
  <input type="text" class="input-xlarge" readonly="readonly"id="cf_favicon" style="height: 30px;" value="<?php echo $cf_favicon; ?>" name="cf_favicon" />
1177
  </div>
1178
  </div>
1179
  <div class="control-group" >
1180
  <label class="control-label" for="cf_favicon_choice"> Choose Favicon to Show </label>
1181
  <div class="controls">
1182
  <select name="cf_favicon_choice" id="cf_favicon_choice" class="cf_favicon_choice" style="width: 100% !important">
1183
  <option value="" <?php if($cf_favicon_choice == ''){ echo 'selected'; } ?>>Show ClickFunnels Page Favicon</option>
1184
  <option value="default"<?php if($cf_favicon_choice == 'default'){ echo 'selected'; } ?>>Show Default WordPress Favicon</option>
1185
  </select>
1186
  </div>
1187
  </div>
1188
  </div>
1189
  <div id="tab3" class="cftabs" style="display: none">
1190
  <!-- Page Settings -->
1191
  <h2>Page Settings</h2>
1192
  <div class="innerTab">
1193
  <div class="control-group ">
1194
  <label class="control-label" for="cf_type"> Choose Page Type</label>
1195
  <select name="cf_type" id="cf_type" class="cf_header" style="width: 100% !important">
1196
  <option value="p" <?php if($cf_type == 'p'){ echo 'selected'; } ?>>Regular Page</option>
1197
  <option value="hp"<?php if($cf_type == 'hp'){ echo 'selected'; } ?>>Set as Home Page</option>
1198
  <option value="np"<?php if($cf_type == 'np'){ echo 'selected'; } ?>>Set as 404 Page</option>
1199
  <option value="clickgate"<?php if($cf_type == 'clickgate'){ echo 'selected'; } ?>>Set as ClickGate</option>
1200
  </select>
1201
  </div>
1202
  </div>
1203
  <?php if ( $cf_type == 'clickgate') $display ="display:block;"; else $display="";?>
1204
  <p class="infoHelp clickgateinfo" style="color: #8A6D3B;display: none; <?php echo $display; ?>"><i class="fa fa-star" style="margin-right: 3px"></i> <strong>ClickGate will show this page at the top of any page or post that your visitors land on and will cookie them to show only page only once.</strong></em></p>
1205
  <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> Choose to make this a regular page with a path (custom URL) or show this page as the Home Page for your blog. You can also set this page as a 404 page for any old, mispelled or deleted paths. <em>(only one page can be set as a Home, 404 or ClickGate at a time)</em></p>
1206
  <hr style="margin-left: 51px">
1207
  <div class="control-group cf_uses_api" >
1208
  <label class="control-label" for="cf_iframe_check"> Show Page Inside of Iframe</label>
1209
  <div class="controls">
1210
  <select class="input-xlarge" id="cf_iframe_check" name="cf_iframe_check" style="float: left;">
1211
  <option value="off">No, show page using ClickFunnels API.</option>
1212
  <option value="on" <?php if( $cf_iframe_check == 'on') { ?>selected <?php } ?>>Yes, show page using an iframe.</option>
1213
  </select>
1214
  </div>
1215
  </div>
1216
  <br style="clear: both">
1217
  <p class="infoHelp" style="margin-top: 15px"><i class="fa fa-question-circle" style="margin-right: 3px"></i> If you have custom code on your page that is not working, choose to show your page inside an iframe to fix any custom code issues. If your page is showing up blank use the iframe option and submit a support ticket.</p>
1218
  <hr style="margin-left: 51px">
1219
  <div class="control-group" style="display: block">
1220
  <label class="control-label" for="cf_iframe_check"> ClickFunnels Page URL <small>(reference only)</small></label>
1221
  <div class="controls">
1222
  <input type="text" class="input-xlarge" id="iframeURL" readonly="readonly"style="height: 30px;" value="<?php echo $cf_iframe_url; ?>" name="cf_iframe_url" />
1223
  </div>
1224
  </div>
1225
  </div>
1226
  <div id="tab4" class="cftabs" style="display: none">
1227
  <!-- Extra Settings -->
1228
  <h2>Open Graph</h2>
1229
  <div id="opengraphPreview">
1230
  <h5>PREVIEW</h5>
1231
  <img style="<?php if ($cf_seo_image == '') { echo 'display: none;'; } ?>" src="<?php echo $cf_seo_image; ?>" id="seosocialimage">
1232
  <h3><?php echo $cf_seo_title; ?></h3>
1233
  <p><?php echo $cf_seo_desc; ?></p>
1234
  <span><?php echo get_home_url() ; ?> <em id="theAuthor"><?php echo '| '.$cf_author; ?></em></span>
1235
  </div>
1236
  <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> To edit your meta data settings <a target="_blank" href="https://www.clickfunnels.com/pages/<?php echo $thepage[2]; ?>">click to open this page inside the editor</a> and edit meta data inside the settings panel. To update this page with new changes, re-save this page to keep your meta data up-to-date.</em></p>
1237
  <hr style="margin-left: 51px">
1238
  <div class="control-group" >
1239
  <label class="control-label" for="cf_iframe_check"> Title </label>
1240
  <div class="controls">
1241
  <input type="text" class="input-xlarge seoTitle" id="seoTitle" readonly="readonly"style="height: 30px;" value="<?php echo $cf_seo_title; ?>" />
1242
  </div>
1243
  </div>
1244
  <div class="control-group" >
1245
  <label class="control-label" for="cf_iframe_check"> Description </label>
1246
  <div class="controls">
1247
  <textarea class="input-xlarge seoDesc" id="seoDesc" readonly="readonly"style="height: 80px;" name="cf_seo_desc"><?php echo $cf_seo_desc; ?></textarea>
1248
  </div>
1249
  </div>
1250
  <div class="control-group" >
1251
  <label class="control-label" for="cf_iframe_check"> Author </label>
1252
  <div class="controls">
1253
  <input type="text" class="input-xlarge" id="seoAuthor" readonly="readonly"style="height: 30px;" value="<?php echo $cf_author; ?>" name="cf_author" />
1254
  </div>
1255
  </div>
1256
  <div class="control-group" >
1257
  <label class="control-label" for="cf_iframe_check"> Social Image URL </label>
1258
  <div class="controls">
1259
  <input type="text" class="input-xlarge" id="seosocial" readonly="readonly" style=" height: 30px;" value="<?php echo $cf_seo_image; ?>" name="cf_seo_image" />
1260
  </div>
1261
  </div>
1262
  </div>
1263
  <div id="savePage">
1264
  <div style="width: 100%">
1265
  <?php if ( get_option( 'clickfunnels_api_email' ) == "" || get_option( 'clickfunnels_api_auth' ) == "" ) { ?>
1266
  <a href="#" id="publish" name="publish" class="action-button shadow animate green <?php if ( empty( $_GET['action'] ) ) { echo 'disabledLink'; } ?>" disabled style="float: right; ">
1267
  <?php if ( !empty( $_GET['action'] ) ) { echo "<i class='fa fa-check-circle'></i> Update Page"; } else { echo "<i class='fa fa-check-circle'></i> Save and Publish"; } ?>
1268
  </a>
1269
  <?php } else { ?>
1270
  <a href="#" id="publish" name="publish" class="action-button shadow animate green <?php if ( empty( $_GET['action'] ) ) { echo 'disabledLink'; } ?>" style="float: right; ">
1271
  <?php if ( !empty( $_GET['action'] ) ) { echo "<i class='fa fa-check-circle'></i> Update Page"; } else { echo "<i class='fa fa-check-circle'></i> Save and Publish"; } ?>
1272
  </a>
1273
  <?php } ?>
1274
  <div id="saving" style="float: right;display: none; padding-right: 10px;opacity: .6;padding-top: 9px;margin-right: 4px;font-size: 15px;">
1275
  <i class="fa fa-spinner fa-spin"></i>
1276
  <span>Saving...</span>
1277
  </div>
1278
  </div>
1279
  </div>
1280
  <style>
1281
  #hiddenStuff {display: none}
1282
  </style>
1283
  <div class="control-group" id="hiddenStuff" <?php if ( !empty( $_GET['cf'] ) ) { ?>style="display: block;clear: both;" <?php } ?>>
1284
  <style>
1285
  #hiddenStuff input {
1286
  display:block;margin-top: 5px;margin-bottom: 5px;font-weight: normal;width: 100%;
1287
  }
1288
  </style>
1289
  <div class="controls">
1290
  <br>
1291
  <h3>Dev Checks:</h3>
1292
  <hr />
1293
  <strong>Funnel ID: <input id="checkFunID" type="text" value="<?php echo $thepage[0]; ?>" /></strong>
1294
  <strong>Page Key: <input type="text" value="<?php echo $thepage[1]; ?>" /></strong>
1295
  <strong>Page ID: <input type="text" value="<?php echo $thepage[2]; ?>" /></strong>
1296
  <strong>Funnel Step ID: <input type="text" value="<?php echo $thepage[3]; ?>" /></strong>
1297
  <strong>Saved Meta: <input type="text" id="oldmeta" value="<?php echo $thepage[4]; ?>" /></strong>
1298
  <strong>JS Meta: <input type="text" id="jsmeta" value="" /></strong>
1299
  <strong>Post ID: <input type="text" value="<?php echo $thepage[5]; ?>" /></strong>
1300
  <strong>Page Name: <input type="text" value="<?php echo $thepage[6]; ?>" /></strong>
1301
  <strong>Use iframe?: <input type="text" value="<?php echo $cf_iframe_check; ?>" /></strong>
1302
  <strong>Iframe URL: <input type="text" value="<?php echo $cf_iframe_url; ?>" /></strong>
1303
  <textarea name="cf_thefunnel" id="cf_data" style="display:block;margin-top: 5px;margin-bottom: 10px;width: 100%;height: 300px; font-size: 13px;"><?php echo $savedData; ?></textarea>
1304
  </div>
1305
  </div>
1306
  </div>
1307
  </div>
admin_testing.php DELETED
@@ -1,84 +0,0 @@
1
-
2
- <script>
3
- (function($) {
4
- setTimeout(function() {
5
- $('#errorMessage').fadeOut();
6
- }, 1500);
7
- var specificFunnel = 'https://api.clickfunnels.com/funnels.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
8
- $.getJSON(specificFunnel, function(data) {
9
- $('.checkSuccess').html('<i class="fa fa-check successGreen"></i>');
10
- $('.checkSuccessDev').html('<i class="fa fa-check"> Connected</i>');
11
-
12
- }).fail(function(jqXHR) {
13
- $('.checkSuccess').html('<i class="fa fa-times errorRed"></i>');
14
- $('.checkSuccessDev').html('<i class="fa fa-times"> Not Connected</i>');
15
- $('.badAPI').show();
16
- });
17
- $('#showDataTesting').click(function() {
18
- $('#devShowTesting').toggle();
19
- });
20
- })(jQuery);
21
- </script>
22
- <style>
23
- #checkPHPStuff {
24
- padding: 10px 15px;
25
- background: #272822;
26
- border-bottom: 3px solid rgba(0,0,0,0.25);
27
- color: #D3D3C9;
28
- border-radius: 5px;
29
- margin:30px 10px;
30
- float: left;
31
- margin-left: 195px;
32
- width: 340px;
33
- }
34
- #checkPHPStuff span {
35
- display: block;
36
- line-height: 1.6em;
37
- padding: 4px 0;
38
- border-bottom: 1px solid rgba(255, 255, 255, .3);
39
- }
40
- #checkPHPStuff span strong {
41
- float: right;
42
- }
43
- #checkPHPStuff span strong i.fa-check {
44
- font-weight: bold;
45
- color: #8FC742;
46
- }
47
- #checkPHPStuff span strong i.fa-times {
48
- font-weight: bold;
49
- color: #E34E3D;
50
- }
51
- #checkPHPStuff span:last-child {
52
- border-bottom: none;
53
- }
54
-
55
-
56
-
57
- #checkJSONStuff h3, #checkPHPStuff h3 {
58
- color: #D3D3C9;
59
- margin: 10px 0;
60
- font-weight: 200;
61
- opacity: .5;
62
- }
63
-
64
- #adminTesting h2 {
65
- text-align: center;
66
- margin: 10px 0;
67
- margin-bottom: 0;
68
- width: 760px;
69
- }
70
- </style>
71
- <div id="devShowTesting" style="display: none">
72
- <br clear="both"><br>
73
- <div id="adminTesting">
74
- <h2><i class="fa fa-dashboard"></i> Developer Testing Check PHP and JSON</h2>
75
- </div>
76
- <div id="checkPHPStuff" >
77
- <h3>Test PHP Server Details</h3>
78
- <span>CURL: <strong><?php echo function_exists('curl_version') ? '<i class="fa fa-check"> Enabled</i>' : '<i class="fa fa-times">Disabled</i>' ?></strong></span>
79
- <span>File Get Contents: <strong><?php echo file_get_contents(__FILE__) ? '<i class="fa fa-check"> Enabled</i>' : '<i class="fa fa-times">Disabled</i>' ; ?> </strong></span>
80
- <span>Allow URL fopen: <strong><?php echo ini_get('allow_url_fopen') ? '<i class="fa fa-check"> Enabled</i>' : '<i class="fa fa-times">Disabled</i>' ; ?> </strong></span>
81
- <span>PHP Version: <strong><?php echo PHP_VERSION; ?> </strong></span>
82
- <span>API Authorization Connection: <strong class='checkSuccessDev'></strong></span>
83
- </div>
84
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
cf-template.php DELETED
@@ -1,14 +0,0 @@
1
- <style>
2
- * {
3
- margin: 0 !important;
4
- padding: 0 !important;
5
- }
6
- </style>
7
- <?php
8
- $key_1_value = get_post_meta( get_the_ID(), '_my_meta_value_key', true );
9
- // Check if the custom field has a value.
10
- if ( ! empty( $key_1_value ) ) {
11
- echo '<iframe width="100%" height="100%" src="'.$key_1_value.'" frameborder="0" allowfullscreen></iframe>';
12
- }
13
-
14
- ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
clickfunnels.php CHANGED
@@ -3,10 +3,13 @@
3
  * Plugin Name: ClickFunnels
4
  * Plugin URI: https://www.clickfunnels.com
5
  * Description: Connect to your ClickFunnels account with simple authorization key and show any ClickFunnels page as your homepage or as 404 error pages or simply choose any of your pages and make clean URLs to your ClickFunnels pages. Don't have an account? <a target="_blank" href="https://www.clickfunnels.com">Sign up for your 2 week <em>free</em> trial now.</a>
6
- * Version: 1.1.2
7
- * Author: Etison, LLC
8
  * Author URI: https://www.clickfunnels.com
9
  */
 
 
 
10
  define( "CF_URL", plugin_dir_url( __FILE__ ) );
11
  define( "CF_PATH", plugin_dir_path( __FILE__ ) );
12
  define( "CF_API_EMAIL", get_option( 'clickfunnels_api_email' ) );
@@ -37,10 +40,11 @@ class ClickFunnels {
37
  return $messages;
38
  $data = $this->get_url( $post_id );
39
  $view_html = " <a target='_blank' href='{$data['url']}'>Click to View</a> ";
40
- $messages['post'][1] = 'Successfully Updated Page';
41
- $messages['post'][4] = 'Successfully Updated Page';
42
- $messages['post'][6] = 'Successfully Saved Your Changes';
43
- $messages['post'][10] = 'Successfully Updated Page';
 
44
  return $messages;
45
  }
46
  public function post_trash( $post_id ) {
@@ -54,6 +58,9 @@ class ClickFunnels {
54
  if ( $this->is_home( $post_id ) ) {
55
  $this->set_home( "", "" );
56
  }
 
 
 
57
  }
58
  public function do_redirects() {
59
  global $page;
@@ -67,11 +74,12 @@ class ClickFunnels {
67
  $slug = str_replace( $home_url, "", $current );
68
  $slug= rtrim( $slug, '/' );
69
  $cf_options = get_option( "cf_options" );
 
 
 
 
70
  if ( !empty( $cf_options["pages"][$slug] ) ) {
71
  $thepage = explode( "{#}", $cf_options["pages"][$slug] );
72
- // echo $thepage[0] . "<br/> position:"; // funnel ID
73
- // echo $thepage[1]; // page position
74
-
75
  echo $this->get_page_html( $thepage[0], $thepage[1], $thepage[4], $thepage[5], $thepage[0] );
76
  exit();
77
  } else if ( is_404() ) {
@@ -85,17 +93,67 @@ class ClickFunnels {
85
  wp_redirect( get_bloginfo( 'siteurl' ) , 301 );
86
  }
87
  }
88
- else if ( is_home() ) {
 
89
  $page = $this->get_home();
90
  if ( !empty( $page['post_id'] ) ) {
91
  $thepage = explode( "{#}", $page['page_id'] );
92
  echo $this->get_page_html( $thepage[0], $thepage[1], $thepage[4], $thepage[5], $thepage[0] );
93
  exit();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
94
  }
95
  }
96
-
97
  }
98
  public function fill_columns( $column ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
99
  $id = get_the_ID();
100
  $cf_type = get_post_meta( $id, 'cf_type', true );
101
  $cf_slug= get_post_meta( $id, 'cf_slug', true );
@@ -107,59 +165,100 @@ class ClickFunnels {
107
  if ( $cf_type =="np" && !$this->is_404( $id ) ) {
108
  $cf_type = "notype";
109
  }
 
 
 
110
  if ( 'cf_post_name' == $column ) {
111
  $url = get_edit_post_link( get_the_ID() );
112
  $funnel_id = get_post_meta( get_the_ID(), 'cf_thefunnel', true );
113
  if ( get_option( 'clickfunnels_api_email' ) == "" || get_option( 'clickfunnels_api_auth' ) == "" ) {
114
  echo "[ Incorrect API ] <a href='../wp-admin/edit.php?post_type=clickfunnels&page=cf_api'>Setup API Settings</a>";
115
  } else {
116
- if ($this->get_funnel_name( $funnel_id ) != '') {
117
- echo '<strong><a href="' . $url .'">' . $this->get_funnel_name( $funnel_id ) . '</a></strong>' ;
 
118
  }
119
  else {
120
- echo '<strong><a href="' . $url .'">Undefined Page</a></strong>' ;
121
  }
122
-
123
  }
 
124
  }
125
- if ( 'cf_thepage' == $column ) {
126
- $pagename = explode("{#}", $cf_thepage);
127
- if ($pagename[5] != '') {
128
- echo $pagename[5];
129
- }
130
- else {
131
- echo 'undefined';
 
 
 
 
 
 
 
132
  }
133
-
 
 
 
 
 
 
134
  }
135
  if ( 'cf_openinEditor' == $column ) {
136
  $pagename = explode("{#}", $cf_thepage);
137
- echo "<a href='https://www.clickfunnels.com/pages/$pagename[1]' target='_blank'>Open in Editor</a>";
 
 
 
 
 
138
  }
139
 
140
  switch ( $cf_type ) {
141
  case "p":
142
  $post_type = "Page";
143
- $url = get_option( 'clickfunnels_siteURL' )."/".$cf_slug;
144
  break;
145
  case "hp":
146
- $post_type = "Home Page";
147
- $url = get_option( 'clickfunnels_siteURL' ).'/';
148
  break;
149
  case "np":
150
- $post_type = "404 Page";
151
- $url = get_option( 'clickfunnels_siteURL' ).'/test-url-random';
 
 
 
 
152
  break;
153
  default:
154
- $post_type = "Not defined yet";
155
- $url = '';
156
  }
157
  if ( 'cf_type' == $column ) {
158
- echo "<strong>$post_type</strong>";
 
 
 
 
 
 
159
  }
160
  if ( 'cf_path' == $column ) {
161
  if ( !empty( $url ) ) {
162
- echo " <a href='$url' target='_blank'>View Page</a>";
 
 
 
 
 
 
 
 
 
163
  }
164
  }
165
  }
@@ -169,18 +268,23 @@ class ClickFunnels {
169
  switch ( $cf_type ) {
170
  case "p":
171
  $data['post_type'] = "Page";
172
- $data['url'] = get_option( 'clickfunnels_siteURL' )."/".$cf_slug;
173
  break;
174
  case "hp":
175
  $data['post_type']= "Home Page";
176
- $data['url'] = get_option( 'clickfunnels_siteURL' ).'/';
177
  break;
178
  case "np":
179
  $data['post_type'] = "404 Page";
180
- $data['url'] = get_option( 'clickfunnels_siteURL' ).'/test-url-random';
 
 
 
181
  default:
182
- $data['post_type'] = "Not Defined";
183
- $data['url'] = '';
 
 
184
  }
185
  return $data;
186
  }
@@ -197,7 +301,7 @@ class ClickFunnels {
197
  public function get_page_html( $funnel_id, $position, $meta, $postid, $thepage ) {
198
  $page_html = get_transient( "cf_page_html_{$funnel_id}" );
199
  if (get_post_meta( $postid, "cf_iframe_check", true ) == 'on') {
200
- $page_html = $this->api->get_page_iframe( get_post_meta( $postid, "cf_iframe_url", true ), $meta, get_post_meta( $postid, "cf_seo_title", true ), get_post_meta( $postid, "cf_seo_desc", true ), get_post_meta( $postid, "cf_seo_image", true ), $postid, get_post_meta( $postid, "cf_page_url", true ) );
201
  return $page_html;
202
  }
203
  else {
@@ -205,7 +309,7 @@ class ClickFunnels {
205
  return $page_html;
206
  }
207
  else {
208
- $page_html = $this->api->get_page_html( $funnel_id, $position, $meta, get_post_meta( $postid, "cf_seo_title", true ), get_post_meta( $postid, "cf_seo_desc", true), get_post_meta( $postid, "cf_seo_image", true ), get_post_meta( $postid, "cf_iframe_url", true ), $thepage, get_post_meta( $postid, "cf_page_url", true ) );
209
  return $page_html;
210
  }
211
  }
@@ -217,10 +321,11 @@ class ClickFunnels {
217
  return $post_id;
218
  if ( $post->post_type != 'clickfunnels' )
219
  return $post_id;
 
 
220
  $cf_type = $_POST['cf_type'];
221
  $cf_page = $_POST['cf_page'];
222
  $cf_thepage = $_POST['cf_thepage'];
223
- $cf_slug = $_POST['cf_slug'];
224
  $cf_thefunnel = $_POST['cf_thefunnel'];
225
  $cf_seo_tags = $_POST['cf_seo_tags'];
226
  $cf_iframe_check = $_POST['cf_iframe_check'];
@@ -229,6 +334,13 @@ class ClickFunnels {
229
  $cf_seo_desc = $_POST['cf_seo_desc'];
230
  $cf_seo_image = $_POST['cf_seo_image'];
231
  $cf_page_url = $_POST['cf_page_url'];
 
 
 
 
 
 
 
232
  update_post_meta( $post_id, "cf_type", $cf_type );
233
  update_post_meta( $post_id, "cf_page", $cf_page );
234
  update_post_meta( $post_id, "cf_thepage", $cf_thepage );
@@ -241,6 +353,13 @@ class ClickFunnels {
241
  update_post_meta( $post_id, "cf_seo_desc", $cf_seo_desc );
242
  update_post_meta( $post_id, "cf_seo_image", $cf_seo_image );
243
  update_post_meta( $post_id, "cf_page_url", $cf_page_url );
 
 
 
 
 
 
 
244
  $cf_options = get_option( "cf_options" );
245
  unset( $cf_options['pages'][$cf_slug] );
246
  update_option( "cf_options", $cf_options );
@@ -248,6 +367,8 @@ class ClickFunnels {
248
  $this->set_404( "", "" );
249
  if ( $this->is_home( $post_id ) )
250
  $this->set_home( "", "" );
 
 
251
  switch ( $cf_type ) {
252
  case "p":
253
  $cf_options = get_option( "cf_options" );
@@ -260,6 +381,9 @@ class ClickFunnels {
260
  case "np": // 404 page
261
  $this->set_404( $post_id, $cf_thefunnel );
262
  break;
 
 
 
263
  }
264
  }
265
  public function get_page( $page_slug ) {
@@ -304,17 +428,39 @@ class ClickFunnels {
304
  return true;
305
  return false;
306
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
307
  public function add_columns( $columns ) {
308
  $new_columns = array();
309
  $new_columns['cb'] = $columns['cb'];
310
 
311
- $new_columns['cf_post_name'] = "Funnel";
312
- $new_columns['cf_thepage'] = "Page";
 
 
313
 
314
  $new_columns['cf_path'] = 'View';
315
  $new_columns['cf_openinEditor'] = 'Editor';
316
  $new_columns['cf_type'] = 'Type';
317
- $new_columns['date'] = $columns['date'];
318
  return $new_columns;
319
  }
320
  function view( $view, $data = array() ) {
@@ -366,6 +512,10 @@ class ClickFunnels {
366
  $data['cf_type'] = 'np';
367
  $data['cf_page'] = $this->get_404();
368
  }
 
 
 
 
369
  if ( $this->get_page_mode( "edit" ) )
370
  $data['delete_link'] = get_delete_post_link( $id );
371
  else
@@ -397,17 +547,17 @@ class ClickFunnels {
397
  }
398
  }
399
  public function success_message() {
400
- echo '<div id="message" class="updated"><p><strong>Updated Click Funnels Page.</strong></p></div>';
401
  }
402
  public function error_message() {
403
- echo '<div id="message" class="error"><p><strong>Uh oh, something went wrong.</strong></p></div>';
404
  }
405
  public function load_actual_scripts() {
406
- wp_register_style( "clickfunnels_bootstrap", CF_URL."css/bootstrap.css" );
407
- wp_enqueue_style( "clickfunnels_bootstrap" );
408
- wp_enqueue_style( "clickfunnels_admin" );
409
- wp_register_script( "clickfunnels_admin", CF_URL."js/admin.js" );
410
- wp_enqueue_script( "clickfunnels_admin" );
411
  }
412
  public function remove_save_box() {
413
  global $wp_meta_boxes;
@@ -454,26 +604,56 @@ class ClickFunnels {
454
  }
455
  }
456
  add_action( 'admin_menu', 'cf_plugin_submenu' );
457
- function wpc_add_admin_cpt_script( $hook ) {
458
-
459
- global $post;
460
 
461
- if ( $hook == 'post-new.php' || $hook == 'post.php' ) {
462
- if ( 'clickfunnels' === $post->post_type ) {
463
- wp_enqueue_script( 'myscript', get_stylesheet_directory_uri().'/js/hidedraft.js' );
464
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
465
  }
 
 
 
 
 
 
 
 
466
  }
467
- add_action( 'admin_enqueue_scripts', 'wpc_add_admin_cpt_script', 10, 1 );
468
- function cf_plugin_submenu() {
469
- add_submenu_page( 'edit.php?post_type=clickfunnels', __( 'Settings', 'menu-test' ), __( 'Settings', 'menu-test' ), 'manage_options', 'cf_api', 'cf_api_settings_page' );
470
- add_submenu_page( 'edit.php?post_type=clickfunnels', __( 'How to Use ClickFunnels Plugin', 'menu-test' ), __( 'Support', 'menu-test' ), 'manage_options', 'clickfunnels_support', 'support_clickfunnels' );
471
  }
472
  function cf_api_settings_page() {
473
  include 'access.php';
474
  }
475
- function support_clickfunnels() {
476
- include 'support.php';
477
  }
478
  function clickfunnels_loadjquery($hook) {
479
  if( $hook != 'edit.php' && $hook != 'post.php' && $hook != 'post-new.php' ) {
@@ -484,259 +664,423 @@ function clickfunnels_loadjquery($hook) {
484
  add_action('admin_enqueue_scripts', 'clickfunnels_loadjquery');
485
  $api = new CF_API();
486
  $click = new ClickFunnels( $api );
 
 
 
487
 
488
- function cf_get_file_contents ($url) {
489
- if(function_exists('file_get_contents')){
490
- $url_get_contents_data = file_get_contents($url);
491
- }
492
- elseif (function_exists('curl_exec')){
493
- $conn = curl_init($url);
494
- curl_setopt($conn, CURLOPT_SSL_VERIFYPEER, true);
495
- curl_setopt($conn, CURLOPT_FRESH_CONNECT, true);
496
- curl_setopt($conn, CURLOPT_RETURNTRANSFER, 1);
497
- $url_get_contents_data = (curl_exec($conn));
498
- curl_close($conn);
499
- }elseif(function_exists('fopen') && function_exists('stream_get_contents')){
500
- $handle = fopen ($url, "r");
501
- $url_get_contents_data = stream_get_contents($handle);
502
- }else{
503
- $url_get_contents_data = false;
504
- }
505
- return $url_get_contents_data;
506
  }
507
 
508
-
509
- function get_file_content($url, $forceCURL = false)
510
- {
511
- $internalServerURL = 'http://' . $_SERVER['SERVER_NAME'];
512
- $internalSecureServerURL = 'https://' . $_SERVER['SERVER_NAME'];
513
-
514
- $externalURL = strpos('http', $url) === 0 && !(strpos($internalServerURL, $url) === 0 || strpos($internalSecureServerURL, $url) === 0);
515
-
516
- if($externalURL && !ini_get('allow_url_fopen'))
517
- {
518
- return 'ERROR: Reading content from external URLs is not allowed on this server. Please contact your administrator or provider to resolve this issue!';
519
- }
520
-
521
- if(!defined('CONTENTMETHOD'))
522
- {
523
- $contentMethod = false;
524
- if(file_get_contents(__FILE__))
525
- {
526
- $contentMethod = 'file';
527
- }
528
- else if(function_exists('curl_version'))
529
- {
530
- $contentMethod = 'curl';
531
- }
532
- define('CONTENTMETHOD', $contentMethod);
533
- }
534
- if(!CONTENTMETHOD)
535
- {
536
- return false;
537
  }
538
- $content = '';
539
- if(CONTENTMETHOD === 'file' && !$forceCURL)
540
- {
541
- $content = file_get_contents($url);
 
542
  }
543
- else
544
- {
545
- $ch = curl_init();
546
- curl_setopt($ch, CURLOPT_URL, $url);
547
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
548
- $content = curl_exec($ch);
549
- curl_close($ch);
550
  }
551
- return $content;
552
  }
553
 
554
 
 
 
 
 
 
 
 
 
555
 
 
 
 
556
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
557
 
558
- // class PageTemplater {
 
 
 
 
 
559
 
560
- // /**
561
- // * A reference to an instance of this class.
562
- // */
563
- // private static $instance;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
564
 
565
- // /**
566
- // * The array of templates that this plugin tracks.
567
- // */
568
- // protected $templates;
 
 
 
 
 
 
 
 
 
 
 
569
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
570
 
571
- // /**
572
- // * Returns an instance of this class.
573
- // */
574
- // public static function get_instance() {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
575
 
576
- // if( null == self::$instance ) {
577
- // self::$instance = new PageTemplater();
578
- // }
 
579
 
580
- // return self::$instance;
 
 
 
 
 
 
581
 
582
- // }
 
 
 
 
 
 
 
583
 
584
- // /**
585
- // * Initializes the plugin by setting filters and administration functions.
586
- // */
587
- // private function __construct() {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
588
 
589
- // $this->templates = array();
 
 
 
 
 
 
 
 
 
 
590
 
591
 
592
- // // Add a filter to the attributes metabox to inject template into the cache.
593
- // add_filter(
594
- // 'page_attributes_dropdown_pages_args',
595
- // array( $this, 'register_project_templates' )
596
- // );
 
 
597
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
598
 
599
- // // Add a filter to the save post to inject out template into the page cache
600
- // add_filter(
601
- // 'wp_insert_post_data',
602
- // array( $this, 'register_project_templates' )
603
- // );
 
 
 
 
 
 
 
604
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
605
 
606
- // // Add a filter to the template include to determine if the page has our
607
- // // template assigned and return it's path
608
- // add_filter(
609
- // 'template_include',
610
- // array( $this, 'view_project_template')
611
- // );
612
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
613
 
614
- // // Add your templates to this array.
615
- // $this->templates = array(
616
- // 'cf-template.php' => 'ClickFunnels Page',
617
- // );
618
-
619
- // }
 
 
 
620
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
621
 
622
- // /**
623
- // * Adds our template to the pages cache in order to trick WordPress
624
- // * into thinking the template file exists where it doens't really exist.
625
- // *
626
- // */
627
-
628
- // public function register_project_templates( $atts ) {
629
-
630
- // // Create the key used for the themes cache
631
- // $cache_key = 'page_templates-' . md5( get_theme_root() . '/' . get_stylesheet() );
632
-
633
- // // Retrieve the cache list.
634
- // // If it doesn't exist, or it's empty prepare an array
635
- // $templates = wp_get_theme()->get_page_templates();
636
- // if ( empty( $templates ) ) {
637
- // $templates = array();
638
- // }
639
-
640
- // // New cache, therefore remove the old one
641
- // wp_cache_delete( $cache_key , 'themes');
642
-
643
- // // Now add our template to the list of templates by merging our templates
644
- // // with the existing templates array from the cache.
645
- // $templates = array_merge( $templates, $this->templates );
646
-
647
- // // Add the modified cache to allow WordPress to pick it up for listing
648
- // // available templates
649
- // wp_cache_add( $cache_key, $templates, 'themes', 1800 );
650
-
651
- // return $atts;
652
-
653
- // }
654
-
655
- // /**
656
- // * Checks if the template is assigned to the page
657
- // */
658
- // public function view_project_template( $template ) {
659
-
660
- // global $post;
661
-
662
- // if (!isset($this->templates[get_post_meta(
663
- // $post->ID, '_wp_page_template', true
664
- // )] ) ) {
665
-
666
- // return $template;
667
-
668
- // }
669
-
670
- // $file = plugin_dir_path(__FILE__). get_post_meta(
671
- // $post->ID, '_wp_page_template', true
672
- // );
673
-
674
- // // Just to be safe, we check if the file exist first
675
- // if( file_exists( $file ) ) {
676
- // return $file;
677
- // }
678
- // else { echo $file; }
679
-
680
- // return $template;
681
-
682
- // }
683
-
684
-
685
- // }
686
- // add_action( 'plugins_loaded', array( 'PageTemplater', 'get_instance' ) );
687
-
688
-
689
- // function myplugin_add_meta_box() {
690
- // $screens = array( 'page' );
691
- // global $post;
692
- // if(!empty($post))
693
- // {
694
- // $pageTemplate = get_post_meta($post->ID, '_wp_page_template', true);
695
- // if($pageTemplate == 'cf-template.php' )
696
- // {
697
- // foreach ( $screens as $screen ) {
698
- // add_meta_box(
699
- // 'myplugin_sectionid',
700
- // __( 'ClickFunnels Page Settings', 'myplugin_textdomain' ),
701
- // 'myplugin_meta_box_callback',
702
- // $screen
703
- // );
704
- // }
705
- // }
706
- // }
707
- // }
708
- // add_action( 'add_meta_boxes', 'myplugin_add_meta_box' );
709
- // function myplugin_meta_box_callback( $post ) {
710
- // wp_nonce_field( 'myplugin_save_meta_box_data', 'myplugin_meta_box_nonce' );
711
- // $value = get_post_meta( $post->ID, '_my_meta_value_key', true );
712
- // echo '<label for="myplugin_new_field">';
713
- // _e( 'ClickFunnels URL:', 'myplugin_textdomain' );
714
- // echo '</label> ';
715
- // echo '<input type="text" id="myplugin_new_field" name="myplugin_new_field" value="' . esc_attr( $value ) . '" size="25" />';
716
- // }
717
- // function myplugin_save_meta_box_data( $post_id ) {
718
- // if ( ! isset( $_POST['myplugin_meta_box_nonce'] ) ) {
719
- // return;
720
- // }
721
- // if ( ! wp_verify_nonce( $_POST['myplugin_meta_box_nonce'], 'myplugin_save_meta_box_data' ) ) {
722
- // return;
723
- // }
724
- // if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) {
725
- // return;
726
- // }
727
- // if ( isset( $_POST['post_type'] ) && 'page' == $_POST['post_type'] ) {
728
- // if ( ! current_user_can( 'edit_page', $post_id ) ) {
729
- // return;
730
- // }
731
- // } else {
732
- // if ( ! current_user_can( 'edit_post', $post_id ) ) {
733
- // return;
734
- // }
735
- // }
736
- // if ( ! isset( $_POST['myplugin_new_field'] ) ) {
737
- // return;
738
- // }
739
- // $my_data = sanitize_text_field( $_POST['myplugin_new_field'] );
740
- // update_post_meta( $post_id, '_my_meta_value_key', $my_data );
741
- // }
742
- // add_action( 'save_post', 'myplugin_save_meta_box_data' );
3
  * Plugin Name: ClickFunnels
4
  * Plugin URI: https://www.clickfunnels.com
5
  * Description: Connect to your ClickFunnels account with simple authorization key and show any ClickFunnels page as your homepage or as 404 error pages or simply choose any of your pages and make clean URLs to your ClickFunnels pages. Don't have an account? <a target="_blank" href="https://www.clickfunnels.com">Sign up for your 2 week <em>free</em> trial now.</a>
6
+ * Version: 2.0
7
+ * Author: Etison, LLC
8
  * Author URI: https://www.clickfunnels.com
9
  */
10
+
11
+
12
+
13
  define( "CF_URL", plugin_dir_url( __FILE__ ) );
14
  define( "CF_PATH", plugin_dir_path( __FILE__ ) );
15
  define( "CF_API_EMAIL", get_option( 'clickfunnels_api_email' ) );
40
  return $messages;
41
  $data = $this->get_url( $post_id );
42
  $view_html = " <a target='_blank' href='{$data['url']}'>Click to View</a> ";
43
+ $messages['post'][1] = '<strong><i class="fa fa-check" style="margin-right: 5px;"></i> Successfully saved and updated your ClickFunnels page.</strong>';
44
+ $messages['post'][4] = '<strong><i class="fa fa-check" style="margin-right: 5px;"></i> Successfully saved and updated your ClickFunnels page.</strong>';
45
+ $messages['post'][1] = '<strong><i class="fa fa-check" style="margin-right: 5px;"></i> Successfully saved and updated your ClickFunnels page.</strong>';
46
+ $messages['post'][6] = '<strong><i class="fa fa-check" style="margin-right: 5px;"></i> Successfully saved and updated your ClickFunnels page.</strong>';
47
+ $messages['post'][10] = '<strong><i class="fa fa-check" style="margin-right: 5px;"></i> Successfully saved and updated your ClickFunnels page.</strong>';
48
  return $messages;
49
  }
50
  public function post_trash( $post_id ) {
58
  if ( $this->is_home( $post_id ) ) {
59
  $this->set_home( "", "" );
60
  }
61
+ if ( $this->is_clickgate( $post_id ) ) {
62
+ $this->set_clickgate( "", "" );
63
+ }
64
  }
65
  public function do_redirects() {
66
  global $page;
74
  $slug = str_replace( $home_url, "", $current );
75
  $slug= rtrim( $slug, '/' );
76
  $cf_options = get_option( "cf_options" );
77
+ $thepage = explode( "{#}", $cf_options['clickgate']['page_id'] );
78
+ $baseURL = 'http://'.$_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"];
79
+ $baseURL_https = 'https://'.$_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"];
80
+ $baseURL_none = $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"];
81
  if ( !empty( $cf_options["pages"][$slug] ) ) {
82
  $thepage = explode( "{#}", $cf_options["pages"][$slug] );
 
 
 
83
  echo $this->get_page_html( $thepage[0], $thepage[1], $thepage[4], $thepage[5], $thepage[0] );
84
  exit();
85
  } else if ( is_404() ) {
93
  wp_redirect( get_bloginfo( 'siteurl' ) , 301 );
94
  }
95
  }
96
+ else if ( is_home() && $baseURL == $home_url || is_home() && $baseURL_https == $home_url || is_home() && $baseURL_none == $home_url
97
+ || is_front_page() && $baseURL == $home_url || is_front_page() && $baseURL_https == $home_url || is_front_page() && $baseURL_none == $home_url) {
98
  $page = $this->get_home();
99
  if ( !empty( $page['post_id'] ) ) {
100
  $thepage = explode( "{#}", $page['page_id'] );
101
  echo $this->get_page_html( $thepage[0], $thepage[1], $thepage[4], $thepage[5], $thepage[0] );
102
  exit();
103
+ } else {
104
+ if ( $cf_options['clickgate']['page_id']) {
105
+ $page = $this->get_clickgate();
106
+ $cookiename = "_cf_clickgate_now";
107
+ if ( !empty( $page['post_id'] ) ) {
108
+ if (!$_COOKIE["clickgate_shown_$thepage[1]"]) {
109
+ setcookie("clickgate_shown_$thepage[1]","seen",2147483647); // php cookies cannot go past year 2038
110
+ echo do_shortcode("[clickfunnels_clickgate url='$thepage[7]']");
111
+ }
112
+ }
113
+ }
114
+ }
115
+ }
116
+
117
+ else if ( $cf_options['clickgate']['page_id']) {
118
+ $page = $this->get_clickgate();
119
+ $cookiename = "_cf_clickgate_now";
120
+ if ( !empty( $page['post_id'] ) ) {
121
+ $thepage = explode( "{#}", $page['page_id'] );
122
+ if (!$_COOKIE["clickgate_shown_$thepage[1]"]) {
123
+ setcookie("clickgate_shown_$thepage[1]","seen",2147483647);
124
+ echo do_shortcode("[clickfunnels_clickgate url='$thepage[7]']");
125
+ }
126
  }
127
  }
128
+
129
  }
130
  public function fill_columns( $column ) {
131
+
132
+ if(!get_option( 'clickfunnels_api_email')) {
133
+ update_option( 'clickfunnels_api_email', '');
134
+ }
135
+ if(!get_option( 'clickfunnels_api_auth')) {
136
+ update_option( 'clickfunnels_api_auth', '');
137
+ }
138
+ if(!get_option( 'clickfunnels_siteURL')) {
139
+ update_option( 'clickfunnels_siteURL', '');
140
+ }
141
+ if(!get_option( 'clickfunnels_404Redirect')) {
142
+ update_option( 'clickfunnels_404Redirect', '');
143
+ }
144
+ if(!get_option( 'clickfunnels_agency_group_tag')) {
145
+ update_option( 'clickfunnels_agency_group_tag', '');
146
+ }
147
+ if(!get_option( 'clickfunnels_agency_api_details')) {
148
+ update_option( 'clickfunnels_agency_api_details', '');
149
+ }
150
+ if(!get_option( 'clickfunnels_agency_reset_data')) {
151
+ update_option( 'clickfunnels_agency_reset_data', '');
152
+ }
153
+ if(!get_option( 'clickfunnels_agency_hide_settings')) {
154
+ update_option( 'clickfunnels_agency_hide_settings', '');
155
+ }
156
+
157
  $id = get_the_ID();
158
  $cf_type = get_post_meta( $id, 'cf_type', true );
159
  $cf_slug= get_post_meta( $id, 'cf_slug', true );
165
  if ( $cf_type =="np" && !$this->is_404( $id ) ) {
166
  $cf_type = "notype";
167
  }
168
+ if ( $cf_type =="clickgate" && !$this->is_clickgate( $id ) ) {
169
+ $cf_type = "notype";
170
+ }
171
  if ( 'cf_post_name' == $column ) {
172
  $url = get_edit_post_link( get_the_ID() );
173
  $funnel_id = get_post_meta( get_the_ID(), 'cf_thefunnel', true );
174
  if ( get_option( 'clickfunnels_api_email' ) == "" || get_option( 'clickfunnels_api_auth' ) == "" ) {
175
  echo "[ Incorrect API ] <a href='../wp-admin/edit.php?post_type=clickfunnels&page=cf_api'>Setup API Settings</a>";
176
  } else {
177
+ $pagename = explode("{#}", $cf_thepage);
178
+ if ($pagename[5] != '') {
179
+ echo '<strong><a href="' . $url .'">' . $pagename[5]. '</a></strong>' ;
180
  }
181
  else {
182
+ echo '<a href="post.php?post='.get_the_ID().'&action=edit">undefined</a>';
183
  }
 
184
  }
185
+
186
  }
187
+ if ( 'cf_post_funnel' == $column ) {
188
+ $url = get_edit_post_link( get_the_ID() );
189
+ $funnel_id = get_post_meta( get_the_ID(), 'cf_thefunnel', true );
190
+ if ( get_option( 'clickfunnels_api_email' ) == "" || get_option( 'clickfunnels_api_auth' ) == "" ) {
191
+ echo "[ Incorrect API ] <a href='../wp-admin/edit.php?post_type=clickfunnels&page=cf_api'>Setup API Settings</a>";
192
+ } else {
193
+ $pagename = explode("{#}", $cf_thepage);
194
+ if ($pagename[5] != '') {
195
+ if($pagename[10]) { echo '<span>'.$pagename[10].'</span>'; }
196
+ else { echo '<a href="post.php?post='.get_the_ID().'&action=edit&updatemeta=true">* Click to Update Page *</a>'; }
197
+ }
198
+ else {
199
+ echo 'undefined';
200
+ }
201
  }
202
+
203
+ }
204
+
205
+ if ( 'cf_thepage' == $column ) {
206
+ $url = get_edit_post_link( get_the_ID() );
207
+ echo '<strong><a href="' . $url .'">Edit Page</a></strong>' ;
208
+
209
  }
210
  if ( 'cf_openinEditor' == $column ) {
211
  $pagename = explode("{#}", $cf_thepage);
212
+ echo "<strong><a href='https://www.clickfunnels.com/pages/$pagename[1]' target='_blank'>Open in Editor</a></strong>";
213
+ }
214
+
215
+ if ( 'cf_metaupdate' == $column ) {
216
+ $metaCheck = explode("{#}", $cf_thefunnel);
217
+ echo "<strong data-id='".get_the_ID()."' class='loadingcf_meta'><img style='opacity: .4;display: none' src='https://images.clickfunnels.com/ea/5d82007d3a11e5aecef7aa69d38501/ajax-loader.gif' /></strong><div style='display: none' class='metainfo_check' data-id='".get_the_ID()."'>$metaCheck[4]</div><div style='display: none' class='metainfo_id' data-id='".get_the_ID()."' data-pageid='$metaCheck[3]' data-pagekey='$metaCheck[1]'>$metaCheck[0]</div><div style='display: none' class='metainfo_pageid' data-id='".get_the_ID()."'>".get_the_ID()."</div>";
218
  }
219
 
220
  switch ( $cf_type ) {
221
  case "p":
222
  $post_type = "Page";
223
+ $url = get_home_url()."/".$cf_slug;
224
  break;
225
  case "hp":
226
+ $post_type = "<img src='https://images.clickfunnels.com/59/8ae200796511e581f93f593a07eabb/1445609147_house3.png' style='margin-right: 2px;margin-top: 3px;opacity: .7;width: 16px;height: 16px;' /> Set as Home Page";
227
+ $url = get_home_url().'/';
228
  break;
229
  case "np":
230
+ $post_type = "<img src='https://images.clickfunnels.com/c0/193250796611e599df696af00696f8/1445609787_attention_1.png' style='margin-right: 2px;margin-top: 3px;opacity: .7;width: 16px;height: 16px;' /> Set as 404 Page";
231
+ $url = get_home_url().'/test-url-404-page';
232
+ break;
233
+ case "clickgate":
234
+ $post_type = "<img src='https://images.clickfunnels.com/20/ca1d90796611e5a69ba592391e5dff/1445609517_landing-page.png' style='margin-right: 2px;margin-top: 3px;opacity: .7;width: 16px;height: 16px;' /> Set as ClickGate";
235
+ $url = 'clickgate';
236
  break;
237
  default:
238
+ $post_type = "Set Page Type";
239
+ $url = null;
240
  }
241
  if ( 'cf_type' == $column ) {
242
+
243
+ if ( $post_type !== 'Set Page Type') {
244
+ echo "<strong>$post_type</strong>";
245
+ }
246
+ else {
247
+ echo "<strong>Page</strong>";
248
+ }
249
  }
250
  if ( 'cf_path' == $column ) {
251
  if ( !empty( $url ) ) {
252
+ if ($url == 'clickgate') {
253
+ echo "<strong style='opacity: .7'>Shown on All Pages</strong>";
254
+ }
255
+ else {
256
+ echo "<strong><a href='$url' target='_blank'>View Page</a></strong>";
257
+ }
258
+ }
259
+ else {
260
+ $url = get_edit_post_link( get_the_ID() );
261
+ echo '<strong><a href="' . $url .'" style="color: #E54E3F">Requires Custom URL</a></strong>' ;
262
  }
263
  }
264
  }
268
  switch ( $cf_type ) {
269
  case "p":
270
  $data['post_type'] = "Page";
271
+ $data['url'] = get_home_url()."/".$cf_slug;
272
  break;
273
  case "hp":
274
  $data['post_type']= "Home Page";
275
+ $data['url'] = get_home_url().'/';
276
  break;
277
  case "np":
278
  $data['post_type'] = "404 Page";
279
+ $data['url'] = get_home_url().'/test-url-random';
280
+ case "clickgate":
281
+ $data['post_type'] = "ClickGate";
282
+ $data['url'] = get_home_url().'/?showclickgate=true';
283
  default:
284
+ $data['post_type'] = "Set Page Type";
285
+ $url = get_edit_post_link( get_the_ID() );
286
+ $data['url'] = $url;
287
+
288
  }
289
  return $data;
290
  }
301
  public function get_page_html( $funnel_id, $position, $meta, $postid, $thepage ) {
302
  $page_html = get_transient( "cf_page_html_{$funnel_id}" );
303
  if (get_post_meta( $postid, "cf_iframe_check", true ) == 'on') {
304
+ $page_html = $this->api->get_page_iframe( get_post_meta( $postid, "cf_iframe_url", true ), $meta, get_post_meta( $postid, "cf_seo_title", true ), get_post_meta( $postid, "cf_seo_desc", true ), get_post_meta( $postid, "cf_seo_image", true ), $postid, get_post_meta( $postid, "cf_page_url", true ), get_post_meta( $postid, "cf_favicon", true ), get_post_meta( $postid, "cf_author", true ), get_post_meta( $postid, "cf_keywords", true ), get_post_meta( $postid, "cf_wptracking_code", true ), get_post_meta( $postid, "cf_favicon_choice", true ) );
305
  return $page_html;
306
  }
307
  else {
309
  return $page_html;
310
  }
311
  else {
312
+ $page_html = $this->api->get_page_html( $funnel_id, $position, $meta, get_post_meta( $postid, "cf_seo_title", true ), get_post_meta( $postid, "cf_seo_desc", true), get_post_meta( $postid, "cf_seo_image", true ), get_post_meta( $postid, "cf_iframe_url", true ), $thepage, get_post_meta( $postid, "cf_page_url", true ), get_post_meta( $postid, "cf_favicon", true ), get_post_meta( $postid, "cf_author", true ), get_post_meta( $postid, "cf_keywords", true ), get_post_meta( $postid, "cf_wptracking_code", true ), get_post_meta( $postid, "cf_favicon_choice", true ) );
313
  return $page_html;
314
  }
315
  }
321
  return $post_id;
322
  if ( $post->post_type != 'clickfunnels' )
323
  return $post_id;
324
+ // Get Unique Slug
325
+ $cf_slug = $_POST['cf_slug'];
326
  $cf_type = $_POST['cf_type'];
327
  $cf_page = $_POST['cf_page'];
328
  $cf_thepage = $_POST['cf_thepage'];
 
329
  $cf_thefunnel = $_POST['cf_thefunnel'];
330
  $cf_seo_tags = $_POST['cf_seo_tags'];
331
  $cf_iframe_check = $_POST['cf_iframe_check'];
334
  $cf_seo_desc = $_POST['cf_seo_desc'];
335
  $cf_seo_image = $_POST['cf_seo_image'];
336
  $cf_page_url = $_POST['cf_page_url'];
337
+ $cf_favicon = $_POST['cf_favicon'];
338
+ $cf_author = $_POST['cf_author'];
339
+ $cf_keywords = $_POST['cf_keywords'];
340
+ $cf_footer_tracking = $_POST['cf_footer_tracking'];
341
+ $cf_head_tracking = $_POST['cf_head_tracking'];
342
+ $cf_wptracking_code = $_POST['cf_wptracking_code'];
343
+ $cf_favicon_choice = $_POST['cf_favicon_choice'];
344
  update_post_meta( $post_id, "cf_type", $cf_type );
345
  update_post_meta( $post_id, "cf_page", $cf_page );
346
  update_post_meta( $post_id, "cf_thepage", $cf_thepage );
353
  update_post_meta( $post_id, "cf_seo_desc", $cf_seo_desc );
354
  update_post_meta( $post_id, "cf_seo_image", $cf_seo_image );
355
  update_post_meta( $post_id, "cf_page_url", $cf_page_url );
356
+ update_post_meta( $post_id, "cf_favicon", $cf_favicon );
357
+ update_post_meta( $post_id, "cf_author", $cf_author );
358
+ update_post_meta( $post_id, "cf_head_tracking", $cf_head_tracking );
359
+ update_post_meta( $post_id, "cf_footer_tracking", $cf_footer_tracking );
360
+ update_post_meta( $post_id, "cf_keywords", $cf_keywords );
361
+ update_post_meta( $post_id, "cf_wptracking_code", $cf_wptracking_code );
362
+ update_post_meta( $post_id, "cf_favicon_choice", $cf_favicon_choice );
363
  $cf_options = get_option( "cf_options" );
364
  unset( $cf_options['pages'][$cf_slug] );
365
  update_option( "cf_options", $cf_options );
367
  $this->set_404( "", "" );
368
  if ( $this->is_home( $post_id ) )
369
  $this->set_home( "", "" );
370
+ if ( $this->is_clickgate( $post_id ) )
371
+ $this->set_clickgate( "", "" );
372
  switch ( $cf_type ) {
373
  case "p":
374
  $cf_options = get_option( "cf_options" );
381
  case "np": // 404 page
382
  $this->set_404( $post_id, $cf_thefunnel );
383
  break;
384
+ case "clickgate": // ClickGate
385
+ $this->set_clickgate( $post_id, $cf_thefunnel );
386
+ break;
387
  }
388
  }
389
  public function get_page( $page_slug ) {
428
  return true;
429
  return false;
430
  }
431
+
432
+ // ClickGate
433
+
434
+
435
+ public function set_clickgate( $post_id, $page_id ) {
436
+ $cf_options = get_option( "cf_options" );
437
+ $cf_options['clickgate']['post_id'] = $post_id;
438
+ $cf_options['clickgate']['page_id'] = $page_id;
439
+ update_option( "cf_options", $cf_options );
440
+ }
441
+ public function get_clickgate() {
442
+ $cf_options = get_option( "cf_options" );
443
+ return $cf_options['clickgate'];
444
+ }
445
+ public function is_clickgate( $post_id ) {
446
+ $cf_options = get_option( "cf_options" );
447
+ if ( $cf_options['clickgate']['post_id'] == $post_id )
448
+ return true;
449
+ return false;
450
+ }
451
  public function add_columns( $columns ) {
452
  $new_columns = array();
453
  $new_columns['cb'] = $columns['cb'];
454
 
455
+ $new_columns['cf_post_name'] = "Page";
456
+ // $new_columns['cf_thepage'] = "Edit";
457
+
458
+ $new_columns['cf_post_funnel'] = "Funnel";
459
 
460
  $new_columns['cf_path'] = 'View';
461
  $new_columns['cf_openinEditor'] = 'Editor';
462
  $new_columns['cf_type'] = 'Type';
463
+ $new_columns['cf_metaupdate'] = '';
464
  return $new_columns;
465
  }
466
  function view( $view, $data = array() ) {
512
  $data['cf_type'] = 'np';
513
  $data['cf_page'] = $this->get_404();
514
  }
515
+ if ( $this->is_clickgate( $id ) ) {
516
+ $data['cf_type'] = 'clickgate';
517
+ $data['cf_page'] = $this->get_clickgate();
518
+ }
519
  if ( $this->get_page_mode( "edit" ) )
520
  $data['delete_link'] = get_delete_post_link( $id );
521
  else
547
  }
548
  }
549
  public function success_message() {
550
+ echo '<div id="message" class="updated"><p><strong>Updated ClickFunnels Page.</strong></p></div>';
551
  }
552
  public function error_message() {
553
+ echo '<div id="message" class="badAPI error notice" style="width: 733px;padding: 10px 12px;font-weight: bold"><i class="fa fa-times" style="margin-right: 5px;"></i> Error in ClickFunnels plugn, please check <a href="edit.php?post_type=clickfunnels&page=cf_api&error=compatibility">Settings > Compatibility Check</a> for details.</div>';
554
  }
555
  public function load_actual_scripts() {
556
+ // wp_register_style( "clickfunnels_bootstrap", CF_URL."css/bootstrap.css" );
557
+ // wp_enqueue_style( "clickfunnels_bootstrap" );
558
+ // wp_enqueue_style( "clickfunnels_admin" );
559
+ // wp_register_script( "clickfunnels_admin", CF_URL."js/admin.js" );
560
+ // wp_enqueue_script( "clickfunnels_admin" );
561
  }
562
  public function remove_save_box() {
563
  global $wp_meta_boxes;
604
  }
605
  }
606
  add_action( 'admin_menu', 'cf_plugin_submenu' );
 
 
 
607
 
608
+ function cf_plugin_submenu() {
609
+ add_submenu_page(
610
+ 'edit.php?post_type=clickfunnels',
611
+ __( 'ClickFunnels Shortcodes', 'clickfunnels-menu' ),
612
+ __( 'Shortcodes', 'clickfunnels-menu' ),
613
+ 'manage_options',
614
+ 'clickfunnels_shortcodes',
615
+ 'clickfunnels_shortcodes'
616
+ );
617
+ if (get_option( 'clickfunnels_agency_hide_settings', '' ) != 'hide') {
618
+ add_submenu_page(
619
+ 'edit.php?post_type=clickfunnels',
620
+ __( 'Settings',
621
+ 'clickfunnels-menu' ),
622
+ __( 'Settings', 'clickfunnels-menu' ),
623
+ 'manage_options',
624
+ 'cf_api',
625
+ 'cf_api_settings_page'
626
+ );
627
+ } else {
628
+ add_submenu_page(
629
+ null,
630
+ __( 'Settings',
631
+ 'clickfunnels-menu' ),
632
+ __( 'Settings', 'clickfunnels-menu' ),
633
+ 'manage_options',
634
+ 'cf_api',
635
+ 'cf_api_settings_page'
636
+ );
637
  }
638
+ add_submenu_page(
639
+ null,
640
+ __( 'Reset Data', 'clickfunnels-menu' ),
641
+ __( 'Reset Data', 'clickfunnels-menu' ),
642
+ 'manage_options',
643
+ 'reset_data',
644
+ 'clickfunnels_reset_data_show_page'
645
+ );
646
  }
647
+
648
+ function clickfunnels_reset_data_show_page()
649
+ {
650
+ include 'reset_data.php';
651
  }
652
  function cf_api_settings_page() {
653
  include 'access.php';
654
  }
655
+ function clickfunnels_shortcodes() {
656
+ include 'post_shortcode.php';
657
  }
658
  function clickfunnels_loadjquery($hook) {
659
  if( $hook != 'edit.php' && $hook != 'post.php' && $hook != 'post-new.php' ) {
664
  add_action('admin_enqueue_scripts', 'clickfunnels_loadjquery');
665
  $api = new CF_API();
666
  $click = new ClickFunnels( $api );
667
+ // Register homepage/404 for reading settings
668
+ add_action('admin_init', 'clickfunnels_reading_settings_admin_init');
669
+ function clickfunnels_reading_settings_admin_init(){
670
 
671
+ add_settings_section( 'clickfunnels_reading_settings_notify_home_section', '<img style="margin-right: 5px;margin-bottom: -10px" src="https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png" /> ClickFunnels Home / 404 / ClickGate Page Settings', 'clickfunnels_reading_settings_setting_input', 'reading' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
672
  }
673
 
674
+ // ****************************************************************************************************************************
675
+ // Home and 404 Page Check
676
+ function clickfunnels_reading_settings_setting_input() {
677
+ $cf_options = get_option( "cf_options" );
678
+ $thehome = $cf_options['home'];
679
+ if ( $thehome['page_id'] ) {
680
+ echo '<span style="display: block;margin-bottom: 8px;font-weight: bold;color: #0073AA"><img style="margin-right: 4px;width: 13px;" src="https://images.clickfunnels.com/93/a832907e2d11e5bc8533cec9213fdd/1446134982_accept.png" /><a href="post.php?post='.$thehome['post_id'].'&action=edit">Home Page is Enabled</a></span>';
681
+ } else {
682
+ echo '<span style="display: block;margin-bottom: 8px;font-style: italic;opacity: .7">Home Page is Disabled</span>';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
683
  }
684
+ $the404 = $cf_options['404'];
685
+ if ( $the404['page_id'] ) {
686
+ echo '<span style="display: block;margin-bottom: 8px;font-weight: bold;color: #0073AA"><img style="margin-right: 4px;width: 13px;" src="https://images.clickfunnels.com/93/a832907e2d11e5bc8533cec9213fdd/1446134982_accept.png" /><a href="post.php?post='.$the404['post_id'].'&action=edit">404 Page is Enabled</a></span>';
687
+ } else {
688
+ echo '<span style="display: block;margin-bottom: 8px;font-style: italic;opacity: .7">404 Page is Disabled</span>';
689
  }
690
+ $theClickGate = $cf_options['clickgate'];
691
+ if ( $theClickGate['page_id'] ) {
692
+ echo '<span style="display: block;margin-bottom: 8px;font-weight: bold;color: #0073AA"><img style="margin-right: 4px;width: 13px;" src="https://images.clickfunnels.com/93/a832907e2d11e5bc8533cec9213fdd/1446134982_accept.png" /><a href="post.php?post='.$theClickGate['post_id'].'&action=edit">ClickGate Page is Enabled</a></span>';
693
+ } else {
694
+ echo '<span style="display: block;margin-bottom: 8px;font-style: italic;opacity: .7">ClickGate is Disabled</span>';
 
 
695
  }
 
696
  }
697
 
698
 
699
+ // ****************************************************************************************************************************
700
+ // Blog Post Embed Shortcode
701
+ function clickfunnels_embed( $atts ) {
702
+ $a = shortcode_atts( array(
703
+ 'height' => '650',
704
+ 'scroll' => 'on',
705
+ 'url' => 'https://clickfunnels.com/',
706
+ ), $atts );
707
 
708
+ return "<iframe src='{$a['url']}' width='100%' height='{$a['height']}' frameborder='0' scrolling='{$a['scroll']}'></iframe>";
709
+ }
710
+ add_shortcode( 'clickfunnels_embed', 'clickfunnels_embed' );
711
 
712
+ // ****************************************************************************************************************************
713
+ // ClickPop Shortcode
714
+ function clickfunnels_clickpop_script() {
715
+ // wp_register_script( 'cf_clickpop', 'https://app.clickfunnels.com/assets/cfpop.js', array(), '1.0.0', true );
716
+ wp_register_script( 'cf_clickpop', 'http://localhost:8080/wordpress/test_cfpop.js', array(), '1.0.0', true );
717
+ wp_enqueue_script( 'cf_clickpop' );
718
+ }
719
+ add_action( 'wp_enqueue_scripts', 'clickfunnels_clickpop_script' );
720
+ function clickfunnels_clickpop( $atts, $content = null ) {
721
+ $a = shortcode_atts( array(
722
+ 'exit' => 'false',
723
+ 'delay' => '',
724
+ 'id' => '',
725
+ 'subdomain' => '',
726
+ ), $atts );
727
+ if ($a['delay'] != '') {
728
+ $delayTime = "{$a['delay']}000";
729
+ $delay_js = "<script>window.onload=function(){setTimeout(clickpop_timed_click, $delayTime);}; function clickpop_timed_click(){for (links=document.getElementsByTagName('a'), i=0; i < links.length; ++i) link=links[i], null !=link.getAttribute('href') && link.getAttribute('href').match(/\/optin_box\/(([a-zA-Z]|\d){16})/i) && (cf_showpopup(link.getAttribute('href'))); function openPopup(e){if (ID=e.hashCode(), currentPopup=ID, cf_iframe=document.getElementById(ID), null==document.getElementById(ID)){var t=document.getElementsByTagName(\"body\"), n=e; document.body.innerHTML +='<iframe src=\"' + n + '?iframe=true\" id=\"' + ID + '\" style=\"position: fixed !important; left: 0px; top: 0px !important; width: 100%; border: none; z-index: 999999999999999 !important; visibility: hidden; \"></iframe>'}document.getElementById(ID).style.width=viewWidth + \"px\", document.getElementById(ID).style.height=viewHeight + \"px\", document.getElementById(ID).style.visibility=\"visible\", makeWindowModal(); var i=document.documentElement, t=document.body, o=i && i.scrollLeft || t && t.scrollLeft || 0, d=i && i.scrollTop || t && t.scrollTop || 0; document.getElementById(ID).style.top=0 + \"px\", document.getElementById(ID).style.left=o + \"px\"; var l=0; return reanimateMessageIntervalID=setInterval(function(){iframe=document.getElementById(ID), void 0 !=iframe && iframe.contentWindow.postMessage(\"reanimate\", \"*\"), ++l >=15 && clearInterval(reanimateMessageIntervalID)}, 1e3), !1}function cf_showpopup(url){openPopup(url);}}</script>";
730
+ } else {
731
+ $delayTime = '';
732
+ $delay_js = "";
733
+ }
734
+ return "<a href='https://{$a['subdomain']}.clickfunnels.com/optin_box/{$a['id']}' data-exit='{$a['exit']}'>$content</a>$delay_js";
735
+ }
736
+ add_shortcode( 'clickfunnels_clickpop', 'clickfunnels_clickpop' );
737
 
738
+ // ClickGate Shortcode
739
+ function clickfunnels_clickgate( $atts ) {
740
+ $a = shortcode_atts( array(
741
+ 'url' => '',
742
+ ), $atts );
743
+ return "<script>window.onload=function(){openPopup('{$a['url']}')}; function clickpop_timed_click(){for (links=document.getElementsByTagName('a'), i=0; i < links.length; ++i) link=links[i], null !=link.getAttribute('href') && link.getAttribute('href').match(/\/optin_box\/(([a-zA-Z]|\d){16})/i) && (cf_showpopup(link.getAttribute('href'))); function openPopup(e){if (ID=e.hashCode(), currentPopup=ID, cf_iframe=document.getElementById(ID), null==document.getElementById(ID)){var t=document.getElementsByTagName(\"body\"), n=e; document.body.innerHTML +='<iframe src=\"' + n + '?iframe=true\" id=\"' + ID + '\" style=\"position: fixed !important; left: 0px; top: 0px !important; width: 100%; border: none; z-index: 999999999999999 !important; visibility: hidden; \"></iframe>'}document.getElementById(ID).style.width=viewWidth + \"px\", document.getElementById(ID).style.height=viewHeight + \"px\", document.getElementById(ID).style.visibility=\"visible\", makeWindowModal(); var i=document.documentElement, t=document.body, o=i && i.scrollLeft || t && t.scrollLeft || 0, d=i && i.scrollTop || t && t.scrollTop || 0; document.getElementById(ID).style.top=0 + \"px\", document.getElementById(ID).style.left=o + \"px\"; var l=0; return reanimateMessageIntervalID=setInterval(function(){iframe=document.getElementById(ID), void 0 !=iframe && iframe.contentWindow.postMessage(\"reanimate\", \"*\"), ++l >=15 && clearInterval(reanimateMessageIntervalID)}, 1e3), !1}function cf_showpopup(url){openPopup(url);}}</script>";
744
 
745
+ }
746
+ add_shortcode( 'clickfunnels_clickgate', 'clickfunnels_clickgate' );
747
+
748
+ // ****************************************************************************************************************************
749
+ // ClickOptin Shortcode
750
+ function clickfunnels_clickoptin( $atts ) {
751
+ $a = shortcode_atts( array(
752
+ 'button_text' => 'Subscribe To Our Mailing List',
753
+ 'button_color' => 'blue',
754
+ 'placeholder' => 'Enter Your Email Address Here',
755
+ 'id' => '#',
756
+ 'subdomain' => '#',
757
+ 'input_icon' => 'show',
758
+ 'redirect' => '',
759
+ ), $atts );
760
+ if ($a['button_text'] == '') {
761
+ $button_text = 'Subscribe To Our Mailing List';
762
+ } else {
763
+ $button_text = $a['button_text'];
764
+ }
765
 
766
+ if ($a['placeholder'] == '') {
767
+ $placeholder = 'Enter Your Email Address Here';
768
+ } else {
769
+ $placeholder = $a['placeholder'];
770
+ }
771
+ return "<div id='clickoptin_cf_wrapper_".$a['id']."' class='clickoptin_".$a['theme_style']."'>
772
+ <input type='text' id='clickoptin_cf_email_".$a['id']."' placeholder='".$placeholder."' class='clickoptin_".$a['input_icon']."' />
773
+ <span class='clickoptin_".$a['button_color']."' id='clickoptin_cf_button_".$a['id']."'>".$button_text."</span>
774
+ </div>
775
+ <script>
776
+ if (!window.jQuery) {
777
+ var jq = document.createElement('script'); jq.type = 'text/javascript';
778
+ jq.src = 'wp-content/plugins/clickfunnels/jquery.js';
779
+ document.getElementsByTagName('head')[0].appendChild(jq);
780
+ var jQueries = jQuery.noConflict();
781
 
782
+ jQueries(document).ready(function($) {
783
+ jQueries( '#clickoptin_cf_button_".$a['id']."' ).click(function() {
784
+ var check_email = jQueries( '#clickoptin_cf_email_".$a['id']."' ).val();
785
+ if (check_email != '' && /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(check_email)) {
786
+ jQueries( '#clickoptin_cf_email_".$a['id']."' ).addClass('clickoptin_cf_email_green');
787
+ if('".$a['redirect']."' == 'newtab') {
788
+ window.open('https://".$a['subdomain'].".clickfunnels.com/instant_optin/".$a['id']."/'+jQueries( '#clickoptin_cf_email_".$a['id']."' ).val(), '_blank');
789
+ }
790
+ else {
791
+ window.location.href = 'https://".$a['subdomain'].".clickfunnels.com/instant_optin/".$a['id']."/'+jQueries( '#clickoptin_cf_email_".$a['id']."' ).val();
792
+ }
793
+ }
794
+ else {
795
+ jQueries( '#clickoptin_cf_email_".$a['id']."' ).addClass('clickoptin_cf_email_red');
796
+ }
797
+ });
798
+ });
799
+ }
800
+ else {
801
+ var jq = document.createElement('script'); jq.type = 'text/javascript';
802
+ jq.src = 'wp-content/plugins/clickfunnels/jquery.js';
803
+ document.getElementsByTagName('head')[0].appendChild(jq);
804
+ var $ = jQuery.noConflict();
805
 
806
+ $(document).ready(function($) {
807
+ $( '#clickoptin_cf_button_".$a['id']."' ).click(function() {
808
+ var check_email = $( '#clickoptin_cf_email_".$a['id']."' ).val();
809
+ if (check_email != '' && /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(check_email)) {
810
+ $( '#clickoptin_cf_email_".$a['id']."' ).addClass('clickoptin_cf_email_green');
811
+ if('".$a['redirect']."' == 'newtab') {
812
+ window.open('https://".$a['subdomain'].".clickfunnels.com/instant_optin/".$a['id']."/'+$( '#clickoptin_cf_email_".$a['id']."' ).val(), '_blank');
813
+ }
814
+ else {
815
+ window.location.href = 'https://".$a['subdomain'].".clickfunnels.com/instant_optin/".$a['id']."/'+$( '#clickoptin_cf_email_".$a['id']."' ).val();
816
+ }
817
+ }
818
+ else {
819
+ $( '#clickoptin_cf_email_".$a['id']."' ).addClass('clickoptin_cf_email_red');
820
+ }
821
+ });
822
+ });
823
+ }
824
+
825
+
826
+ </script>
827
+ <style>
828
+ #clickoptin_cf_wrapper_".$a['id']." * {
829
+ margin: 0;
830
+ padding: 0;
831
+ position: relative;
832
+ font-family: Helvetica, sans-serif;
833
+ }
834
+ #clickoptin_cf_wrapper_".$a['id']." {
835
+ padding: 5px 15px;
836
+ border-radius: 4px;
837
+ width: 100%;
838
+ margin: 20px 0;
839
+ }
840
+ #clickoptin_cf_wrapper_".$a['id'].".clickoptin_dropshadow_off {
841
+ box-shadow: none;
842
+ }
843
+ #clickoptin_cf_email_".$a['id']." {
844
+ display: block;
845
+ background: #fff;
846
+ color: #444;
847
+ border-radius: 5px;
848
+ padding: 10px;
849
+ width: 100%;
850
+ font-size: 15px;
851
+ border: 2px solid #eee;
852
+ text-align: left;
853
+ }
854
+ #clickoptin_cf_email_".$a['id'].".clickoptin_show {
855
+ background: #fff url(https://cdn2.iconfinder.com/data/icons/ledicons/email.png) no-repeat right;
856
+ background-position: 97% 50%;
857
+ }
858
+ #clickoptin_cf_email_".$a['id'].".clickoptin_cf_email_red {
859
+ border: 2px solid #E54E3F;
860
+ }
861
+ #clickoptin_cf_email_".$a['id'].".clickoptin_cf_email_green {
862
+ border: 2px solid #339933;
863
+ }
864
+ #clickoptin_cf_button_".$a['id']." {
865
+ display: block;
866
+ font-weight: bold;
867
+ background: #0166AE;
868
+ border: 1px solid #01528B;
869
+ border-bottom: 3px solid #01528B;
870
+ color: #fff;
871
+ border-radius: 5px;
872
+ padding: 8px;
873
+ width: 100%;
874
+ font-size: 16px;
875
+ margin-top: 8px;
876
+ cursor: pointer;
877
+ text-align: center;
878
+ }
879
+ #clickoptin_cf_button_".$a['id'].".clickoptin_red {
880
+ background: #F05A38;
881
+ border: 1px solid #D85132;
882
+ border-bottom: 3px solid #D85132;
883
+ }
884
+ #clickoptin_cf_button_".$a['id'].".clickoptin_green {
885
+ background: #339933;
886
+ border: 1px solid #2E8A2E;
887
+ border-bottom: 3px solid #2E8A2E;
888
+ }
889
+ #clickoptin_cf_button_".$a['id'].".clickoptin_black {
890
+ background: #23282D;
891
+ border: 1px solid #111;
892
+ border-bottom: 3px solid #111;
893
+ }
894
+ #clickoptin_cf_button_".$a['id'].".clickoptin_grey {
895
+ background: #fff;
896
+ color: #0166AE;
897
+ border: 1px solid #eee;
898
+ border-bottom: 3px solid #eee;
899
+ }
900
+ </style>";
901
+ }
902
+ add_shortcode( 'clickfunnels_clickoptin', 'clickfunnels_clickoptin' );
903
 
904
+ // ****************************************************************************************************************************
905
+ // ClickFunnels Shortcode Widget
906
+ add_filter('widget_text', 'do_shortcode');
907
+ class clickfunnels_widget extends WP_Widget {
908
 
909
+ function __construct() {
910
+ parent::__construct(
911
+ 'clickfunnels_widget',
912
+ __('ClickFunnels Shortcode', 'clickfunnels_widget_domain'),
913
+ array( 'description' => __( 'Paste your ClickFunnels shortcodes here to embed an iframe, a ClickPop link or show a ClickForm box in your sidebar or footer.', 'clickfunnels_widget_domain' ), )
914
+ );
915
+ }
916
 
917
+ public function widget( $args, $instance ) {
918
+ $title = apply_filters( 'widget_title', $instance['title'] );
919
+ $shortcode = apply_filters( 'widget_title', $instance['shortcode'] );
920
+ echo $args['before_widget'];
921
+ if ( ! empty( $title ) ) echo '<h3 style="text-align: center;">'.$title.'</h3>';
922
+ if ( ! empty( $shortcode ) ) echo do_shortcode(htmlspecialchars_decode(($shortcode)));
923
+ echo $args['after_widget'];
924
+ }
925
 
926
+ public function form( $instance ) {
927
+ if ( isset( $instance[ 'title' ] ) ) {
928
+ $title = $instance[ 'title' ];
929
+ }
930
+ else {
931
+ $title = __( '', 'clickfunnels_widget_domain' );
932
+ }
933
+ if ( isset( $instance[ 'shortcode' ] ) ) {
934
+ $shortcode = $instance[ 'shortcode' ];
935
+ }
936
+ else {
937
+ $shortcode = __( '', 'clickfunnels_widget_domain' );
938
+ }
939
+ // Widget admin form
940
+ ?>
941
+ <p>
942
+ <label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Headline:' ); ?></label>
943
+ <input type="text" class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" value="<?php echo esc_attr( $title ); ?>" />
944
+ </p>
945
+ <p>
946
+ <label for="<?php echo $this->get_field_id( 'shortcode' ); ?>"><?php _e( 'Shortcode:' ); ?></label>
947
+ <textarea style="height: 130px;font-size: 12px;color: #555;" class="widefat" id="<?php echo $this->get_field_id( 'shortcode' ); ?>" name="<?php echo $this->get_field_name( 'shortcode' ); ?>" ><?php echo esc_attr( $shortcode ); ?></textarea>
948
+ </p>
949
+ <?php
950
+ }
951
 
952
+ public function update( $new_instance, $old_instance ) {
953
+ $instance = array();
954
+ $instance['title'] = ( ! empty( $new_instance['title'] ) ) ? $new_instance['title'] : '';
955
+ $instance['shortcode'] = ( ! empty( $new_instance['shortcode'] ) ) ? $new_instance['shortcode'] : '';
956
+ return $instance;
957
+ }
958
+ }
959
+ function clickfunnels_widget_load() {
960
+ register_widget( 'clickfunnels_widget' );
961
+ }
962
+ add_action( 'widgets_init', 'clickfunnels_widget_load' );
963
 
964
 
965
+ // Check for agency check if null make it ''
966
+ function clickfunnels_plugin_activated() {
967
+ if (!get_option('clickfunnels_agency_group_tag')) {
968
+ update_option('clickfunnels_agency_group_tag', 'off');
969
+ }
970
+ }
971
+ register_activation_hook( __FILE__, 'clickfunnels_plugin_activated' );
972
 
973
+ // Pretty up the manage CF pages area
974
+ add_action('all_admin_notices', 'clickfunnels_edit_page_settings');
975
+ function clickfunnels_edit_page_settings() {
976
+ $url = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
977
+ if ($_GET['post_type'] == 'clickfunnels' && strpos($url,'edit.php') !== false && !$_GET['page']) {
978
+ ?>
979
+ <script>
980
+ jQuery(function() {
981
+ jQuery('.wrap h1').attr('style', 'font-weight: bold;');
982
+ jQuery('.wrap h1').first().prepend('<img src="https://appassets3.clickfunnels.com/assets/favicon-8c74cad77e4e123f7dbb46b33e6de10c.png" style="margin-right: 5px;margin-bottom: -7px" />');
983
+ jQuery('.wrap h1').first().append('<a href="https://support.clickfunnels.com/support/solutions/5000164139" target="_blank" class="page-title-action">Support Desk</a>');
984
+ jQuery('.wrap h1').first().append('<a href="#" target="_blank" id="cf_updatemetadatas" class="page-title-action">Check Meta Data</a>');
985
+ });
986
+ </script>
987
+ <?php
988
+ }
989
+ }
990
 
991
+ // Click Refresh Pages Button
992
+ add_action('all_admin_notices', 'clickfunnels_check_meta_data');
993
+ function clickfunnels_check_meta_data() {
994
+ $url = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
995
+ if ($_GET['post_type'] == 'clickfunnels' && strpos($url,'edit.php') !== false && !$_GET['page']) {
996
+ ?>
997
+ <style>#cf_metaupdate { width: 75px; font-size: 11px; color: #777; } #cf_thepage { width: 100px;}</style>
998
+ <script>
999
+ jQuery(function() {
1000
+ jQuery('#cf_updatemetadatas').click(function(e) {
1001
+ e.preventDefault();
1002
+ jQuery('.cf_metaupdate img').fadeIn();
1003
 
1004
+ // Generate Links to Test
1005
+ var url_start = 'https://api.clickfunnels.com/funnels/';
1006
+ var url_end = '.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
1007
+ var urls = [];
1008
+ get_urls( jQuery( '.metainfo_id' ).toArray() );
1009
+ function get_urls( divs ) {
1010
+ for ( var i = 0; i < divs.length; i++ ) {
1011
+ urls.push( url_start+divs[ i ].innerHTML+url_end+'{#}'+divs[ i ].getAttribute('data-id')+'{#}'+divs[ i ].getAttribute('data-pageid')+'{#}'+divs[ i ].getAttribute('data-pagekey'));
1012
+ }
1013
+ }
1014
+ // Ping URL
1015
+ var request_image = function(url) {
1016
+ return new Promise(function(resolve, reject) {
1017
+ var img = new Image();
1018
+ img.onload = function() { resolve(img); };
1019
+ img.onerror = function() { reject(url); };
1020
+ img.src = url + '?random-no-cache=' + Math.floor((1 + Math.random()) * 0x10000).toString(16);
1021
+ });
1022
+ };
1023
+ var ping = function(url) {
1024
+ return new Promise(function(resolve, reject) {
1025
+ var start = (new Date()).getTime();
1026
+ var response = function() {
1027
+ var delta = ((new Date()).getTime() - start);
1028
+ delta /= 4;
1029
+ resolve(delta);
1030
+ };
1031
+ request_image(url).then(response).catch(response);
1032
+ setTimeout(function() { reject(Error('Timeout')); }, 5000);
1033
+ });
1034
+ };
1035
 
 
 
 
 
 
 
1036
 
1037
+ // Loop through urls and get a JSON request to match meta data.
1038
+ for (var i=0;i<urls.length;i++) {
1039
+ data = urls[i].split('{#}');
1040
+ url = data[0];
1041
+ id = data[1];
1042
+ pageid = data[2];
1043
+ pagekey = data[2];
1044
+ GetJSONResult(url, id, pageid, pagekey);
1045
+ }
1046
+ function GetJSONResult(url, postid, pageid, pagekey)
1047
+ {
1048
+ jQuery.getJSON(url,
1049
+ function(data){
1050
+ jQuery.each(data.funnel_steps, function() {
1051
+ if ( this.wp_friendly == true && this.pages != '' && this.id == pageid ) {
1052
 
1053
+ if (encodeURI(this.pages[0].metatags) == jQuery(".metainfo_check[data-id='"+postid+"']").html()) {
1054
+ var do_ping_error = function() {
1055
+ ping('https://api.clickfunnels.com/s3_proxy/'+pagekey+'?preview=true').then(function(delta) {}).catch(function(error) {});
1056
+ };
1057
+ jQuery(".loadingcf_meta[data-id='"+postid+"']").attr('style', 'color: #339933');
1058
+ jQuery(".loadingcf_meta[data-id='"+postid+"']").html('Success');
1059
+ setTimeout(function() {
1060
+ jQuery(".loadingcf_meta[data-id='"+postid+"']").fadeOut();
1061
+ }, 2500);
1062
 
1063
+ do_ping_error();
1064
+ }
1065
+ else {
1066
+ var do_ping = function() {
1067
+ ping('https://api.clickfunnels.com/s3_proxy/'+pagekey+'?preview=true').then(function(delta) {}).catch(function(error) {});
1068
+ };
1069
+ do_ping();
1070
+ jQuery(".loadingcf_meta[data-id='"+postid+"']").attr('style', 'color: #3C9BD5');
1071
+ jQuery(".loadingcf_meta[data-id='"+postid+"']").parent().parent().attr('style', 'color: #FFFDD1');
1072
+ jQuery(".loadingcf_meta[data-id='"+postid+"']").html('<a href="post.php?post='+postid+'&action=edit&updatemeta=true">Update</a>');
1073
+ }
1074
+ }
1075
+ })
1076
+ }).done(function() {
1077
+ // show a message
1078
+ });
1079
+ }
1080
+ });
1081
+ });
1082
+ </script>
1083
+ <?php
1084
+ }
1085
+ }
1086
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
css/admin.css CHANGED
@@ -20,7 +20,7 @@
20
  .apiHeader {
21
  background: #39464E ;
22
  border-bottom: 3px solid rgba(0,0,0,0.25);
23
- padding: 10px;
24
  padding-top: 15px;
25
  border-top-left-radius: 5px;
26
  border-top-right-radius: 5px;
@@ -47,7 +47,7 @@
47
  padding: 7px;
48
  padding-left: 12px;
49
  padding-right: 12px;
50
- margin-top: 0px !important;
51
  text-transform: uppercase;
52
  text-decoration: none;
53
  font-size: 14px;
@@ -62,7 +62,10 @@
62
  background-color: #0166AE;
63
  border-bottom: 3px solid rgba(0,0,0,0.25);
64
  color: #fff;
65
- padding: 15px 18px;
 
 
 
66
  }
67
  .apiSubHeader h2 {
68
  margin: 0 !important;
@@ -79,7 +82,7 @@
79
  text-shadow: 1px 1px 0 #0367AE;
80
  text-decoration: none;
81
  padding-top: 15px;
82
- margin-top: 6px;
83
  font-size: 14px;
84
  border: 2px solid #1D81C8;
85
  background-color: #054B7C;
@@ -93,7 +96,7 @@
93
  padding-right: 12px;
94
  text-transform: uppercase;
95
  text-decoration: none;
96
- font-size: 12px;
97
  }
98
  .apiSubHeader a.editThisPage i {
99
  margin-right: 4px;
@@ -104,6 +107,32 @@
104
  background-color: rgba(0, 0, 0, .6);
105
  color: #fff !important;
106
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
107
  .apiSubHeader a{
108
  text-shadow: 1px 1px 0 #0367AE;
109
  color: #fff;
@@ -132,11 +161,9 @@
132
  display: none !important;
133
  }
134
  #loading {
135
- float: left;
136
- margin-left: 5px;
137
  display: none;
138
- margin-top: 6px;
139
- color: #999;
140
  }
141
  #apiFooter {
142
  background: #fafafa;
@@ -153,8 +180,10 @@
153
  }
154
  .bootstrap-wp {
155
  overflow: hidden;
156
- border: 10px solid #fff;
 
157
  padding-top: none;
 
158
  }
159
  .deleteButton {
160
  padding: 5px;
@@ -210,20 +239,10 @@
210
  margin-right: 4px;
211
  }
212
  #message {
213
- width: 758px;
214
- padding: 10px 10px;
215
- display: block;
216
- z-index: 99999;
217
- position: relative;
218
- color: #fff;
219
- border: 1px solid #024D82;
220
- border-bottom: 2px solid #024D82;
221
- text-shadow: 1px 1px 0 #024D82;
222
- padding: 0 10px;
223
- font-size: 16px;
224
  margin-bottom: 0;
225
- border-radius: 5px;
226
- background: #1069AC ;
227
  }
228
  .noAPI {
229
  padding: 10px;
@@ -243,11 +262,13 @@
243
 
244
  }
245
  .control-group {
246
- padding-left: 25px
 
 
247
  }
248
  #autosaving {
249
  display: none;
250
- width: 780px;
251
  height: 310px;
252
  position: absolute;
253
  z-index: 2222;
@@ -286,21 +307,442 @@
286
  display: none;
287
  }
288
  .bootstrap-wp .form-horizontal .controls {
289
- margin-left: 151px;
290
  }
291
- .bootstrap-wp .form-horizontal .control-label {
292
- float: left;
293
- width: 140px;
 
 
 
 
 
 
 
 
 
 
 
294
  padding-top: 5px;
295
- text-align: right;
 
 
 
 
 
 
 
 
 
 
 
296
  }
297
  .bootstrap-wp .input-xlarge {
298
- width: 576px !important;
299
  margin-right: 20px;
300
  }
 
 
 
301
  .cf_no_api {
302
  display: none;
303
  }
304
  input.input-xlarge {
305
  padding: 7px !important;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
306
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
20
  .apiHeader {
21
  background: #39464E ;
22
  border-bottom: 3px solid rgba(0,0,0,0.25);
23
+ padding: 10px 7px;
24
  padding-top: 15px;
25
  border-top-left-radius: 5px;
26
  border-top-right-radius: 5px;
47
  padding: 7px;
48
  padding-left: 12px;
49
  padding-right: 12px;
50
+ margin-top: -4px !important;
51
  text-transform: uppercase;
52
  text-decoration: none;
53
  font-size: 14px;
62
  background-color: #0166AE;
63
  border-bottom: 3px solid rgba(0,0,0,0.25);
64
  color: #fff;
65
+ padding: 15px 16px;
66
+ }
67
+ .apiSubHeader small {
68
+ opacity: .7 !important;
69
  }
70
  .apiSubHeader h2 {
71
  margin: 0 !important;
82
  text-shadow: 1px 1px 0 #0367AE;
83
  text-decoration: none;
84
  padding-top: 15px;
85
+ margin-top: 4px;
86
  font-size: 14px;
87
  border: 2px solid #1D81C8;
88
  background-color: #054B7C;
96
  padding-right: 12px;
97
  text-transform: uppercase;
98
  text-decoration: none;
99
+ font-size: 13px;
100
  }
101
  .apiSubHeader a.editThisPage i {
102
  margin-right: 4px;
107
  background-color: rgba(0, 0, 0, .6);
108
  color: #fff !important;
109
  }
110
+ .apiSubHeader span.editThisPage2 {
111
+ float: right;
112
+ padding: 5px 10px;
113
+ color: #FFFB87;
114
+ text-decoration: none;
115
+ padding-top: 15px;
116
+ margin-top: 6px;
117
+ font-size: 14px;
118
+ border: 2px solid #FFB700;
119
+ background-color: rgba(0,0,0,0.5);
120
+ color: #fff !important;
121
+ font-weight: 700;
122
+ -webkit-border-radius: 4px;
123
+ -moz-border-radius: 4px;
124
+ border-radius: 4px;
125
+ padding: 7px;
126
+ padding-left: 12px;
127
+ padding-right: 12px;
128
+ text-transform: uppercase;
129
+ text-decoration: none;
130
+ font-size: 13px;
131
+ }
132
+ .apiSubHeader span.editThisPage2 i {
133
+ margin-right: 4px;
134
+ }
135
+
136
  .apiSubHeader a{
137
  text-shadow: 1px 1px 0 #0367AE;
138
  color: #fff;
161
  display: none !important;
162
  }
163
  #loading {
164
+
165
+
166
  display: none;
 
 
167
  }
168
  #apiFooter {
169
  background: #fafafa;
180
  }
181
  .bootstrap-wp {
182
  overflow: hidden;
183
+ background: #F6F9FB;
184
+ border: 10px solid #F6F9FB;
185
  padding-top: none;
186
+ border-radius: none !important;
187
  }
188
  .deleteButton {
189
  padding: 5px;
239
  margin-right: 4px;
240
  }
241
  #message {
242
+ width: 708px;
243
+ margin: 10px;
244
+ margin-top: 20px;
 
 
 
 
 
 
 
 
245
  margin-bottom: 0;
 
 
246
  }
247
  .noAPI {
248
  padding: 10px;
262
 
263
  }
264
  .control-group {
265
+ padding-left: 25px;
266
+ margin-bottom: 15px;
267
+ clear: both;
268
  }
269
  #autosaving {
270
  display: none;
271
+ width: 980px;
272
  height: 310px;
273
  position: absolute;
274
  z-index: 2222;
307
  display: none;
308
  }
309
  .bootstrap-wp .form-horizontal .controls {
310
+ margin-left: 25px;
311
  }
312
+ .bootstrap-wp a {
313
+ text-decoration: none;
314
+ font-weight: bold;
315
+ }
316
+ .bootstrap-wp hr {
317
+ margin: 20px 0;
318
+ border: none;
319
+ border-top: 1px solid #eee;
320
+ }
321
+ .control-label {
322
+ display: block;
323
+ padding-top: 5px;
324
+ float: none !important;
325
+ width: 100% !important;
326
  padding-top: 5px;
327
+ padding-left: 26px !important;
328
+ font-size: 14px !important;
329
+ clear: both;
330
+ color: #0166AE !important;
331
+ text-align: left!important;
332
+ margin-bottom: 10px !important;
333
+ font-weight: bold !important;
334
+ }
335
+ .control-label small {
336
+ float: right;
337
+ color: #666;
338
+ margin-right: 25px;
339
  }
340
  .bootstrap-wp .input-xlarge {
341
+ width: 100% !important;
342
  margin-right: 20px;
343
  }
344
+ .bootstrap-wp a {
345
+ color: #0166AE
346
+ }
347
  .cf_no_api {
348
  display: none;
349
  }
350
  input.input-xlarge {
351
  padding: 7px !important;
352
+ padding: 10px !important;
353
+ height: 27px;
354
+ }
355
+ #app_sidebar {
356
+ width: 200px;float: left;
357
+ background: #fafafa;
358
+
359
+ }
360
+ .innerTab {
361
+ padding: 0px;
362
+ padding-left: 27px;
363
+ }
364
+ .innerTab select, .innerTab input {
365
+ width: 100%;
366
+ }
367
+ .innerTab .control-label {
368
+ padding-left : 0 !important;
369
+ }
370
+ #publish {
371
+
372
+ /*background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #77d42a), color-stop(1, #5cb811));
373
+ background:-moz-linear-gradient(top, #77d42a 5%, #5cb811 100%);
374
+ background:-webkit-linear-gradient(top, #77d42a 5%, #5cb811 100%);
375
+ background:-o-linear-gradient(top, #77d42a 5%, #5cb811 100%);
376
+ background:-ms-linear-gradient(top, #77d42a 5%, #5cb811 100%);
377
+ background:linear-gradient(to bottom, #77d42a 5%, #5cb811 100%);
378
+ filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#77d42a', endColorstr='#5cb811',GradientType=0);
379
+ background-color:#77d42a;
380
+ -moz-border-radius:6px;
381
+ -webkit-border-radius:6px;
382
+ border-radius:3px;
383
+ border:1px solid #559C24;
384
+ border-bottom:2px solid #559C24;
385
+ display:inline-block;
386
+ cursor:pointer;
387
+ color:#fff;
388
+ font-size:14px;
389
+ font-family: "Open Sans",sans-serif !important;
390
+ font-weight: 700 !important;
391
+ padding:6px 14px;
392
+ text-decoration:none;
393
+
394
+ text-shadow:0px 1px 1px #268a16;
395
+ box-shadow:0px 4px 20px #5cb811 inset, 2px 4px 2px #77d42a inset;*/
396
+ }
397
+ #op-post-page {
398
+ display: none;
399
+ }
400
+ .compatCheck {
401
+ display: block;
402
+ background: #fafafa;
403
+ border: 1px solid #eee;
404
+ border-bottom: 2px solid #eee;
405
+ border-radius: 4px;
406
+ margin-bottom: 10px;
407
+ padding: 10px;
408
+ margin-left: 50px;
409
+ font-weight: bold;
410
+ }
411
+ .compatCheck strong {
412
+ text-align: right;
413
+ float: right;
414
+ font-weight: bold;
415
+ }
416
+ .compatenabled {
417
+ background: #D7ECCF;
418
+ border: 1px solid #C2D4BA;
419
+ border-bottom: 2px solid #C2D4BA;
420
+ color: #3C763D;
421
+ }
422
+ .compatdisabled {
423
+ background: #F0D8D8;
424
+ border: 1px solid #EBCCD1;
425
+ border-bottom: 2px solid #EBCCD1;
426
+ color: #A94442;
427
  }
428
+ .compatwarning {
429
+ background: #FBF5D7;
430
+ border: 1px solid #F9EACB;
431
+ border-bottom: 2px solid #F9EACB;
432
+ color: #8A6D3B;
433
+ }
434
+ #changelog {
435
+ padding-left: 51px;
436
+ }
437
+ #changelog strong {
438
+ display: block;
439
+ margin: 13px 0;
440
+ text-transform: uppercase;
441
+ }
442
+ #changelog li {
443
+ font-size: 11px;
444
+ margin: 3px 0;
445
+ margin-left: 8px;
446
+ }
447
+ #app_main {
448
+ width: 508px;
449
+ -webkit-font-smoothing: antialiased;
450
+ padding: 20px 0;
451
+ padding-bottom: 30px;
452
+ padding-right: 50px;
453
+ float: left;
454
+ background-color: #fff;
455
+ box-shadow: 2px 3px 3px #D5E1E8;
456
+ border: 1px solid #CAD9E2;
457
+ border-radius: 3px;
458
+ border-bottom: 2px solid #CAD9E2 !important;
459
+ }
460
+ #app_main h2 {
461
+
462
+ margin: 0;
463
+ padding-left: 50px;
464
+ padding-bottom: 20px;
465
+ margin-bottom: 20px;
466
+ width: 100%;
467
+ font-weight: bold;
468
+ color: rgb(48, 74, 93);
469
+ background: #000;
470
+ background-image: linear-gradient(to bottom, #fcfcfc, #F6F9FB 2%, #F1F7FB 20%, rgb(255, 255, 255) 97%, #E2EEF7);
471
+ padding-top: 20px;
472
+ margin-top: -20px;
473
+ }
474
+ #app_sidebar a.cftablink {
475
+ display: block;
476
+ width: 100%;
477
+ padding: 9px;
478
+ color: #666;
479
+ font-size: 15px;
480
+ margin-top: 0;
481
+ font-weight: normal;
482
+ border: none;
483
+ text-decoration: none;
484
+ border-left: 4px solid #FAFAFA;
485
+ text-align: left;
486
+ }
487
+ #app_sidebar a.cftablink.active{
488
+ background:#0166AE;
489
+ color: #fff;
490
+ text-shadow: none;
491
+
492
+ box-shadow: 2px 3px 3px #D5E1E8;
493
+ border-left: 4px solid #074E81;
494
+ text-decoration: none;
495
+
496
+ }
497
+ #app_sidebar a.cftablink:hover {
498
+ background: #fff;
499
+ color: #222;
500
+
501
+ box-shadow: 2px 3px 3px #D5E1E8;
502
+ border-left: 4px solid #0166AE;
503
+ text-decoration: none;
504
+ }
505
+ #app_sidebar a.cftablink.active:hover {
506
+ background: #0166AE;
507
+ color: #fff;
508
+ text-shadow: none;
509
+
510
+ box-shadow: 2px 3px 3px #D5E1E8;
511
+ border-left: 4px solid #074E81;
512
+ text-decoration: none;
513
+ }
514
+ #app_sidebar a.cftablink:active, #app_sidebar a.cftablink:focus {
515
+ outline: none !important;
516
+ box-shadow: 2px 3px 3px #D5E1E8;
517
+ }
518
+ #app_sidebar a.cftablink.disabledLink {
519
+ opacity: .4;
520
+ cursor: default;
521
+ box-shadow: none;
522
+ color: #666;
523
+ background: none;
524
+ border-left: 4px solid #FAFAFA;
525
+ }
526
+ #publish.disabledLink {
527
+ opacity: .4;
528
+ cursor: default;
529
+
530
+ }
531
+ #app_sidebar .button, #app_sidebar .button-primary {
532
+ display: block;
533
+ margin: 0 15px;
534
+ width: 160px;
535
+ text-align: center
536
+ }
537
+ #metaPreview {
538
+ padding: 10px 10px;
539
+ margin-left: 29px;
540
+ margin-bottom: 20px;
541
+ font-size: 17px;
542
+ padding-bottom: 12px;
543
+ width: 490px;
544
+
545
+ }
546
+ #metaPreview h5 {
547
+ text-transform: uppercase;
548
+ font-size: 12px;
549
+ opacity: .4;
550
+ margin-top:0;
551
+ margin: 0 10px;
552
+ margin-bottom: 25px;
553
+ border-bottom: 1px solid #eee;
554
+ padding-bottom: 5px;
555
+ }
556
+ #metaPreview strong {
557
+ font-size: 11px;
558
+ margin-left: 4px;
559
+ margin-top: 3px;
560
+ float: left;
561
+ }
562
+
563
+ #opengraphPreview {
564
+ padding: 10px 10px;
565
+ margin-left: 29px;
566
+ margin-bottom: 20px;
567
+ font-size: 17px;
568
+ width: 490px;
569
+ padding-bottom: 12px;
570
+ }
571
+ #opengraphPreview h5 {
572
+ text-transform: uppercase;
573
+ font-size: 12px;
574
+ opacity: .4;
575
+ margin: 0 10px;
576
+ margin-bottom: 25px;
577
+ border-bottom: 1px solid #eee;
578
+ padding-bottom: 5px;
579
+ }
580
+ #opengraphPreview strong {
581
+ font-size: 11px;
582
+ margin-left: 5px;
583
+ }
584
+ #opengraphPreview img {
585
+ width: 470px;
586
+ height: 280px;
587
+ margin-left: 10px;
588
+ border: 1px solid #C6C7CA;
589
+
590
+ }
591
+ #opengraphPreview h3 {
592
+ margin: 0;
593
+ padding:0;
594
+ display: block;
595
+ font-family: Georgia, 'lucida grande',tahoma,verdana,arial,sans-serif;
596
+ font-size: 19px;
597
+ font-weight: 500;
598
+ line-height: 22px;
599
+ margin-left: 10px;
600
+ margin-bottom: 5px;
601
+ margin-top: 10px;
602
+ max-height: 110px;
603
+ overflow: hidden;
604
+ word-wrap: break-word;
605
+ }
606
+ #opengraphPreview strong {
607
+ opacity: .7;
608
+ }
609
+ #opengraphPreview span {
610
+ margin: 0;
611
+ display: block;
612
+ color: #9DA3AD;
613
+ margin-left: 10px;
614
+ clear: both;
615
+ font-family: helvetica, arial, sans-serif;
616
+ font-size: 12px;
617
+ line-height: 11px;
618
+ text-transform: uppercase;
619
+ margin-top: 9px;
620
+ }
621
+ #opengraphPreview p {
622
+ margin: 0;
623
+ line-height: 1.4;
624
+ margin-left: 10px;
625
+ font-family: helvetica, arial, sans-serif;
626
+ line-height: 16px;
627
+ max-height: 80px;
628
+ overflow: hidden;
629
+ }
630
+ .infoHelp {
631
+ padding-left: 51px;
632
+ opacity: 0.7;
633
+ line-height: 18.5px;
634
+ font-size: 12px;
635
+ letter-spacing: 0.02em;
636
+ margin-top: 15px;
637
+ clear: both;
638
+ }
639
+ #theAuthor {
640
+ font-style: normal
641
+ }
642
+
643
+ .metaPreviewlink {
644
+ font-size: 11px;
645
+ float: left;
646
+ padding: 7px;
647
+ background: #fff;
648
+ margin-right: 7px;
649
+ margin-bottom: 16px;
650
+ }
651
+ .metaPreviewlink.active {
652
+ background: #eee;
653
+ }
654
+ #metaPreview h3 {
655
+ margin: 0;
656
+ margin-left: 10px;
657
+ display: block;
658
+ font-weight: normal;
659
+ color: #1a0dab;
660
+ font-size: 17px;
661
+ padding: 0;
662
+ clear: both;
663
+ }
664
+ #metaPreview strong {
665
+ opacity: .7;
666
+ }
667
+ #metaPreview span {
668
+ margin: 0;
669
+ display: block;
670
+ color: #006621;
671
+ margin: 0;
672
+ margin-left: 10px;
673
+
674
+ font-size: 13px;
675
+ clear: both;
676
+ }
677
+ #metaPreview p {
678
+ margin: 0;
679
+ margin: 0;
680
+ margin-left: 10px;
681
+
682
+ line-height: 1.4;
683
+ color: rgb(84, 84, 84);
684
+ display: inline;
685
+ font-family: arial, sans-serif;
686
+ font-size: 13px;
687
+ font-weight: normal;
688
+ height: auto;
689
+ line-height: 18.2px;
690
+ list-style-type: decimal;
691
+ text-align: left;
692
+ visibility: visible;
693
+ display: block;
694
+ }
695
+ #savePage {
696
+ clear: both;
697
+ border-top: 1px solid #F6F9FB;
698
+ margin-top: 15px;
699
+ padding-top: 15px;
700
+ margin-left: 51px;
701
+ }
702
+
703
+ /*animate*/
704
+ .animate
705
+ {
706
+ transition: all 0.1s;
707
+ -webkit-transition: all 0.1s;
708
+ }
709
+
710
+ .action-button
711
+ {
712
+ position: relative;
713
+ padding: 8px 17px;
714
+ float: left;
715
+ border-radius: 4px;
716
+ font-size: 14px;
717
+ font-weight: 900 !important;
718
+ color: #FFF !important;
719
+ text-decoration: none;
720
+ border: none;
721
+ cursor: pointer;
722
+
723
+ }
724
+
725
+
726
+ .green:focus {
727
+ outline: none !important;
728
+ box-shadow: none !important;
729
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;
730
+ }
731
+
732
+ .green
733
+ {
734
+ background-color: #82BF56;
735
+ border-bottom: 3px solid #669644;
736
+ text-shadow: 0px -2px #669644;
737
+ }
738
+
739
+ .action-button:active
740
+ {
741
+ transform: translate(0px,3px);
742
+ -webkit-transform: translate(0px,3px);
743
+ border-bottom: 1px solid;
744
+ margin-bottom: 3px;
745
+ outline: none !important;
746
+ box-shadow: none !important;
747
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;
748
+ }
css/bootstrap.css DELETED
@@ -1,4004 +0,0 @@
1
- /*!
2
- * Bootstrap v2.0.2
3
- *
4
- * Copyright 2012 Twitter, Inc
5
- * Licensed under the Apache License v2.0
6
- * http://www.apache.org/licenses/LICENSE-2.0
7
- *
8
- * Designed and built with all the love in the world @twitter by @mdo and @fat.
9
- */
10
- .bootstrap-wp article,
11
- .bootstrap-wp aside,
12
- .bootstrap-wp details,
13
- .bootstrap-wp figcaption,
14
- .bootstrap-wp figure,
15
- .bootstrap-wp footer,
16
- .bootstrap-wp header,
17
- .bootstrap-wp hgroup,
18
- .bootstrap-wp nav,
19
- .bootstrap-wp section {
20
- display: block;
21
- }
22
- .bootstrap-wp audio,
23
- .bootstrap-wp canvas,
24
- .bootstrap-wp video {
25
- display: inline-block;
26
- *display: inline;
27
- *zoom: 1;
28
- }
29
- .bootstrap-wp audio:not([controls]) {
30
- display: none;
31
- }
32
- .bootstrap-wp html {
33
- font-size: 100%;
34
- -webkit-text-size-adjust: 100%;
35
- -ms-text-size-adjust: 100%;
36
- }
37
- .bootstrap-wp a:focus {
38
- outline: thin dotted #333;
39
- outline: 5px auto -webkit-focus-ring-color;
40
- outline-offset: -2px;
41
- }
42
- .bootstrap-wp a:hover,
43
- .bootstrap-wp a:active {
44
- outline: 0;
45
- }
46
- .bootstrap-wp sub,
47
- .bootstrap-wp sup {
48
- position: relative;
49
- font-size: 75%;
50
- line-height: 0;
51
- vertical-align: baseline;
52
- }
53
- .bootstrap-wp sup {
54
- top: -0.5em;
55
- }
56
- .bootstrap-wp sub {
57
- bottom: -0.25em;
58
- }
59
- .bootstrap-wp img {
60
- height: auto;
61
- border: 0;
62
- -ms-interpolation-mode: bicubic;
63
- vertical-align: middle;
64
- }
65
- .bootstrap-wp button,
66
- .bootstrap-wp input,
67
- .bootstrap-wp select,
68
- .bootstrap-wp textarea {
69
- margin: 0;
70
- font-size: 100%;
71
- vertical-align: middle;
72
- }
73
- .bootstrap-wp button,
74
- .bootstrap-wp input {
75
- *overflow: visible;
76
- line-height: normal;
77
- }
78
- .bootstrap-wp button::-moz-focus-inner,
79
- .bootstrap-wp input::-moz-focus-inner {
80
- padding: 0;
81
- border: 0;
82
- }
83
- .bootstrap-wp button,
84
- .bootstrap-wp input[type="button"],
85
- .bootstrap-wp input[type="reset"],
86
- .bootstrap-wp input[type="submit"] {
87
- cursor: pointer;
88
- -webkit-appearance: button;
89
- }
90
- .bootstrap-wp input[type="search"] {
91
- -webkit-appearance: textfield;
92
- -webkit-box-sizing: content-box;
93
- -moz-box-sizing: content-box;
94
- box-sizing: content-box;
95
- }
96
- .bootstrap-wp input[type="search"]::-webkit-search-decoration,
97
- .bootstrap-wp input[type="search"]::-webkit-search-cancel-button {
98
- -webkit-appearance: none;
99
- }
100
- .bootstrap-wp textarea {
101
- overflow: auto;
102
- vertical-align: top;
103
- }
104
- .bootstrap-wp .clearfix {
105
- *zoom: 1;
106
- }
107
- .bootstrap-wp .clearfix:before,
108
- .bootstrap-wp .clearfix:after {
109
- display: table;
110
- content: "";
111
- }
112
- .bootstrap-wp .clearfix:after {
113
- clear: both;
114
- }
115
- .bootstrap-wp .hide-text {
116
- overflow: hidden;
117
- text-indent: 100%;
118
- white-space: nowrap;
119
- }
120
- .bootstrap-wp .input-block-level {
121
- display: block;
122
- width: 100%;
123
- min-height: 28px;
124
- /* Make inputs at least the height of their button counterpart */
125
-
126
- /* Makes inputs behave like true block-level elements */
127
-
128
- -webkit-box-sizing: border-box;
129
- -moz-box-sizing: border-box;
130
- -ms-box-sizing: border-box;
131
- box-sizing: border-box;
132
- }
133
- .bootstrap-wp body {
134
- margin: 0;
135
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
136
- font-size: 13px;
137
- line-height: 18px;
138
- color: #333333;
139
- background-color: #ffffff;
140
- }
141
- .bootstrap-wp a {
142
- color: #0088cc;
143
- text-decoration: none;
144
- }
145
- .bootstrap-wp a:hover {
146
- color: #005580;
147
- text-decoration: underline;
148
- }
149
- .bootstrap-wp .row {
150
- margin-left: -20px;
151
- *zoom: 1;
152
- }
153
- .bootstrap-wp .row:before,
154
- .bootstrap-wp .row:after {
155
- display: table;
156
- content: "";
157
- }
158
- .bootstrap-wp .row:after {
159
- clear: both;
160
- }
161
- .bootstrap-wp [class*="span"] {
162
- float: left;
163
- margin-left: 20px;
164
- }
165
- .bootstrap-wp .container,
166
- .bootstrap-wp .navbar-fixed-top .container,
167
- .bootstrap-wp .navbar-fixed-bottom .container {
168
- width: 940px;
169
- }
170
- .bootstrap-wp .span12 {
171
- width: 940px;
172
- }
173
- .bootstrap-wp .span11 {
174
- width: 860px;
175
- }
176
- .bootstrap-wp .span10 {
177
- width: 780px;
178
- }
179
- .bootstrap-wp .span9 {
180
- width: 700px;
181
- }
182
- .bootstrap-wp .span8 {
183
- width: 620px;
184
- }
185
- .bootstrap-wp .span7 {
186
- width: 540px;
187
- }
188
- .bootstrap-wp .span6 {
189
- width: 460px;
190
- }
191
- .bootstrap-wp .span5 {
192
- width: 380px;
193
- }
194
- .bootstrap-wp .span4 {
195
- width: 300px;
196
- }
197
- .bootstrap-wp .span3 {
198
- width: 220px;
199
- }
200
- .bootstrap-wp .span2 {
201
- width: 140px;
202
- }
203
- .bootstrap-wp .span1 {
204
- width: 60px;
205
- }
206
- .bootstrap-wp .offset12 {
207
- margin-left: 980px;
208
- }
209
- .bootstrap-wp .offset11 {
210
- margin-left: 900px;
211
- }
212
- .bootstrap-wp .offset10 {
213
- margin-left: 820px;
214
- }
215
- .bootstrap-wp .offset9 {
216
- margin-left: 740px;
217
- }
218
- .bootstrap-wp .offset8 {
219
- margin-left: 660px;
220
- }
221
- .bootstrap-wp .offset7 {
222
- margin-left: 580px;
223
- }
224
- .bootstrap-wp .offset6 {
225
- margin-left: 500px;
226
- }
227
- .bootstrap-wp .offset5 {
228
- margin-left: 420px;
229
- }
230
- .bootstrap-wp .offset4 {
231
- margin-left: 340px;
232
- }
233
- .bootstrap-wp .offset3 {
234
- margin-left: 260px;
235
- }
236
- .bootstrap-wp .offset2 {
237
- margin-left: 180px;
238
- }
239
- .bootstrap-wp .offset1 {
240
- margin-left: 100px;
241
- }
242
- .bootstrap-wp .row-fluid {
243
- width: 100%;
244
- *zoom: 1;
245
- }
246
- .bootstrap-wp .row-fluid:before,
247
- .bootstrap-wp .row-fluid:after {
248
- display: table;
249
- content: "";
250
- }
251
- .bootstrap-wp .row-fluid:after {
252
- clear: both;
253
- }
254
- .bootstrap-wp .row-fluid > [class*="span"] {
255
- float: left;
256
- margin-left: 2.127659574%;
257
- }
258
- .bootstrap-wp .row-fluid > [class*="span"]:first-child {
259
- margin-left: 0;
260
- }
261
- .bootstrap-wp .row-fluid > .span12 {
262
- width: 99.99999998999999%;
263
- }
264
- .bootstrap-wp .row-fluid > .span11 {
265
- width: 91.489361693%;
266
- }
267
- .bootstrap-wp .row-fluid > .span10 {
268
- width: 82.97872339599999%;
269
- }
270
- .bootstrap-wp .row-fluid > .span9 {
271
- width: 74.468085099%;
272
- }
273
- .bootstrap-wp .row-fluid > .span8 {
274
- width: 65.95744680199999%;
275
- }
276
- .bootstrap-wp .row-fluid > .span7 {
277
- width: 57.446808505%;
278
- }
279
- .bootstrap-wp .row-fluid > .span6 {
280
- width: 48.93617020799999%;
281
- }
282
- .bootstrap-wp .row-fluid > .span5 {
283
- width: 40.425531911%;
284
- }
285
- .bootstrap-wp .row-fluid > .span4 {
286
- width: 31.914893614%;
287
- }
288
- .bootstrap-wp .row-fluid > .span3 {
289
- width: 23.404255317%;
290
- }
291
- .bootstrap-wp .row-fluid > .span2 {
292
- width: 14.89361702%;
293
- }
294
- .bootstrap-wp .row-fluid > .span1 {
295
- width: 6.382978723%;
296
- }
297
- .bootstrap-wp .container {
298
- margin-left: auto;
299
- margin-right: auto;
300
- *zoom: 1;
301
- }
302
- .bootstrap-wp .container:before,
303
- .bootstrap-wp .container:after {
304
- display: table;
305
- content: "";
306
- }
307
- .bootstrap-wp .container:after {
308
- clear: both;
309
- }
310
- .bootstrap-wp .container-fluid {
311
- padding-left: 20px;
312
- padding-right: 20px;
313
- *zoom: 1;
314
- }
315
- .bootstrap-wp .container-fluid:before,
316
- .bootstrap-wp .container-fluid:after {
317
- display: table;
318
- content: "";
319
- }
320
- .bootstrap-wp .container-fluid:after {
321
- clear: both;
322
- }
323
- .bootstrap-wp p {
324
- margin: 0 0 9px;
325
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
326
- font-size: 13px;
327
- line-height: 18px;
328
- }
329
- .bootstrap-wp p small {
330
- font-size: 11px;
331
- color: #999999;
332
- }
333
- .bootstrap-wp .lead {
334
- margin-bottom: 18px;
335
- font-size: 20px;
336
- font-weight: 200;
337
- line-height: 27px;
338
- }
339
- .bootstrap-wp h1,
340
- .bootstrap-wp h2,
341
- .bootstrap-wp h3,
342
- .bootstrap-wp h4,
343
- .bootstrap-wp h5,
344
- .bootstrap-wp h6 {
345
- margin: 0;
346
- font-family: inherit;
347
- font-weight: bold;
348
- color: inherit;
349
- text-rendering: optimizelegibility;
350
- }
351
- .bootstrap-wp h1 small,
352
- .bootstrap-wp h2 small,
353
- .bootstrap-wp h3 small,
354
- .bootstrap-wp h4 small,
355
- .bootstrap-wp h5 small,
356
- .bootstrap-wp h6 small {
357
- font-weight: normal;
358
- color: #999999;
359
- }
360
- .bootstrap-wp h1 {
361
- font-size: 30px;
362
- line-height: 36px;
363
- }
364
- .bootstrap-wp h1 small {
365
- font-size: 18px;
366
- }
367
- .bootstrap-wp h2 {
368
- font-size: 24px;
369
- line-height: 36px;
370
- }
371
- .bootstrap-wp h2 small {
372
- font-size: 18px;
373
- }
374
- .bootstrap-wp h3 {
375
- line-height: 27px;
376
- font-size: 18px;
377
- }
378
- .bootstrap-wp h3 small {
379
- font-size: 14px;
380
- }
381
- .bootstrap-wp h4,
382
- .bootstrap-wp h5,
383
- .bootstrap-wp h6 {
384
- line-height: 18px;
385
- }
386
- .bootstrap-wp h4 {
387
- font-size: 14px;
388
- }
389
- .bootstrap-wp h4 small {
390
- font-size: 12px;
391
- }
392
- .bootstrap-wp h5 {
393
- font-size: 12px;
394
- }
395
- .bootstrap-wp h6 {
396
- font-size: 11px;
397
- color: #999999;
398
- text-transform: uppercase;
399
- }
400
- .bootstrap-wp .page-header {
401
- padding-bottom: 17px;
402
- margin: 18px 0;
403
- border-bottom: 1px solid #eeeeee;
404
- }
405
- .bootstrap-wp .page-header h1 {
406
- line-height: 1;
407
- }
408
- .bootstrap-wp ul,
409
- .bootstrap-wp ol {
410
- padding: 0;
411
- margin: 0 0 9px 25px;
412
- }
413
- .bootstrap-wp ul ul,
414
- .bootstrap-wp ul ol,
415
- .bootstrap-wp ol ol,
416
- .bootstrap-wp ol ul {
417
- margin-bottom: 0;
418
- }
419
- .bootstrap-wp ul {
420
- list-style: disc;
421
- }
422
- .bootstrap-wp ol {
423
- list-style: decimal;
424
- }
425
- .bootstrap-wp li {
426
- line-height: 18px;
427
- }
428
- .bootstrap-wp ul.unstyled,
429
- .bootstrap-wp ol.unstyled {
430
- margin-left: 0;
431
- list-style: none;
432
- }
433
- .bootstrap-wp dl {
434
- margin-bottom: 18px;
435
- }
436
- .bootstrap-wp dt,
437
- .bootstrap-wp dd {
438
- line-height: 18px;
439
- }
440
- .bootstrap-wp dt {
441
- font-weight: bold;
442
- line-height: 17px;
443
- }
444
- .bootstrap-wp dd {
445
- margin-left: 9px;
446
- }
447
- .bootstrap-wp .dl-horizontal dt {
448
- float: left;
449
- clear: left;
450
- width: 120px;
451
- text-align: right;
452
- }
453
- .bootstrap-wp .dl-horizontal dd {
454
- margin-left: 130px;
455
- }
456
- .bootstrap-wp hr {
457
- margin: 18px 0;
458
- border: 0;
459
- border-top: 1px solid #eeeeee;
460
- border-bottom: 1px solid #ffffff;
461
- }
462
- .bootstrap-wp strong {
463
- font-weight: bold;
464
- }
465
- .bootstrap-wp em {
466
- font-style: italic;
467
- }
468
- .bootstrap-wp .muted {
469
- color: #999999;
470
- }
471
- .bootstrap-wp abbr[title] {
472
- border-bottom: 1px dotted #ddd;
473
- cursor: help;
474
- }
475
- .bootstrap-wp abbr.initialism {
476
- font-size: 90%;
477
- text-transform: uppercase;
478
- }
479
- .bootstrap-wp blockquote {
480
- padding: 0 0 0 15px;
481
- margin: 0 0 18px;
482
- border-left: 5px solid #eeeeee;
483
- }
484
- .bootstrap-wp blockquote p {
485
- margin-bottom: 0;
486
- font-size: 16px;
487
- font-weight: 300;
488
- line-height: 22.5px;
489
- }
490
- .bootstrap-wp blockquote small {
491
- display: block;
492
- line-height: 18px;
493
- color: #999999;
494
- }
495
- .bootstrap-wp blockquote small:before {
496
- content: '\2014 \00A0';
497
- }
498
- .bootstrap-wp blockquote.pull-right {
499
- float: right;
500
- padding-left: 0;
501
- padding-right: 15px;
502
- border-left: 0;
503
- border-right: 5px solid #eeeeee;
504
- }
505
- .bootstrap-wp blockquote.pull-right p,
506
- .bootstrap-wp blockquote.pull-right small {
507
- text-align: right;
508
- }
509
- .bootstrap-wp q:before,
510
- .bootstrap-wp q:after,
511
- .bootstrap-wp blockquote:before,
512
- .bootstrap-wp blockquote:after {
513
- content: "";
514
- }
515
- .bootstrap-wp address {
516
- display: block;
517
- margin-bottom: 18px;
518
- line-height: 18px;
519
- font-style: normal;
520
- }
521
- .bootstrap-wp small {
522
- font-size: 100%;
523
- }
524
- .bootstrap-wp cite {
525
- font-style: normal;
526
- }
527
- .bootstrap-wp code,
528
- .bootstrap-wp pre {
529
- padding: 0 3px 2px;
530
- font-family: Menlo, Monaco, "Courier New", monospace;
531
- font-size: 12px;
532
- color: #333333;
533
- -webkit-border-radius: 3px;
534
- -moz-border-radius: 3px;
535
- border-radius: 3px;
536
- }
537
- .bootstrap-wp code {
538
- padding: 2px 4px;
539
- color: #d14;
540
- background-color: #f7f7f9;
541
- border: 1px solid #e1e1e8;
542
- }
543
- .bootstrap-wp pre {
544
- display: block;
545
- padding: 8.5px;
546
- margin: 0 0 9px;
547
- font-size: 12.025px;
548
- line-height: 18px;
549
- background-color: #f5f5f5;
550
- border: 1px solid #ccc;
551
- border: 1px solid rgba(0, 0, 0, 0.15);
552
- -webkit-border-radius: 4px;
553
- -moz-border-radius: 4px;
554
- border-radius: 4px;
555
- white-space: pre;
556
- white-space: pre-wrap;
557
- word-break: break-all;
558
- word-wrap: break-word;
559
- }
560
- .bootstrap-wp pre.prettyprint {
561
- margin-bottom: 18px;
562
- }
563
- .bootstrap-wp pre code {
564
- padding: 0;
565
- color: inherit;
566
- background-color: transparent;
567
- border: 0;
568
- }
569
- .bootstrap-wp .pre-scrollable {
570
- max-height: 340px;
571
- overflow-y: scroll;
572
- }
573
- .bootstrap-wp form {
574
- margin: 0 0 18px;
575
- }
576
- .bootstrap-wp fieldset {
577
- padding: 0;
578
- margin: 0;
579
- border: 0;
580
- }
581
- .bootstrap-wp legend {
582
- display: block;
583
- width: 100%;
584
- padding: 0;
585
- margin-bottom: 27px;
586
- font-size: 19.5px;
587
- line-height: 36px;
588
- color: #333333;
589
- border: 0;
590
- border-bottom: 1px solid #eee;
591
- }
592
- .bootstrap-wp legend small {
593
- font-size: 13.5px;
594
- color: #999999;
595
- }
596
- .bootstrap-wp label,
597
- .bootstrap-wp input,
598
- .bootstrap-wp button,
599
- .bootstrap-wp select,
600
- .bootstrap-wp textarea {
601
- font-size: 13px;
602
- font-weight: normal;
603
- line-height: 18px;
604
- }
605
- .bootstrap-wp input,
606
- .bootstrap-wp button,
607
- .bootstrap-wp select,
608
- .bootstrap-wp textarea {
609
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
610
- }
611
- .bootstrap-wp label {
612
- display: block;
613
- margin-bottom: 5px;
614
- color: #333333;
615
- }
616
- .bootstrap-wp input,
617
- .bootstrap-wp textarea,
618
- .bootstrap-wp select,
619
- .bootstrap-wp .uneditable-input {
620
- display: inline-block;
621
- width: 210px;
622
- height: 18px;
623
- padding: 4px;
624
- margin-bottom: 9px;
625
- font-size: 13px;
626
- line-height: 18px;
627
- color: #555555;
628
- border: 1px solid #cccccc;
629
- -webkit-border-radius: 3px;
630
- -moz-border-radius: 3px;
631
- border-radius: 3px;
632
- }
633
- .bootstrap-wp .uneditable-textarea {
634
- width: auto;
635
- height: auto;
636
- }
637
- .bootstrap-wp label input,
638
- .bootstrap-wp label textarea,
639
- .bootstrap-wp label select {
640
- display: block;
641
- }
642
- .bootstrap-wp input[type="image"],
643
- .bootstrap-wp input[type="checkbox"],
644
- .bootstrap-wp input[type="radio"] {
645
- width: auto;
646
- height: auto;
647
- padding: 0;
648
- margin: 3px 0;
649
- *margin-top: 0;
650
- /* IE7 */
651
-
652
- line-height: normal;
653
- cursor: pointer;
654
- -webkit-border-radius: 0;
655
- -moz-border-radius: 0;
656
- border-radius: 0;
657
- border: 0 \9;
658
- /* IE9 and down */
659
-
660
- }
661
- .bootstrap-wp input[type="image"] {
662
- border: 0;
663
- }
664
- .bootstrap-wp input[type="file"] {
665
- width: auto;
666
- padding: initial;
667
- line-height: initial;
668
- border: initial;
669
- background-color: #ffffff;
670
- background-color: initial;
671
- -webkit-box-shadow: none;
672
- -moz-box-shadow: none;
673
- box-shadow: none;
674
- }
675
- .bootstrap-wp input[type="button"],
676
- .bootstrap-wp input[type="reset"],
677
- .bootstrap-wp input[type="submit"] {
678
- width: auto;
679
- height: auto;
680
- }
681
- .bootstrap-wp select,
682
- .bootstrap-wp input[type="file"] {
683
- height: 28px;
684
- /* In IE7, the height of the select element cannot be changed by height, only font-size */
685
-
686
- *margin-top: 4px;
687
- /* For IE7, add top margin to align select with labels */
688
-
689
- line-height: 28px;
690
- }
691
- .bootstrap-wp input[type="file"] {
692
- line-height: 18px \9;
693
- }
694
- .bootstrap-wp select {
695
- width: 220px;
696
- background-color: #ffffff;
697
- }
698
- .bootstrap-wp select[multiple],
699
- .bootstrap-wp select[size] {
700
- height: auto;
701
- }
702
- .bootstrap-wp input[type="image"] {
703
- -webkit-box-shadow: none;
704
- -moz-box-shadow: none;
705
- box-shadow: none;
706
- }
707
- .bootstrap-wp textarea {
708
- height: auto;
709
- }
710
- .bootstrap-wp input[type="hidden"] {
711
- display: none;
712
- }
713
- .bootstrap-wp .radio,
714
- .bootstrap-wp .checkbox {
715
- padding-left: 18px;
716
- }
717
- .bootstrap-wp .radio input[type="radio"],
718
- .bootstrap-wp .checkbox input[type="checkbox"] {
719
- float: left;
720
- margin-left: -18px;
721
- }
722
- .bootstrap-wp .controls > .radio:first-child,
723
- .bootstrap-wp .controls > .checkbox:first-child {
724
- padding-top: 5px;
725
- }
726
- .bootstrap-wp .radio.inline,
727
- .bootstrap-wp .checkbox.inline {
728
- display: inline-block;
729
- padding-top: 5px;
730
- margin-bottom: 0;
731
- vertical-align: middle;
732
- }
733
- .bootstrap-wp .radio.inline + .radio.inline,
734
- .bootstrap-wp .checkbox.inline + .checkbox.inline {
735
- margin-left: 10px;
736
- }
737
- .bootstrap-wp input,
738
- .bootstrap-wp textarea {
739
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
740
- -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
741
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
742
- -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
743
- -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
744
- -ms-transition: border linear 0.2s, box-shadow linear 0.2s;
745
- -o-transition: border linear 0.2s, box-shadow linear 0.2s;
746
- transition: border linear 0.2s, box-shadow linear 0.2s;
747
- }
748
- .bootstrap-wp input:focus,
749
- .bootstrap-wp textarea:focus {
750
- border-color: rgba(82, 168, 236, 0.8);
751
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
752
- -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
753
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
754
- outline: 0;
755
- outline: thin dotted \9;
756
- /* IE6-9 */
757
-
758
- }
759
- .bootstrap-wp input[type="file"]:focus,
760
- .bootstrap-wp input[type="radio"]:focus,
761
- .bootstrap-wp input[type="checkbox"]:focus,
762
- .bootstrap-wp select:focus {
763
- -webkit-box-shadow: none;
764
- -moz-box-shadow: none;
765
- box-shadow: none;
766
- outline: thin dotted #333;
767
- outline: 5px auto -webkit-focus-ring-color;
768
- outline-offset: -2px;
769
- }
770
- .bootstrap-wp .input-mini {
771
- width: 60px;
772
- }
773
- .bootstrap-wp .input-small {
774
- width: 90px;
775
- }
776
- .bootstrap-wp .input-medium {
777
- width: 150px;
778
- }
779
- .bootstrap-wp .input-large {
780
- width: 210px;
781
- }
782
- .bootstrap-wp .input-xlarge {
783
- width: 270px;
784
- }
785
- .bootstrap-wp .input-xxlarge {
786
- width: 530px;
787
- }
788
- .bootstrap-wp input[class*="span"],
789
- .bootstrap-wp select[class*="span"],
790
- .bootstrap-wp textarea[class*="span"],
791
- .bootstrap-wp .uneditable-input {
792
- float: none;
793
- margin-left: 0;
794
- }
795
- .bootstrap-wp input,
796
- .bootstrap-wp textarea,
797
- .bootstrap-wp .uneditable-input {
798
- margin-left: 0;
799
- }
800
- .bootstrap-wp input.span12, textarea.span12, .uneditable-input.span12 {
801
- width: 930px;
802
- }
803
- .bootstrap-wp input.span11, textarea.span11, .uneditable-input.span11 {
804
- width: 850px;
805
- }
806
- .bootstrap-wp input.span10, textarea.span10, .uneditable-input.span10 {
807
- width: 770px;
808
- }
809
- .bootstrap-wp input.span9, textarea.span9, .uneditable-input.span9 {
810
- width: 690px;
811
- }
812
- .bootstrap-wp input.span8, textarea.span8, .uneditable-input.span8 {
813
- width: 610px;
814
- }
815
- .bootstrap-wp input.span7, textarea.span7, .uneditable-input.span7 {
816
- width: 530px;
817
- }
818
- .bootstrap-wp input.span6, textarea.span6, .uneditable-input.span6 {
819
- width: 450px;
820
- }
821
- .bootstrap-wp input.span5, textarea.span5, .uneditable-input.span5 {
822
- width: 370px;
823
- }
824
- .bootstrap-wp input.span4, textarea.span4, .uneditable-input.span4 {
825
- width: 290px;
826
- }
827
- .bootstrap-wp input.span3, textarea.span3, .uneditable-input.span3 {
828
- width: 210px;
829
- }
830
- .bootstrap-wp input.span2, textarea.span2, .uneditable-input.span2 {
831
- width: 130px;
832
- }
833
- .bootstrap-wp input.span1, textarea.span1, .uneditable-input.span1 {
834
- width: 50px;
835
- }
836
- .bootstrap-wp input[disabled],
837
- .bootstrap-wp select[disabled],
838
- .bootstrap-wp textarea[disabled],
839
- .bootstrap-wp input[readonly],
840
- .bootstrap-wp select[readonly],
841
- .bootstrap-wp textarea[readonly] {
842
- background-color: #eeeeee;
843
- border-color: #ddd;
844
- cursor: not-allowed;
845
- }
846
- .bootstrap-wp .control-group.warning > label,
847
- .bootstrap-wp .control-group.warning .help-block,
848
- .bootstrap-wp .control-group.warning .help-inline {
849
- color: #c09853;
850
- }
851
- .bootstrap-wp .control-group.warning input,
852
- .bootstrap-wp .control-group.warning select,
853
- .bootstrap-wp .control-group.warning textarea {
854
- color: #c09853;
855
- border-color: #c09853;
856
- }
857
- .bootstrap-wp .control-group.warning input:focus,
858
- .bootstrap-wp .control-group.warning select:focus,
859
- .bootstrap-wp .control-group.warning textarea:focus {
860
- border-color: #a47e3c;
861
- -webkit-box-shadow: 0 0 6px #dbc59e;
862
- -moz-box-shadow: 0 0 6px #dbc59e;
863
- box-shadow: 0 0 6px #dbc59e;
864
- }
865
- .bootstrap-wp .control-group.warning .input-prepend .add-on,
866
- .bootstrap-wp .control-group.warning .input-append .add-on {
867
- color: #c09853;
868
- background-color: #fcf8e3;
869
- border-color: #c09853;
870
- }
871
- .bootstrap-wp .controls.lp-error > label,
872
- .bootstrap-wp .control-group.error > label,
873
- .bootstrap-wp .control-group.error .help-block,
874
- .bootstrap-wp .control-group.error .help-inline {
875
- color: #b94a48;
876
- }
877
- .bootstrap-wp .controls.lp-error input,
878
- .bootstrap-wp .controls.lp-error select,
879
- .bootstrap-wp .controls.lp-error textarea,
880
- .bootstrap-wp .control-group.error input,
881
- .bootstrap-wp .control-group.error select,
882
- .bootstrap-wp .control-group.error textarea {
883
- color: #b94a48;
884
- border-color: #b94a48;
885
- }
886
- .bootstrap-wp .controls.lp-error input:focus,
887
- .bootstrap-wp .controls.lp-error select:focus,
888
- .bootstrap-wp .controls.lp-error textarea:focus,
889
- .bootstrap-wp .control-group.error input:focus,
890
- .bootstrap-wp .control-group.error select:focus,
891
- .bootstrap-wp .control-group.error textarea:focus {
892
- border-color: #953b39;
893
- -webkit-box-shadow: 0 0 6px #d59392;
894
- -moz-box-shadow: 0 0 6px #d59392;
895
- box-shadow: 0 0 6px #d59392;
896
- }
897
- .bootstrap-wp .control-group.error .input-prepend .add-on,
898
- .bootstrap-wp .control-group.error .input-append .add-on {
899
- color: #b94a48;
900
- background-color: #f2dede;
901
- border-color: #b94a48;
902
- }
903
- .bootstrap-wp .control-group.success > label,
904
- .bootstrap-wp .control-group.success .help-block,
905
- .bootstrap-wp .control-group.success .help-inline {
906
- color: #468847;
907
- }
908
- .bootstrap-wp .control-group.success input,
909
- .bootstrap-wp .control-group.success select,
910
- .bootstrap-wp .control-group.success textarea {
911
- color: #468847;
912
- border-color: #468847;
913
- }
914
- .bootstrap-wp .control-group.success input:focus,
915
- .bootstrap-wp .control-group.success select:focus,
916
- .bootstrap-wp .control-group.success textarea:focus {
917
- border-color: #356635;
918
- -webkit-box-shadow: 0 0 6px #7aba7b;
919
- -moz-box-shadow: 0 0 6px #7aba7b;
920
- box-shadow: 0 0 6px #7aba7b;
921
- }
922
- .bootstrap-wp .control-group.success .input-prepend .add-on,
923
- .bootstrap-wp .control-group.success .input-append .add-on {
924
- color: #468847;
925
- background-color: #dff0d8;
926
- border-color: #468847;
927
- }
928
- .bootstrap-wp input:focus:required:invalid,
929
- .bootstrap-wp textarea:focus:required:invalid,
930
- .bootstrap-wp select:focus:required:invalid {
931
- color: #b94a48;
932
- border-color: #ee5f5b;
933
- }
934
- .bootstrap-wp input:focus:required:invalid:focus,
935
- .bootstrap-wp textarea:focus:required:invalid:focus,
936
- .bootstrap-wp select:focus:required:invalid:focus {
937
- border-color: #e9322d;
938
- -webkit-box-shadow: 0 0 6px #f8b9b7;
939
- -moz-box-shadow: 0 0 6px #f8b9b7;
940
- box-shadow: 0 0 6px #f8b9b7;
941
- }
942
- .bootstrap-wp .form-actions {
943
- padding: 17px 20px 18px;
944
- margin-top: 18px;
945
- margin-bottom: 18px;
946
- background-color: #eeeeee;
947
- border-top: 1px solid #ddd;
948
- *zoom: 1;
949
- }
950
- .bootstrap-wp .form-actions:before,
951
- .bootstrap-wp .form-actions:after {
952
- display: table;
953
- content: "";
954
- }
955
- .bootstrap-wp .form-actions:after {
956
- clear: both;
957
- }
958
- .bootstrap-wp .uneditable-input {
959
- display: block;
960
- background-color: #ffffff;
961
- border-color: #eee;
962
- -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025);
963
- -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025);
964
- box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025);
965
- cursor: not-allowed;
966
- }
967
- .bootstrap-wp :-moz-placeholder {
968
- color: #999999;
969
- }
970
- .bootstrap-wp ::-webkit-input-placeholder {
971
- color: #999999;
972
- }
973
- .bootstrap-wp .help-block,
974
- .bootstrap-wp .help-inline {
975
- color: #555555;
976
- }
977
- .bootstrap-wp .help-block {
978
- display: block;
979
- margin-bottom: 9px;
980
- }
981
- .bootstrap-wp .help-inline {
982
- display: inline-block;
983
- *display: inline;
984
- /* IE7 inline-block hack */
985
-
986
- *zoom: 1;
987
- vertical-align: middle;
988
- padding-left: 5px;
989
- }
990
- .bootstrap-wp .input-prepend,
991
- .bootstrap-wp .input-append {
992
- margin-bottom: 5px;
993
- }
994
- .bootstrap-wp .input-prepend input,
995
- .bootstrap-wp .input-append input,
996
- .bootstrap-wp .input-prepend select,
997
- .bootstrap-wp .input-append select,
998
- .bootstrap-wp .input-prepend .uneditable-input,
999
- .bootstrap-wp .input-append .uneditable-input {
1000
- *margin-left: 0;
1001
- -webkit-border-radius: 0 3px 3px 0;
1002
- -moz-border-radius: 0 3px 3px 0;
1003
- border-radius: 0 3px 3px 0;
1004
- }
1005
- .bootstrap-wp .input-prepend input:focus,
1006
- .bootstrap-wp .input-append input:focus,
1007
- .bootstrap-wp .input-prepend select:focus,
1008
- .bootstrap-wp .input-append select:focus,
1009
- .bootstrap-wp .input-prepend .uneditable-input:focus,
1010
- .bootstrap-wp .input-append .uneditable-input:focus {
1011
- position: relative;
1012
- z-index: 2;
1013
- }
1014
- .bootstrap-wp .input-prepend .uneditable-input,
1015
- .bootstrap-wp .input-append .uneditable-input {
1016
- border-left-color: #ccc;
1017
- }
1018
- .bootstrap-wp .input-prepend .add-on,
1019
- .bootstrap-wp .input-append .add-on {
1020
- display: inline-block;
1021
- width: auto;
1022
- min-width: 16px;
1023
- height: 18px;
1024
- padding: 4px 5px;
1025
- font-weight: normal;
1026
- line-height: 18px;
1027
- text-align: center;
1028
- text-shadow: 0 1px 0 #ffffff;
1029
- vertical-align: middle;
1030
- background-color: #eeeeee;
1031
- border: 1px solid #ccc;
1032
- }
1033
- .bootstrap-wp .input-prepend .add-on,
1034
- .bootstrap-wp .input-append .add-on,
1035
- .bootstrap-wp .input-prepend .btn,
1036
- .bootstrap-wp .input-append .btn {
1037
- -webkit-border-radius: 3px 0 0 3px;
1038
- -moz-border-radius: 3px 0 0 3px;
1039
- border-radius: 3px 0 0 3px;
1040
- }
1041
- .bootstrap-wp .input-prepend .active,
1042
- .bootstrap-wp .input-append .active {
1043
- background-color: #a9dba9;
1044
- border-color: #46a546;
1045
- }
1046
- .bootstrap-wp .input-prepend .add-on,
1047
- .bootstrap-wp .input-prepend .btn {
1048
- margin-right: -1px;
1049
- }
1050
- .bootstrap-wp .input-append input,
1051
- .bootstrap-wp .input-append select .uneditable-input {
1052
- -webkit-border-radius: 3px 0 0 3px;
1053
- -moz-border-radius: 3px 0 0 3px;
1054
- border-radius: 3px 0 0 3px;
1055
- }
1056
- .bootstrap-wp .input-append .uneditable-input {
1057
- border-left-color: #eee;
1058
- border-right-color: #ccc;
1059
- }
1060
- .bootstrap-wp .input-append .add-on,
1061
- .bootstrap-wp .input-append .btn {
1062
- margin-left: -1px;
1063
- -webkit-border-radius: 0 3px 3px 0;
1064
- -moz-border-radius: 0 3px 3px 0;
1065
- border-radius: 0 3px 3px 0;
1066
- }
1067
- .bootstrap-wp .input-prepend.input-append input,
1068
- .bootstrap-wp .input-prepend.input-append select,
1069
- .bootstrap-wp .input-prepend.input-append .uneditable-input {
1070
- -webkit-border-radius: 0;
1071
- -moz-border-radius: 0;
1072
- border-radius: 0;
1073
- }
1074
- .bootstrap-wp .input-prepend.input-append .add-on:first-child,
1075
- .bootstrap-wp .input-prepend.input-append .btn:first-child {
1076
- margin-right: -1px;
1077
- -webkit-border-radius: 3px 0 0 3px;
1078
- -moz-border-radius: 3px 0 0 3px;
1079
- border-radius: 3px 0 0 3px;
1080
- }
1081
- .bootstrap-wp .input-prepend.input-append .add-on:last-child,
1082
- .bootstrap-wp .input-prepend.input-append .btn:last-child {
1083
- margin-left: -1px;
1084
- -webkit-border-radius: 0 3px 3px 0;
1085
- -moz-border-radius: 0 3px 3px 0;
1086
- border-radius: 0 3px 3px 0;
1087
- }
1088
- .bootstrap-wp .search-query {
1089
- padding-left: 14px;
1090
- padding-right: 14px;
1091
- margin-bottom: 0;
1092
- -webkit-border-radius: 14px;
1093
- -moz-border-radius: 14px;
1094
- border-radius: 14px;
1095
- }
1096
- .bootstrap-wp .form-search input,
1097
- .bootstrap-wp .form-inline input,
1098
- .bootstrap-wp .form-horizontal input,
1099
- .bootstrap-wp .form-search textarea,
1100
- .bootstrap-wp .form-inline textarea,
1101
- .bootstrap-wp .form-horizontal textarea,
1102
- .bootstrap-wp .form-search select,
1103
- .bootstrap-wp .form-inline select,
1104
- .bootstrap-wp .form-horizontal select,
1105
- .bootstrap-wp .form-search .help-inline,
1106
- .bootstrap-wp .form-inline .help-inline,
1107
- .bootstrap-wp .form-horizontal .help-inline,
1108
- .bootstrap-wp .form-search .uneditable-input,
1109
- .bootstrap-wp .form-inline .uneditable-input,
1110
- .bootstrap-wp .form-horizontal .uneditable-input,
1111
- .bootstrap-wp .form-search .input-prepend,
1112
- .bootstrap-wp .form-inline .input-prepend,
1113
- .bootstrap-wp .form-horizontal .input-prepend,
1114
- .bootstrap-wp .form-search .input-append,
1115
- .bootstrap-wp .form-inline .input-append,
1116
- .bootstrap-wp .form-horizontal .input-append {
1117
- display: inline-block;
1118
- margin-bottom: 0;
1119
- }
1120
- .bootstrap-wp .form-search .hide,
1121
- .bootstrap-wp .form-inline .hide,
1122
- .bootstrap-wp .form-horizontal .hide {
1123
- display: none;
1124
- }
1125
- .bootstrap-wp .form-search label,
1126
- .bootstrap-wp .form-inline label {
1127
- display: inline-block;
1128
- }
1129
- .bootstrap-wp .form-search .input-append,
1130
- .bootstrap-wp .form-inline .input-append,
1131
- .bootstrap-wp .form-search .input-prepend,
1132
- .bootstrap-wp .form-inline .input-prepend {
1133
- margin-bottom: 0;
1134
- }
1135
- .bootstrap-wp .form-search .radio,
1136
- .bootstrap-wp .form-search .checkbox,
1137
- .bootstrap-wp .form-inline .radio,
1138
- .bootstrap-wp .form-inline .checkbox {
1139
- padding-left: 0;
1140
- margin-bottom: 0;
1141
- vertical-align: middle;
1142
- }
1143
- .bootstrap-wp .form-search .radio input[type="radio"],
1144
- .bootstrap-wp .form-search .checkbox input[type="checkbox"],
1145
- .bootstrap-wp .form-inline .radio input[type="radio"],
1146
- .bootstrap-wp .form-inline .checkbox input[type="checkbox"] {
1147
- float: left;
1148
- margin-left: 0;
1149
- margin-right: 3px;
1150
- }
1151
- .bootstrap-wp .control-group {
1152
- margin-bottom: 9px;
1153
- }
1154
- .bootstrap-wp legend + .control-group {
1155
- margin-top: 18px;
1156
- -webkit-margin-top-collapse: separate;
1157
- }
1158
- .bootstrap-wp .form-horizontal .control-group {
1159
- margin-bottom: 18px;
1160
- *zoom: 1;
1161
- }
1162
- .bootstrap-wp .form-horizontal .control-group:before,
1163
- .bootstrap-wp .form-horizontal .control-group:after {
1164
- display: table;
1165
- content: "";
1166
- }
1167
- .bootstrap-wp .form-horizontal .control-group:after {
1168
- clear: both;
1169
- }
1170
- .bootstrap-wp .form-horizontal .control-label {
1171
- float: left;
1172
- width: 140px;
1173
- padding-top: 5px;
1174
- text-align: right;
1175
- }
1176
- .bootstrap-wp .form-horizontal .controls {
1177
- margin-left: 160px;
1178
- /* Super jank IE7 fix to ensure the inputs in .input-append and input-prepend don't inherit the margin of the parent, in this case .controls */
1179
-
1180
- *display: inline-block;
1181
- *margin-left: 0;
1182
- *padding-left: 20px;
1183
- }
1184
- .bootstrap-wp .form-horizontal .help-block {
1185
- margin-top: 9px;
1186
- margin-bottom: 0;
1187
- }
1188
- .bootstrap-wp .form-horizontal .form-actions {
1189
- padding-left: 160px;
1190
- }
1191
- .bootstrap-wp table {
1192
- max-width: 100%;
1193
- border-collapse: collapse;
1194
- border-spacing: 0;
1195
- background-color: transparent;
1196
- }
1197
- .bootstrap-wp .table {
1198
- width: 100%;
1199
- margin-bottom: 18px;
1200
- }
1201
- .bootstrap-wp .table th,
1202
- .bootstrap-wp .table td {
1203
- padding: 8px;
1204
- line-height: 18px;
1205
- text-align: left;
1206
- vertical-align: top;
1207
- border-top: 1px solid #dddddd;
1208
- }
1209
- .bootstrap-wp .table th {
1210
- font-weight: bold;
1211
- }
1212
- .bootstrap-wp .table thead th {
1213
- vertical-align: bottom;
1214
- }
1215
- .bootstrap-wp .table colgroup + thead tr:first-child th,
1216
- .bootstrap-wp .table colgroup + thead tr:first-child td,
1217
- .bootstrap-wp .table thead:first-child tr:first-child th,
1218
- .bootstrap-wp .table thead:first-child tr:first-child td {
1219
- border-top: 0;
1220
- }
1221
- .bootstrap-wp .table tbody + tbody {
1222
- border-top: 2px solid #dddddd;
1223
- }
1224
- .bootstrap-wp .table-condensed th,
1225
- .bootstrap-wp .table-condensed td {
1226
- padding: 4px 5px;
1227
- }
1228
- .bootstrap-wp .table-bordered {
1229
- border: 1px solid #dddddd;
1230
- border-left: 0;
1231
- border-collapse: separate;
1232
- *border-collapse: collapsed;
1233
- -webkit-border-radius: 4px;
1234
- -moz-border-radius: 4px;
1235
- border-radius: 4px;
1236
- }
1237
- .bootstrap-wp .table-bordered th,
1238
- .bootstrap-wp .table-bordered td {
1239
- border-left: 1px solid #dddddd;
1240
- }
1241
- .bootstrap-wp .table-bordered thead:first-child tr:first-child th,
1242
- .bootstrap-wp .table-bordered tbody:first-child tr:first-child th,
1243
- .bootstrap-wp .table-bordered tbody:first-child tr:first-child td {
1244
- border-top: 0;
1245
- }
1246
- .bootstrap-wp .table-bordered thead:first-child tr:first-child th:first-child,
1247
- .bootstrap-wp .table-bordered tbody:first-child tr:first-child td:first-child {
1248
- -webkit-border-radius: 4px 0 0 0;
1249
- -moz-border-radius: 4px 0 0 0;
1250
- border-radius: 4px 0 0 0;
1251
- }
1252
- .bootstrap-wp .table-bordered thead:first-child tr:first-child th:last-child,
1253
- .bootstrap-wp .table-bordered tbody:first-child tr:first-child td:last-child {
1254
- -webkit-border-radius: 0 4px 0 0;
1255
- -moz-border-radius: 0 4px 0 0;
1256
- border-radius: 0 4px 0 0;
1257
- }
1258
- .bootstrap-wp .table-bordered thead:last-child tr:last-child th:first-child,
1259
- .bootstrap-wp .table-bordered tbody:last-child tr:last-child td:first-child {
1260
- -webkit-border-radius: 0 0 0 4px;
1261
- -moz-border-radius: 0 0 0 4px;
1262
- border-radius: 0 0 0 4px;
1263
- }
1264
- .bootstrap-wp .table-bordered thead:last-child tr:last-child th:last-child,
1265
- .bootstrap-wp .table-bordered tbody:last-child tr:last-child td:last-child {
1266
- -webkit-border-radius: 0 0 4px 0;
1267
- -moz-border-radius: 0 0 4px 0;
1268
- border-radius: 0 0 4px 0;
1269
- }
1270
- .bootstrap-wp .table-striped tbody tr:nth-child(odd) td,
1271
- .bootstrap-wp .table-striped tbody tr:nth-child(odd) th {
1272
- background-color: #f9f9f9;
1273
- }
1274
- .bootstrap-wp .table tbody tr:hover td,
1275
- .bootstrap-wp .table tbody tr:hover th {
1276
- background-color: #f5f5f5;
1277
- }
1278
- .bootstrap-wp table .span1 {
1279
- float: none;
1280
- width: 44px;
1281
- margin-left: 0;
1282
- }
1283
- .bootstrap-wp table .span2 {
1284
- float: none;
1285
- width: 124px;
1286
- margin-left: 0;
1287
- }
1288
- .bootstrap-wp table .span3 {
1289
- float: none;
1290
- width: 204px;
1291
- margin-left: 0;
1292
- }
1293
- .bootstrap-wp table .span4 {
1294
- float: none;
1295
- width: 284px;
1296
- margin-left: 0;
1297
- }
1298
- .bootstrap-wp table .span5 {
1299
- float: none;
1300
- width: 364px;
1301
- margin-left: 0;
1302
- }
1303
- .bootstrap-wp table .span6 {
1304
- float: none;
1305
- width: 444px;
1306
- margin-left: 0;
1307
- }
1308
- .bootstrap-wp table .span7 {
1309
- float: none;
1310
- width: 524px;
1311
- margin-left: 0;
1312
- }
1313
- .bootstrap-wp table .span8 {
1314
- float: none;
1315
- width: 604px;
1316
- margin-left: 0;
1317
- }
1318
- .bootstrap-wp table .span9 {
1319
- float: none;
1320
- width: 684px;
1321
- margin-left: 0;
1322
- }
1323
- .bootstrap-wp table .span10 {
1324
- float: none;
1325
- width: 764px;
1326
- margin-left: 0;
1327
- }
1328
- .bootstrap-wp table .span11 {
1329
- float: none;
1330
- width: 844px;
1331
- margin-left: 0;
1332
- }
1333
- .bootstrap-wp table .span12 {
1334
- float: none;
1335
- width: 924px;
1336
- margin-left: 0;
1337
- }
1338
- .bootstrap-wp table .span13 {
1339
- float: none;
1340
- width: 1004px;
1341
- margin-left: 0;
1342
- }
1343
- .bootstrap-wp table .span14 {
1344
- float: none;
1345
- width: 1084px;
1346
- margin-left: 0;
1347
- }
1348
- .bootstrap-wp table .span15 {
1349
- float: none;
1350
- width: 1164px;
1351
- margin-left: 0;
1352
- }
1353
- .bootstrap-wp table .span16 {
1354
- float: none;
1355
- width: 1244px;
1356
- margin-left: 0;
1357
- }
1358
- .bootstrap-wp table .span17 {
1359
- float: none;
1360
- width: 1324px;
1361
- margin-left: 0;
1362
- }
1363
- .bootstrap-wp table .span18 {
1364
- float: none;
1365
- width: 1404px;
1366
- margin-left: 0;
1367
- }
1368
- .bootstrap-wp table .span19 {
1369
- float: none;
1370
- width: 1484px;
1371
- margin-left: 0;
1372
- }
1373
- .bootstrap-wp table .span20 {
1374
- float: none;
1375
- width: 1564px;
1376
- margin-left: 0;
1377
- }
1378
- .bootstrap-wp table .span21 {
1379
- float: none;
1380
- width: 1644px;
1381
- margin-left: 0;
1382
- }
1383
- .bootstrap-wp table .span22 {
1384
- float: none;
1385
- width: 1724px;
1386
- margin-left: 0;
1387
- }
1388
- .bootstrap-wp table .span23 {
1389
- float: none;
1390
- width: 1804px;
1391
- margin-left: 0;
1392
- }
1393
- .bootstrap-wp table .span24 {
1394
- float: none;
1395
- width: 1884px;
1396
- margin-left: 0;
1397
- }
1398
- .bootstrap-wp [class^="icon-"],
1399
- .bootstrap-wp [class*=" icon-"] {
1400
- display: inline-block;
1401
- width: 14px;
1402
- height: 14px;
1403
- line-height: 14px;
1404
- vertical-align: text-top;
1405
- background-image: url("../img/glyphicons-halflings.png");
1406
- background-position: 14px 14px;
1407
- background-repeat: no-repeat;
1408
- *margin-right: .3em;
1409
- }
1410
- .bootstrap-wp [class^="icon-"]:last-child,
1411
- .bootstrap-wp [class*=" icon-"]:last-child {
1412
- *margin-left: 0;
1413
- }
1414
- .bootstrap-wp .icon-white {
1415
- background-image: url("../img/glyphicons-halflings-white.png");
1416
- }
1417
- .bootstrap-wp .icon-glass {
1418
- background-position: 0 0;
1419
- }
1420
- .bootstrap-wp .icon-music {
1421
- background-position: -24px 0;
1422
- }
1423
- .bootstrap-wp .icon-search {
1424
- background-position: -48px 0;
1425
- }
1426
- .bootstrap-wp .icon-envelope {
1427
- background-position: -72px 0;
1428
- }
1429
- .bootstrap-wp .icon-heart {
1430
- background-position: -96px 0;
1431
- }
1432
- .bootstrap-wp .icon-star {
1433
- background-position: -120px 0;
1434
- }
1435
- .bootstrap-wp .icon-star-empty {
1436
- background-position: -144px 0;
1437
- }
1438
- .bootstrap-wp .icon-user {
1439
- background-position: -168px 0;
1440
- }
1441
- .bootstrap-wp .icon-film {
1442
- background-position: -192px 0;
1443
- }
1444
- .bootstrap-wp .icon-th-large {
1445
- background-position: -216px 0;
1446
- }
1447
- .bootstrap-wp .icon-th {
1448
- background-position: -240px 0;
1449
- }
1450
- .bootstrap-wp .icon-th-list {
1451
- background-position: -264px 0;
1452
- }
1453
- .bootstrap-wp .icon-ok {
1454
- background-position: -288px 0;
1455
- }
1456
- .bootstrap-wp .icon-remove {
1457
- background-position: -312px 0;
1458
- }
1459
- .bootstrap-wp .icon-zoom-in {
1460
- background-position: -336px 0;
1461
- }
1462
- .bootstrap-wp .icon-zoom-out {
1463
- background-position: -360px 0;
1464
- }
1465
- .bootstrap-wp .icon-off {
1466
- background-position: -384px 0;
1467
- }
1468
- .bootstrap-wp .icon-signal {
1469
- background-position: -408px 0;
1470
- }
1471
- .bootstrap-wp .icon-cog {
1472
- background-position: -432px 0;
1473
- }
1474
- .bootstrap-wp .icon-trash {
1475
- background-position: -456px 0;
1476
- }
1477
- .bootstrap-wp .icon-home {
1478
- background-position: 0 -24px;
1479
- }
1480
- .bootstrap-wp .icon-file {
1481
- background-position: -24px -24px;
1482
- }
1483
- .bootstrap-wp .icon-time {
1484
- background-position: -48px -24px;
1485
- }
1486
- .bootstrap-wp .icon-road {
1487
- background-position: -72px -24px;
1488
- }
1489
- .bootstrap-wp .icon-download-alt {
1490
- background-position: -96px -24px;
1491
- }
1492
- .bootstrap-wp .icon-download {
1493
- background-position: -120px -24px;
1494
- }
1495
- .bootstrap-wp .icon-upload {
1496
- background-position: -144px -24px;
1497
- }
1498
- .bootstrap-wp .icon-inbox {
1499
- background-position: -168px -24px;
1500
- }
1501
- .bootstrap-wp .icon-play-circle {
1502
- background-position: -192px -24px;
1503
- }
1504
- .bootstrap-wp .icon-repeat {
1505
- background-position: -216px -24px;
1506
- }
1507
- .bootstrap-wp .icon-refresh {
1508
- background-position: -240px -24px;
1509
- }
1510
- .bootstrap-wp .icon-list-alt {
1511
- background-position: -264px -24px;
1512
- }
1513
- .bootstrap-wp .icon-lock {
1514
- background-position: -287px -24px;
1515
- }
1516
- .bootstrap-wp .icon-flag {
1517
- background-position: -312px -24px;
1518
- }
1519
- .bootstrap-wp .icon-headphones {
1520
- background-position: -336px -24px;
1521
- }
1522
- .bootstrap-wp .icon-volume-off {
1523
- background-position: -360px -24px;
1524
- }
1525
- .bootstrap-wp .icon-volume-down {
1526
- background-position: -384px -24px;
1527
- }
1528
- .bootstrap-wp .icon-volume-up {
1529
- background-position: -408px -24px;
1530
- }
1531
- .bootstrap-wp .icon-qrcode {
1532
- background-position: -432px -24px;
1533
- }
1534
- .bootstrap-wp .icon-barcode {
1535
- background-position: -456px -24px;
1536
- }
1537
- .bootstrap-wp .icon-tag {
1538
- background-position: 0 -48px;
1539
- }
1540
- .bootstrap-wp .icon-tags {
1541
- background-position: -25px -48px;
1542
- }
1543
- .bootstrap-wp .icon-book {
1544
- background-position: -48px -48px;
1545
- }
1546
- .bootstrap-wp .icon-bookmark {
1547
- background-position: -72px -48px;
1548
- }
1549
- .bootstrap-wp .icon-print {
1550
- background-position: -96px -48px;
1551
- }
1552
- .bootstrap-wp .icon-camera {
1553
- background-position: -120px -48px;
1554
- }
1555
- .bootstrap-wp .icon-font {
1556
- background-position: -144px -48px;
1557
- }
1558
- .bootstrap-wp .icon-bold {
1559
- background-position: -167px -48px;
1560
- }
1561
- .bootstrap-wp .icon-italic {
1562
- background-position: -192px -48px;
1563
- }
1564
- .bootstrap-wp .icon-text-height {
1565
- background-position: -216px -48px;
1566
- }
1567
- .bootstrap-wp .icon-text-width {
1568
- background-position: -240px -48px;
1569
- }
1570
- .bootstrap-wp .icon-align-left {
1571
- background-position: -264px -48px;
1572
- }
1573
- .bootstrap-wp .icon-align-center {
1574
- background-position: -288px -48px;
1575
- }
1576
- .bootstrap-wp .icon-align-right {
1577
- background-position: -312px -48px;
1578
- }
1579
- .bootstrap-wp .icon-align-justify {
1580
- background-position: -336px -48px;
1581
- }
1582
- .bootstrap-wp .icon-list {
1583
- background-position: -360px -48px;
1584
- }
1585
- .bootstrap-wp .icon-indent-left {
1586
- background-position: -384px -48px;
1587
- }
1588
- .bootstrap-wp .icon-indent-right {
1589
- background-position: -408px -48px;
1590
- }
1591
- .bootstrap-wp .icon-facetime-video {
1592
- background-position: -432px -48px;
1593
- }
1594
- .bootstrap-wp .icon-picture {
1595
- background-position: -456px -48px;
1596
- }
1597
- .bootstrap-wp .icon-pencil {
1598
- background-position: 0 -72px;
1599
- }
1600
- .bootstrap-wp .icon-map-marker {
1601
- background-position: -24px -72px;
1602
- }
1603
- .bootstrap-wp .icon-adjust {
1604
- background-position: -48px -72px;
1605
- }
1606
- .bootstrap-wp .icon-tint {
1607
- background-position: -72px -72px;
1608
- }
1609
- .bootstrap-wp .icon-edit {
1610
- background-position: -96px -72px;
1611
- }
1612
- .bootstrap-wp .icon-share {
1613
- background-position: -120px -72px;
1614
- }
1615
- .bootstrap-wp .icon-check {
1616
- background-position: -144px -72px;
1617
- }
1618
- .bootstrap-wp .icon-move {
1619
- background-position: -168px -72px;
1620
- }
1621
- .bootstrap-wp .icon-step-backward {
1622
- background-position: -192px -72px;
1623
- }
1624
- .bootstrap-wp .icon-fast-backward {
1625
- background-position: -216px -72px;
1626
- }
1627
- .bootstrap-wp .icon-backward {
1628
- background-position: -240px -72px;
1629
- }
1630
- .bootstrap-wp .icon-play {
1631
- background-position: -264px -72px;
1632
- }
1633
- .bootstrap-wp .icon-pause {
1634
- background-position: -288px -72px;
1635
- }
1636
- .bootstrap-wp .icon-stop {
1637
- background-position: -312px -72px;
1638
- }
1639
- .bootstrap-wp .icon-forward {
1640
- background-position: -336px -72px;
1641
- }
1642
- .bootstrap-wp .icon-fast-forward {
1643
- background-position: -360px -72px;
1644
- }
1645
- .bootstrap-wp .icon-step-forward {
1646
- background-position: -384px -72px;
1647
- }
1648
- .bootstrap-wp .icon-eject {
1649
- background-position: -408px -72px;
1650
- }
1651
- .bootstrap-wp .icon-chevron-left {
1652
- background-position: -432px -72px;
1653
- }
1654
- .bootstrap-wp .icon-chevron-right {
1655
- background-position: -456px -72px;
1656
- }
1657
- .bootstrap-wp .icon-plus-sign {
1658
- background-position: 0 -96px;
1659
- }
1660
- .bootstrap-wp .icon-minus-sign {
1661
- background-position: -24px -96px;
1662
- }
1663
- .bootstrap-wp .icon-remove-sign {
1664
- background-position: -48px -96px;
1665
- }
1666
- .bootstrap-wp .icon-ok-sign {
1667
- background-position: -72px -96px;
1668
- }
1669
- .bootstrap-wp .icon-question-sign {
1670
- background-position: -96px -96px;
1671
- }
1672
- .bootstrap-wp .icon-info-sign {
1673
- background-position: -120px -96px;
1674
- }
1675
- .bootstrap-wp .icon-screenshot {
1676
- background-position: -144px -96px;
1677
- }
1678
- .bootstrap-wp .icon-remove-circle {
1679
- background-position: -168px -96px;
1680
- }
1681
- .bootstrap-wp .icon-ok-circle {
1682
- background-position: -192px -96px;
1683
- }
1684
- .bootstrap-wp .icon-ban-circle {
1685
- background-position: -216px -96px;
1686
- }
1687
- .bootstrap-wp .icon-arrow-left {
1688
- background-position: -240px -96px;
1689
- }
1690
- .bootstrap-wp .icon-arrow-right {
1691
- background-position: -264px -96px;
1692
- }
1693
- .bootstrap-wp .icon-arrow-up {
1694
- background-position: -289px -96px;
1695
- }
1696
- .bootstrap-wp .icon-arrow-down {
1697
- background-position: -312px -96px;
1698
- }
1699
- .bootstrap-wp .icon-share-alt {
1700
- background-position: -336px -96px;
1701
- }
1702
- .bootstrap-wp .icon-resize-full {
1703
- background-position: -360px -96px;
1704
- }
1705
- .bootstrap-wp .icon-resize-small {
1706
- background-position: -384px -96px;
1707
- }
1708
- .bootstrap-wp .icon-plus {
1709
- background-position: -408px -96px;
1710
- }
1711
- .bootstrap-wp .icon-minus {
1712
- background-position: -433px -96px;
1713
- }
1714
- .bootstrap-wp .icon-asterisk {
1715
- background-position: -456px -96px;
1716
- }
1717
- .bootstrap-wp .icon-exclamation-sign {
1718
- background-position: 0 -120px;
1719
- }
1720
- .bootstrap-wp .icon-gift {
1721
- background-position: -24px -120px;
1722
- }
1723
- .bootstrap-wp .icon-leaf {
1724
- background-position: -48px -120px;
1725
- }
1726
- .bootstrap-wp .icon-fire {
1727
- background-position: -72px -120px;
1728
- }
1729
- .bootstrap-wp .icon-eye-open {
1730
- background-position: -96px -120px;
1731
- }
1732
- .bootstrap-wp .icon-eye-close {
1733
- background-position: -120px -120px;
1734
- }
1735
- .bootstrap-wp .icon-warning-sign {
1736
- background-position: -144px -120px;
1737
- }
1738
- .bootstrap-wp .icon-plane {
1739
- background-position: -168px -120px;
1740
- }
1741
- .bootstrap-wp .icon-calendar {
1742
- background-position: -192px -120px;
1743
- }
1744
- .bootstrap-wp .icon-random {
1745
- background-position: -216px -120px;
1746
- }
1747
- .bootstrap-wp .icon-comment {
1748
- background-position: -240px -120px;
1749
- }
1750
- .bootstrap-wp .icon-magnet {
1751
- background-position: -264px -120px;
1752
- }
1753
- .bootstrap-wp .icon-chevron-up {
1754
- background-position: -288px -120px;
1755
- }
1756
- .bootstrap-wp .icon-chevron-down {
1757
- background-position: -313px -119px;
1758
- }
1759
- .bootstrap-wp .icon-retweet {
1760
- background-position: -336px -120px;
1761
- }
1762
- .bootstrap-wp .icon-shopping-cart {
1763
- background-position: -360px -120px;
1764
- }
1765
- .bootstrap-wp .icon-folder-close {
1766
- background-position: -384px -120px;
1767
- }
1768
- .bootstrap-wp .icon-folder-open {
1769
- background-position: -408px -120px;
1770
- }
1771
- .bootstrap-wp .icon-resize-vertical {
1772
- background-position: -432px -119px;
1773
- }
1774
- .bootstrap-wp .icon-resize-horizontal {
1775
- background-position: -456px -118px;
1776
- }
1777
- .bootstrap-wp .dropdown {
1778
- position: relative;
1779
- }
1780
- .bootstrap-wp .dropdown-toggle {
1781
- *margin-bottom: -3px;
1782
- }
1783
- .bootstrap-wp .dropdown-toggle:active,
1784
- .bootstrap-wp .open .dropdown-toggle {
1785
- outline: 0;
1786
- }
1787
- .bootstrap-wp .caret {
1788
- display: inline-block;
1789
- width: 0;
1790
- height: 0;
1791
- vertical-align: top;
1792
- border-left: 4px solid transparent;
1793
- border-right: 4px solid transparent;
1794
- border-top: 4px solid #000000;
1795
- opacity: 0.3;
1796
- filter: alpha(opacity=30);
1797
- content: "";
1798
- }
1799
- .bootstrap-wp .dropdown .caret {
1800
- margin-top: 8px;
1801
- margin-left: 2px;
1802
- }
1803
- .bootstrap-wp .dropdown:hover .caret,
1804
- .bootstrap-wp .open.dropdown .caret {
1805
- opacity: 1;
1806
- filter: alpha(opacity=100);
1807
- }
1808
- .bootstrap-wp .dropdown-menu {
1809
- position: absolute;
1810
- top: 100%;
1811
- left: 0;
1812
- z-index: 1000;
1813
- float: left;
1814
- display: none;
1815
- min-width: 160px;
1816
- padding: 4px 0;
1817
- margin: 0;
1818
- list-style: none;
1819
- background-color: #ffffff;
1820
- border-color: #ccc;
1821
- border-color: rgba(0, 0, 0, 0.2);
1822
- border-style: solid;
1823
- border-width: 1px;
1824
- -webkit-border-radius: 0 0 5px 5px;
1825
- -moz-border-radius: 0 0 5px 5px;
1826
- border-radius: 0 0 5px 5px;
1827
- -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
1828
- -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
1829
- box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
1830
- -webkit-background-clip: padding-box;
1831
- -moz-background-clip: padding;
1832
- background-clip: padding-box;
1833
- *border-right-width: 2px;
1834
- *border-bottom-width: 2px;
1835
- }
1836
- .bootstrap-wp .dropdown-menu.pull-right {
1837
- right: 0;
1838
- left: auto;
1839
- }
1840
- .bootstrap-wp .dropdown-menu .divider {
1841
- height: 1px;
1842
- margin: 8px 1px;
1843
- overflow: hidden;
1844
- background-color: #e5e5e5;
1845
- border-bottom: 1px solid #ffffff;
1846
- *width: 100%;
1847
- *margin: -5px 0 5px;
1848
- }
1849
- .bootstrap-wp .dropdown-menu a {
1850
- display: block;
1851
- padding: 3px 15px;
1852
- clear: both;
1853
- font-weight: normal;
1854
- line-height: 18px;
1855
- color: #333333;
1856
- white-space: nowrap;
1857
- }
1858
- .bootstrap-wp .dropdown-menu li > a:hover,
1859
- .bootstrap-wp .dropdown-menu .active > a,
1860
- .bootstrap-wp .dropdown-menu .active > a:hover {
1861
- color: #ffffff;
1862
- text-decoration: none;
1863
- background-color: #0088cc;
1864
- }
1865
- .bootstrap-wp .dropdown.open {
1866
- *z-index: 1000;
1867
- }
1868
- .bootstrap-wp .dropdown.open .dropdown-toggle {
1869
- color: #ffffff;
1870
- background: #ccc;
1871
- background: rgba(0, 0, 0, 0.3);
1872
- }
1873
- .bootstrap-wp .dropdown.open .dropdown-menu {
1874
- display: block;
1875
- }
1876
- .bootstrap-wp .pull-right .dropdown-menu {
1877
- left: auto;
1878
- right: 0;
1879
- }
1880
- .bootstrap-wp .dropup .caret,
1881
- .bootstrap-wp .navbar-fixed-bottom .dropdown .caret {
1882
- border-top: 0;
1883
- border-bottom: 4px solid #000000;
1884
- content: "\2191";
1885
- }
1886
- .bootstrap-wp .dropup .dropdown-menu,
1887
- .bootstrap-wp .navbar-fixed-bottom .dropdown .dropdown-menu {
1888
- top: auto;
1889
- bottom: 100%;
1890
- margin-bottom: 1px;
1891
- }
1892
- .bootstrap-wp .typeahead {
1893
- margin-top: 2px;
1894
- -webkit-border-radius: 4px;
1895
- -moz-border-radius: 4px;
1896
- border-radius: 4px;
1897
- }
1898
- .bootstrap-wp .well {
1899
- min-height: 20px;
1900
- padding: 19px;
1901
- margin-bottom: 20px;
1902
- background-color: #f5f5f5;
1903
- border: 1px solid #eee;
1904
- border: 1px solid rgba(0, 0, 0, 0.05);
1905
- -webkit-border-radius: 4px;
1906
- -moz-border-radius: 4px;
1907
- border-radius: 4px;
1908
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
1909
- -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
1910
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
1911
- }
1912
- .bootstrap-wp .well blockquote {
1913
- border-color: #ddd;
1914
- border-color: rgba(0, 0, 0, 0.15);
1915
- }
1916
- .bootstrap-wp .well-large {
1917
- padding: 24px;
1918
- -webkit-border-radius: 6px;
1919
- -moz-border-radius: 6px;
1920
- border-radius: 6px;
1921
- }
1922
- .bootstrap-wp .well-small {
1923
- padding: 9px;
1924
- -webkit-border-radius: 3px;
1925
- -moz-border-radius: 3px;
1926
- border-radius: 3px;
1927
- }
1928
- body .fade,
1929
- .bootstrap-wp .fade {
1930
- -webkit-transition: opacity 0.15s linear;
1931
- -moz-transition: opacity 0.15s linear;
1932
- -ms-transition: opacity 0.15s linear;
1933
- -o-transition: opacity 0.15s linear;
1934
- transition: opacity 0.15s linear;
1935
- opacity: 0;
1936
- }
1937
- body .fade.in,
1938
- .bootstrap-wp .fade.in {
1939
- opacity: 1;
1940
- }
1941
- .bootstrap-wp .collapse {
1942
- -webkit-transition: height 0.35s ease;
1943
- -moz-transition: height 0.35s ease;
1944
- -ms-transition: height 0.35s ease;
1945
- -o-transition: height 0.35s ease;
1946
- transition: height 0.35s ease;
1947
- position: relative;
1948
- overflow: hidden;
1949
- height: 0;
1950
- }
1951
- .bootstrap-wp .collapse.in {
1952
- height: auto;
1953
- }
1954
- .bootstrap-wp .close {
1955
- float: right;
1956
- font-size: 20px;
1957
- font-weight: bold;
1958
- line-height: 18px;
1959
- color: #000000;
1960
- text-shadow: 0 1px 0 #ffffff;
1961
- opacity: 0.2;
1962
- filter: alpha(opacity=20);
1963
- }
1964
- .bootstrap-wp .close:hover {
1965
- color: #000000;
1966
- text-decoration: none;
1967
- opacity: 0.4;
1968
- filter: alpha(opacity=40);
1969
- cursor: pointer;
1970
- }
1971
- .bootstrap-wp .btn {
1972
- display: inline-block;
1973
- *display: inline;
1974
- /* IE7 inline-block hack */
1975
-
1976
- *zoom: 1;
1977
- padding: 4px 10px 4px;
1978
- margin-bottom: 0;
1979
- font-size: 13px;
1980
- line-height: 18px;
1981
- color: #333333;
1982
- text-align: center;
1983
- text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
1984
- vertical-align: middle;
1985
- background-color: #f5f5f5;
1986
- background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
1987
- background-image: -ms-linear-gradient(top, #ffffff, #e6e6e6);
1988
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
1989
- background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
1990
- background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
1991
- background-image: linear-gradient(top, #ffffff, #e6e6e6);
1992
- background-repeat: repeat-x;
1993
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);
1994
- border-color: #e6e6e6 #e6e6e6 #bfbfbf;
1995
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
1996
- filter: progid:dximagetransform.microsoft.gradient(enabled=false);
1997
- border: 1px solid #cccccc;
1998
- border-bottom-color: #b3b3b3;
1999
- -webkit-border-radius: 4px;
2000
- -moz-border-radius: 4px;
2001
- border-radius: 4px;
2002
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
2003
- -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
2004
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
2005
- cursor: pointer;
2006
- *margin-left: .3em;
2007
- }
2008
- .bootstrap-wp .btn:hover,
2009
- .bootstrap-wp .btn:active,
2010
- .bootstrap-wp .btn.active,
2011
- .bootstrap-wp .btn.hover,
2012
- .bootstrap-wp .btn.disabled,
2013
- .bootstrap-wp .btn[disabled] {
2014
- background-color: #e6e6e6;
2015
- }
2016
- .bootstrap-wp .btn:active,
2017
- .bootstrap-wp .btn.active {
2018
- background-color: #cccccc \9;
2019
- }
2020
- .bootstrap-wp .btn:first-child {
2021
- *margin-left: 0;
2022
- }
2023
- .bootstrap-wp .btn:hover {
2024
- color: #333333;
2025
- text-decoration: none;
2026
- background-color: #e6e6e6;
2027
- background-position: 0 -15px;
2028
- -webkit-transition: background-position 0.1s linear;
2029
- -moz-transition: background-position 0.1s linear;
2030
- -ms-transition: background-position 0.1s linear;
2031
- -o-transition: background-position 0.1s linear;
2032
- transition: background-position 0.1s linear;
2033
- }
2034
- .bootstrap-wp .btn:focus {
2035
- outline: thin dotted #333;
2036
- outline: 5px auto -webkit-focus-ring-color;
2037
- outline-offset: -2px;
2038
- }
2039
- .bootstrap-wp .btn.active,
2040
- .bootstrap-wp .btn:active {
2041
- background-image: none;
2042
- -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
2043
- -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
2044
- box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
2045
- background-color: #e6e6e6;
2046
- background-color: #d9d9d9 \9;
2047
- outline: 0;
2048
- }
2049
- .bootstrap-wp .btn.disabled,
2050
- .bootstrap-wp .btn[disabled] {
2051
- cursor: default;
2052
- background-image: none;
2053
- background-color: #e6e6e6;
2054
- opacity: 0.65;
2055
- filter: alpha(opacity=65);
2056
- -webkit-box-shadow: none;
2057
- -moz-box-shadow: none;
2058
- box-shadow: none;
2059
- }
2060
- .bootstrap-wp .btn-large {
2061
- padding: 9px 14px;
2062
- font-size: 15px;
2063
- line-height: normal;
2064
- -webkit-border-radius: 5px;
2065
- -moz-border-radius: 5px;
2066
- border-radius: 5px;
2067
- }
2068
- .bootstrap-wp .btn-large [class^="icon-"] {
2069
- margin-top: 1px;
2070
- }
2071
- .bootstrap-wp .btn-small {
2072
- padding: 5px 9px;
2073
- font-size: 11px;
2074
- line-height: 16px;
2075
- }
2076
- .bootstrap-wp .btn-small [class^="icon-"] {
2077
- margin-top: -1px;
2078
- }
2079
- .bootstrap-wp .btn-mini {
2080
- padding: 2px 6px;
2081
- font-size: 11px;
2082
- line-height: 14px;
2083
- }
2084
- .bootstrap-wp .btn-primary,
2085
- .bootstrap-wp .btn-primary:hover,
2086
- .bootstrap-wp .btn-warning,
2087
- .bootstrap-wp .btn-warning:hover,
2088
- .bootstrap-wp .btn-danger,
2089
- .bootstrap-wp .btn-danger:hover,
2090
- .bootstrap-wp .btn-success,
2091
- .bootstrap-wp .btn-success:hover,
2092
- .bootstrap-wp .btn-info,
2093
- .bootstrap-wp .btn-info:hover,
2094
- .bootstrap-wp .btn-inverse,
2095
- .bootstrap-wp .btn-inverse:hover {
2096
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
2097
- color: #ffffff;
2098
- }
2099
- .bootstrap-wp .btn-primary.active,
2100
- .bootstrap-wp .btn-warning.active,
2101
- .bootstrap-wp .btn-danger.active,
2102
- .bootstrap-wp .btn-success.active,
2103
- .bootstrap-wp .btn-info.active,
2104
- .bootstrap-wp .btn-inverse.active {
2105
- color: rgba(255, 255, 255, 0.75);
2106
- }
2107
- .bootstrap-wp .btn-primary {
2108
- background-color: #0074cc;
2109
- background-image: -moz-linear-gradient(top, #0088cc, #0055cc);
2110
- background-image: -ms-linear-gradient(top, #0088cc, #0055cc);
2111
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0055cc));
2112
- background-image: -webkit-linear-gradient(top, #0088cc, #0055cc);
2113
- background-image: -o-linear-gradient(top, #0088cc, #0055cc);
2114
- background-image: linear-gradient(top, #0088cc, #0055cc);
2115
- background-repeat: repeat-x;
2116
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0055cc', GradientType=0);
2117
- border-color: #0055cc #0055cc #003580;
2118
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
2119
- filter: progid:dximagetransform.microsoft.gradient(enabled=false);
2120
- }
2121
- .bootstrap-wp .btn-primary:hover,
2122
- .bootstrap-wp .btn-primary:active,
2123
- .bootstrap-wp .btn-primary.active,
2124
- .bootstrap-wp .btn-primary.disabled,
2125
- .bootstrap-wp .btn-primary[disabled] {
2126
- background-color: #0055cc;
2127
- }
2128
- .bootstrap-wp .btn-primary:active,
2129
- .bootstrap-wp .btn-primary.active {
2130
- background-color: #004099 \9;
2131
- }
2132
- .bootstrap-wp .btn-warning {
2133
- background-color: #faa732;
2134
- background-image: -moz-linear-gradient(top, #fbb450, #f89406);
2135
- background-image: -ms-linear-gradient(top, #fbb450, #f89406);
2136
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));
2137
- background-image: -webkit-linear-gradient(top, #fbb450, #f89406);
2138
- background-image: -o-linear-gradient(top, #fbb450, #f89406);
2139
- background-image: linear-gradient(top, #fbb450, #f89406);
2140
- background-repeat: repeat-x;
2141
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbb450', endColorstr='#f89406', GradientType=0);
2142
- border-color: #f89406 #f89406 #ad6704;
2143
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
2144
- filter: progid:dximagetransform.microsoft.gradient(enabled=false);
2145
- }
2146
- .bootstrap-wp .btn-warning:hover,
2147
- .bootstrap-wp .btn-warning:active,
2148
- .bootstrap-wp .btn-warning.active,
2149
- .bootstrap-wp .btn-warning.disabled,
2150
- .bootstrap-wp .btn-warning[disabled] {
2151
- background-color: #f89406;
2152
- }
2153
- .bootstrap-wp .btn-warning:active,
2154
- .bootstrap-wp .btn-warning.active {
2155
- background-color: #c67605 \9;
2156
- }
2157
- .bootstrap-wp .btn-danger {
2158
- background-color: #da4f49;
2159
- background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f);
2160
- background-image: -ms-linear-gradient(top, #ee5f5b, #bd362f);
2161
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));
2162
- background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f);
2163
- background-image: -o-linear-gradient(top, #ee5f5b, #bd362f);
2164
- background-image: linear-gradient(top, #ee5f5b, #bd362f);
2165
- background-repeat: repeat-x;
2166
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#bd362f', GradientType=0);
2167
- border-color: #bd362f #bd362f #802420;
2168
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
2169
- filter: progid:dximagetransform.microsoft.gradient(enabled=false);
2170
- }
2171
- .bootstrap-wp .btn-danger:hover,
2172
- .bootstrap-wp .btn-danger:active,
2173
- .bootstrap-wp .btn-danger.active,
2174
- .bootstrap-wp .btn-danger.disabled,
2175
- .bootstrap-wp .btn-danger[disabled] {
2176
- background-color: #bd362f;
2177
- }
2178
- .bootstrap-wp .btn-danger:active,
2179
- .bootstrap-wp .btn-danger.active {
2180
- background-color: #942a25 \9;
2181
- }
2182
- .bootstrap-wp .btn-success {
2183
- background-color: #5bb75b;
2184
- background-image: -moz-linear-gradient(top, #62c462, #51a351);
2185
- background-image: -ms-linear-gradient(top, #62c462, #51a351);
2186
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));
2187
- background-image: -webkit-linear-gradient(top, #62c462, #51a351);
2188
- background-image: -o-linear-gradient(top, #62c462, #51a351);
2189
- background-image: linear-gradient(top, #62c462, #51a351);
2190
- background-repeat: repeat-x;
2191
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#51a351', GradientType=0);
2192
- border-color: #51a351 #51a351 #387038;
2193
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
2194
- filter: progid:dximagetransform.microsoft.gradient(enabled=false);
2195
- }
2196
- .bootstrap-wp .btn-success:hover,
2197
- .bootstrap-wp .btn-success:active,
2198
- .bootstrap-wp .btn-success.active,
2199
- .bootstrap-wp .btn-success.disabled,
2200
- .bootstrap-wp .btn-success[disabled] {
2201
- background-color: #51a351;
2202
- }
2203
- .bootstrap-wp .btn-success:active,
2204
- .bootstrap-wp .btn-success.active {
2205
- background-color: #408140 \9;
2206
- }
2207
- .bootstrap-wp .btn-info {
2208
- background-color: #49afcd;
2209
- background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4);
2210
- background-image: -ms-linear-gradient(top, #5bc0de, #2f96b4);
2211
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4));
2212
- background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4);
2213
- background-image: -o-linear-gradient(top, #5bc0de, #2f96b4);
2214
- background-image: linear-gradient(top, #5bc0de, #2f96b4);
2215
- background-repeat: repeat-x;
2216
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#2f96b4', GradientType=0);
2217
- border-color: #2f96b4 #2f96b4 #1f6377;
2218
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
2219
- filter: progid:dximagetransform.microsoft.gradient(enabled=false);
2220
- }
2221
- .bootstrap-wp .btn-info:hover,
2222
- .bootstrap-wp .btn-info:active,
2223
- .bootstrap-wp .btn-info.active,
2224
- .bootstrap-wp .btn-info.disabled,
2225
- .bootstrap-wp .btn-info[disabled] {
2226
- background-color: #2f96b4;
2227
- }
2228
- .bootstrap-wp .btn-info:active,
2229
- .bootstrap-wp .btn-info.active {
2230
- background-color: #24748c \9;
2231
- }
2232
- .bootstrap-wp .btn-inverse {
2233
- background-color: #414141;
2234
- background-image: -moz-linear-gradient(top, #555555, #222222);
2235
- background-image: -ms-linear-gradient(top, #555555, #222222);
2236
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#555555), to(#222222));
2237
- background-image: -webkit-linear-gradient(top, #555555, #222222);
2238
- background-image: -o-linear-gradient(top, #555555, #222222);
2239
- background-image: linear-gradient(top, #555555, #222222);
2240
- background-repeat: repeat-x;
2241
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#555555', endColorstr='#222222', GradientType=0);
2242
- border-color: #222222 #222222 #000000;
2243
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
2244
- filter: progid:dximagetransform.microsoft.gradient(enabled=false);
2245
- }
2246
- .bootstrap-wp .btn-inverse:hover,
2247
- .bootstrap-wp .btn-inverse:active,
2248
- .bootstrap-wp .btn-inverse.active,
2249
- .bootstrap-wp .btn-inverse.disabled,
2250
- .bootstrap-wp .btn-inverse[disabled] {
2251
- background-color: #222222;
2252
- }
2253
- .bootstrap-wp .btn-inverse:active,
2254
- .bootstrap-wp .btn-inverse.active {
2255
- background-color: #080808 \9;
2256
- }
2257
- .bootstrap-wp button.btn,
2258
- .bootstrap-wp input[type="submit"].btn {
2259
- *padding-top: 2px;
2260
- *padding-bottom: 2px;
2261
- }
2262
- .bootstrap-wp button.btn::-moz-focus-inner,
2263
- .bootstrap-wp input[type="submit"].btn::-moz-focus-inner {
2264
- padding: 0;
2265
- border: 0;
2266
- }
2267
- .bootstrap-wp button.btn.btn-large,
2268
- .bootstrap-wp input[type="submit"].btn.btn-large {
2269
- *padding-top: 7px;
2270
- *padding-bottom: 7px;
2271
- }
2272
- .bootstrap-wp button.btn.btn-small,
2273
- .bootstrap-wp input[type="submit"].btn.btn-small {
2274
- *padding-top: 3px;
2275
- *padding-bottom: 3px;
2276
- }
2277
- .bootstrap-wp button.btn.btn-mini,
2278
- .bootstrap-wp input[type="submit"].btn.btn-mini {
2279
- *padding-top: 1px;
2280
- *padding-bottom: 1px;
2281
- }
2282
- .bootstrap-wp .btn-group {
2283
- position: relative;
2284
- *zoom: 1;
2285
- *margin-left: .3em;
2286
- }
2287
- .bootstrap-wp .btn-group:before,
2288
- .bootstrap-wp .btn-group:after {
2289
- display: table;
2290
- content: "";
2291
- }
2292
- .bootstrap-wp .btn-group:after {
2293
- clear: both;
2294
- }
2295
- .bootstrap-wp .btn-group:first-child {
2296
- *margin-left: 0;
2297
- }
2298
- .bootstrap-wp .btn-group + .btn-group {
2299
- margin-left: 5px;
2300
- }
2301
- .bootstrap-wp .btn-toolbar {
2302
- margin-top: 9px;
2303
- margin-bottom: 9px;
2304
- }
2305
- .bootstrap-wp .btn-toolbar .btn-group {
2306
- display: inline-block;
2307
- *display: inline;
2308
- /* IE7 inline-block hack */
2309
-
2310
- *zoom: 1;
2311
- }
2312
- .bootstrap-wp .btn-group .btn {
2313
- position: relative;
2314
- float: left;
2315
- margin-left: -1px;
2316
- -webkit-border-radius: 0;
2317
- -moz-border-radius: 0;
2318
- border-radius: 0;
2319
- }
2320
- .bootstrap-wp .btn-group .btn:first-child {
2321
- margin-left: 0;
2322
- -webkit-border-top-left-radius: 4px;
2323
- -moz-border-radius-topleft: 4px;
2324
- border-top-left-radius: 4px;
2325
- -webkit-border-bottom-left-radius: 4px;
2326
- -moz-border-radius-bottomleft: 4px;
2327
- border-bottom-left-radius: 4px;
2328
- }
2329
- .bootstrap-wp .btn-group .btn:last-child,
2330
- .bootstrap-wp .btn-group .dropdown-toggle {
2331
- -webkit-border-top-right-radius: 4px;
2332
- -moz-border-radius-topright: 4px;
2333
- border-top-right-radius: 4px;
2334
- -webkit-border-bottom-right-radius: 4px;
2335
- -moz-border-radius-bottomright: 4px;
2336
- border-bottom-right-radius: 4px;
2337
- }
2338
- .bootstrap-wp .btn-group .btn.large:first-child {
2339
- margin-left: 0;
2340
- -webkit-border-top-left-radius: 6px;
2341
- -moz-border-radius-topleft: 6px;
2342
- border-top-left-radius: 6px;
2343
- -webkit-border-bottom-left-radius: 6px;
2344
- -moz-border-radius-bottomleft: 6px;
2345
- border-bottom-left-radius: 6px;
2346
- }
2347
- .bootstrap-wp .btn-group .btn.large:last-child,
2348
- .bootstrap-wp .btn-group .large.dropdown-toggle {
2349
- -webkit-border-top-right-radius: 6px;
2350
- -moz-border-radius-topright: 6px;
2351
- border-top-right-radius: 6px;
2352
- -webkit-border-bottom-right-radius: 6px;
2353
- -moz-border-radius-bottomright: 6px;
2354
- border-bottom-right-radius: 6px;
2355
- }
2356
- .bootstrap-wp .btn-group .btn:hover,
2357
- .bootstrap-wp .btn-group .btn:focus,
2358
- .bootstrap-wp .btn-group .btn:active,
2359
- .bootstrap-wp .btn-group .btn.active {
2360
- z-index: 2;
2361
- }
2362
- .bootstrap-wp .btn-group .dropdown-toggle:active,
2363
- .bootstrap-wp .btn-group.open .dropdown-toggle {
2364
- outline: 0;
2365
- }
2366
- .bootstrap-wp .btn-group .dropdown-toggle {
2367
- padding-left: 8px;
2368
- padding-right: 8px;
2369
- -webkit-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
2370
- -moz-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
2371
- box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
2372
- *padding-top: 3px;
2373
- *padding-bottom: 3px;
2374
- }
2375
- .bootstrap-wp .btn-group .btn-mini.dropdown-toggle {
2376
- padding-left: 5px;
2377
- padding-right: 5px;
2378
- *padding-top: 1px;
2379
- *padding-bottom: 1px;
2380
- }
2381
- .bootstrap-wp .btn-group .btn-small.dropdown-toggle {
2382
- *padding-top: 4px;
2383
- *padding-bottom: 4px;
2384
- }
2385
- .bootstrap-wp .btn-group .btn-large.dropdown-toggle {
2386
- padding-left: 12px;
2387
- padding-right: 12px;
2388
- }
2389
- .bootstrap-wp .btn-group.open {
2390
- *z-index: 1000;
2391
- }
2392
- .bootstrap-wp .btn-group.open .dropdown-menu {
2393
- display: block;
2394
- margin-top: 1px;
2395
- -webkit-border-radius: 5px;
2396
- -moz-border-radius: 5px;
2397
- border-radius: 5px;
2398
- }
2399
- .bootstrap-wp .btn-group.open .dropdown-toggle {
2400
- background-image: none;
2401
- -webkit-box-shadow: inset 0 1px 6px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
2402
- -moz-box-shadow: inset 0 1px 6px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
2403
- box-shadow: inset 0 1px 6px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
2404
- }
2405
- .bootstrap-wp .btn .caret {
2406
- margin-top: 7px;
2407
- margin-left: 0;
2408
- }
2409
- .bootstrap-wp .btn:hover .caret,
2410
- .bootstrap-wp .open.btn-group .caret {
2411
- opacity: 1;
2412
- filter: alpha(opacity=100);
2413
- }
2414
- .bootstrap-wp .btn-mini .caret {
2415
- margin-top: 5px;
2416
- }
2417
- .bootstrap-wp .btn-small .caret {
2418
- margin-top: 6px;
2419
- }
2420
- .bootstrap-wp .btn-large .caret {
2421
- margin-top: 6px;
2422
- border-left: 5px solid transparent;
2423
- border-right: 5px solid transparent;
2424
- border-top: 5px solid #000000;
2425
- }
2426
- .bootstrap-wp .btn-primary .caret,
2427
- .bootstrap-wp .btn-warning .caret,
2428
- .bootstrap-wp .btn-danger .caret,
2429
- .bootstrap-wp .btn-info .caret,
2430
- .bootstrap-wp .btn-success .caret,
2431
- .bootstrap-wp .btn-inverse .caret {
2432
- border-top-color: #ffffff;
2433
- border-bottom-color: #ffffff;
2434
- opacity: 0.75;
2435
- filter: alpha(opacity=75);
2436
- }
2437
- .bootstrap-wp .alert {
2438
- padding: 8px 35px 8px 14px;
2439
- margin-bottom: 18px;
2440
- text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
2441
- background-color: #fcf8e3;
2442
- border: 1px solid #fbeed5;
2443
- -webkit-border-radius: 4px;
2444
- -moz-border-radius: 4px;
2445
- border-radius: 4px;
2446
- color: #c09853;
2447
- }
2448
- .bootstrap-wp .alert-heading {
2449
- color: inherit;
2450
- }
2451
- .bootstrap-wp .alert .close {
2452
- position: relative;
2453
- top: -2px;
2454
- right: -21px;
2455
- line-height: 18px;
2456
- }
2457
- .bootstrap-wp .alert-success {
2458
- background-color: #dff0d8;
2459
- border-color: #d6e9c6;
2460
- color: #468847;
2461
- }
2462
- .bootstrap-wp .alert-danger,
2463
- .bootstrap-wp .alert-error {
2464
- background-color: #f2dede;
2465
- border-color: #eed3d7;
2466
- color: #b94a48;
2467
- }
2468
- .bootstrap-wp .alert-info {
2469
- background-color: #d9edf7;
2470
- border-color: #bce8f1;
2471
- color: #3a87ad;
2472
- }
2473
- .bootstrap-wp .alert-block {
2474
- padding-top: 14px;
2475
- padding-bottom: 14px;
2476
- }
2477
- .bootstrap-wp .alert-block > p,
2478
- .bootstrap-wp .alert-block > ul {
2479
- margin-bottom: 0;
2480
- }
2481
- .bootstrap-wp .alert-block p + p {
2482
- margin-top: 5px;
2483
- }
2484
- .bootstrap-wp .nav {
2485
- margin-left: 0;
2486
- margin-bottom: 18px;
2487
- list-style: none;
2488
- }
2489
- .bootstrap-wp .nav > li > a {
2490
- display: block;
2491
- }
2492
- .bootstrap-wp .nav > li > a:hover {
2493
- text-decoration: none;
2494
- background-color: #eeeeee;
2495
- }
2496
- .bootstrap-wp .nav .nav-header {
2497
- display: block;
2498
- padding: 3px 15px;
2499
- font-size: 11px;
2500
- font-weight: bold;
2501
- line-height: 18px;
2502
- color: #999999;
2503
- text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
2504
- text-transform: uppercase;
2505
- }
2506
- .bootstrap-wp .nav li + .nav-header {
2507
- margin-top: 9px;
2508
- }
2509
- .bootstrap-wp .nav-list {
2510
- padding-left: 15px;
2511
- padding-right: 15px;
2512
- margin-bottom: 0;
2513
- }
2514
- .bootstrap-wp .nav-list > li > a,
2515
- .bootstrap-wp .nav-list .nav-header {
2516
- margin-left: -15px;
2517
- margin-right: -15px;
2518
- text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
2519
- }
2520
- .bootstrap-wp .nav-list > li > a {
2521
- padding: 3px 15px;
2522
- }
2523
- .bootstrap-wp .nav-list > .active > a,
2524
- .bootstrap-wp .nav-list > .active > a:hover {
2525
- color: #ffffff;
2526
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
2527
- background-color: #0088cc;
2528
- }
2529
- .bootstrap-wp .nav-list [class^="icon-"] {
2530
- margin-right: 2px;
2531
- }
2532
- .bootstrap-wp .nav-list .divider {
2533
- height: 1px;
2534
- margin: 8px 1px;
2535
- overflow: hidden;
2536
- background-color: #e5e5e5;
2537
- border-bottom: 1px solid #ffffff;
2538
- *width: 100%;
2539
- *margin: -5px 0 5px;
2540
- }
2541
- .bootstrap-wp .nav-tabs,
2542
- .bootstrap-wp .nav-pills {
2543
- *zoom: 1;
2544
- }
2545
- .bootstrap-wp .nav-tabs:before,
2546
- .bootstrap-wp .nav-pills:before,
2547
- .bootstrap-wp .nav-tabs:after,
2548
- .bootstrap-wp .nav-pills:after {
2549
- display: table;
2550
- content: "";
2551
- }
2552
- .bootstrap-wp .nav-tabs:after,
2553
- .bootstrap-wp .nav-pills:after {
2554
- clear: both;
2555
- }
2556
- .bootstrap-wp .nav-tabs > li,
2557
- .bootstrap-wp .nav-pills > li {
2558
- float: left;
2559
- }
2560
- .bootstrap-wp .nav-tabs > li > a,
2561
- .bootstrap-wp .nav-pills > li > a {
2562
- padding-right: 12px;
2563
- padding-left: 12px;
2564
- margin-right: 2px;
2565
- line-height: 14px;
2566
- }
2567
- .bootstrap-wp .nav-tabs {
2568
- border-bottom: 1px solid #ddd;
2569
- }
2570
- .bootstrap-wp .nav-tabs > li {
2571
- margin-bottom: -1px;
2572
- }
2573
- .bootstrap-wp .nav-tabs > li > a {
2574
- padding-top: 8px;
2575
- padding-bottom: 8px;
2576
- line-height: 18px;
2577
- border: 1px solid transparent;
2578
- -webkit-border-radius: 4px 4px 0 0;
2579
- -moz-border-radius: 4px 4px 0 0;
2580
- border-radius: 4px 4px 0 0;
2581
- }
2582
- .bootstrap-wp .nav-tabs > li > a:hover {
2583
- border-color: #eeeeee #eeeeee #dddddd;
2584
- }
2585
- .bootstrap-wp .nav-tabs > .active > a,
2586
- .bootstrap-wp .nav-tabs > .active > a:hover {
2587
- color: #555555;
2588
- background-color: #ffffff;
2589
- border: 1px solid #ddd;
2590
- border-bottom-color: transparent;
2591
- cursor: default;
2592
- }
2593
- .bootstrap-wp .nav-pills > li > a {
2594
- padding-top: 8px;
2595
- padding-bottom: 8px;
2596
- margin-top: 2px;
2597
- margin-bottom: 2px;
2598
- -webkit-border-radius: 5px;
2599
- -moz-border-radius: 5px;
2600
- border-radius: 5px;
2601
- }
2602
- .bootstrap-wp .nav-pills > .active > a,
2603
- .bootstrap-wp .nav-pills > .active > a:hover {
2604
- color: #ffffff;
2605
- background-color: #0088cc;
2606
- }
2607
- .bootstrap-wp .nav-stacked > li {
2608
- float: none;
2609
- }
2610
- .bootstrap-wp .nav-stacked > li > a {
2611
- margin-right: 0;
2612
- }
2613
- .bootstrap-wp .nav-tabs.nav-stacked {
2614
- border-bottom: 0;
2615
- }
2616
- .bootstrap-wp .nav-tabs.nav-stacked > li > a {
2617
- border: 1px solid #ddd;
2618
- -webkit-border-radius: 0;
2619
- -moz-border-radius: 0;
2620
- border-radius: 0;
2621
- }
2622
- .bootstrap-wp .nav-tabs.nav-stacked > li:first-child > a {
2623
- -webkit-border-radius: 4px 4px 0 0;
2624
- -moz-border-radius: 4px 4px 0 0;
2625
- border-radius: 4px 4px 0 0;
2626
- }
2627
- .bootstrap-wp .nav-tabs.nav-stacked > li:last-child > a {
2628
- -webkit-border-radius: 0 0 4px 4px;
2629
- -moz-border-radius: 0 0 4px 4px;
2630
- border-radius: 0 0 4px 4px;
2631
- }
2632
- .bootstrap-wp .nav-tabs.nav-stacked > li > a:hover {
2633
- border-color: #ddd;
2634
- z-index: 2;
2635
- }
2636
- .bootstrap-wp .nav-pills.nav-stacked > li > a {
2637
- margin-bottom: 3px;
2638
- }
2639
- .bootstrap-wp .nav-pills.nav-stacked > li:last-child > a {
2640
- margin-bottom: 1px;
2641
- }
2642
- .bootstrap-wp .nav-tabs .dropdown-menu,
2643
- .bootstrap-wp .nav-pills .dropdown-menu {
2644
- margin-top: 1px;
2645
- border-width: 1px;
2646
- }
2647
- .bootstrap-wp .nav-pills .dropdown-menu {
2648
- -webkit-border-radius: 4px;
2649
- -moz-border-radius: 4px;
2650
- border-radius: 4px;
2651
- }
2652
- .bootstrap-wp .nav-tabs .dropdown-toggle .caret,
2653
- .bootstrap-wp .nav-pills .dropdown-toggle .caret {
2654
- border-top-color: #0088cc;
2655
- border-bottom-color: #0088cc;
2656
- margin-top: 6px;
2657
- }
2658
- .bootstrap-wp .nav-tabs .dropdown-toggle:hover .caret,
2659
- .bootstrap-wp .nav-pills .dropdown-toggle:hover .caret {
2660
- border-top-color: #005580;
2661
- border-bottom-color: #005580;
2662
- }
2663
- .bootstrap-wp .nav-tabs .active .dropdown-toggle .caret,
2664
- .bootstrap-wp .nav-pills .active .dropdown-toggle .caret {
2665
- border-top-color: #333333;
2666
- border-bottom-color: #333333;
2667
- }
2668
- .bootstrap-wp .nav > .dropdown.active > a:hover {
2669
- color: #000000;
2670
- cursor: pointer;
2671
- }
2672
- .bootstrap-wp .nav-tabs .open .dropdown-toggle,
2673
- .bootstrap-wp .nav-pills .open .dropdown-toggle,
2674
- .bootstrap-wp .nav > .open.active > a:hover {
2675
- color: #ffffff;
2676
- background-color: #999999;
2677
- border-color: #999999;
2678
- }
2679
- .bootstrap-wp .nav .open .caret,
2680
- .bootstrap-wp .nav .open.active .caret,
2681
- .bootstrap-wp .nav .open a:hover .caret {
2682
- border-top-color: #ffffff;
2683
- border-bottom-color: #ffffff;
2684
- opacity: 1;
2685
- filter: alpha(opacity=100);
2686
- }
2687
- .bootstrap-wp .tabs-stacked .open > a:hover {
2688
- border-color: #999999;
2689
- }
2690
- .bootstrap-wp .tabbable {
2691
- *zoom: 1;
2692
- }
2693
- .bootstrap-wp .tabbable:before,
2694
- .bootstrap-wp .tabbable:after {
2695
- display: table;
2696
- content: "";
2697
- }
2698
- .bootstrap-wp .tabbable:after {
2699
- clear: both;
2700
- }
2701
- .bootstrap-wp .tab-content {
2702
- display: table;
2703
- width: 100%;
2704
- }
2705
- .bootstrap-wp .tabs-below .nav-tabs,
2706
- .bootstrap-wp .tabs-right .nav-tabs,
2707
- .bootstrap-wp .tabs-left .nav-tabs {
2708
- border-bottom: 0;
2709
- }
2710
- .bootstrap-wp .tab-content > .tab-pane,
2711
- .bootstrap-wp .pill-content > .pill-pane {
2712
- display: none;
2713
- }
2714
- .bootstrap-wp .tab-content > .active,
2715
- .bootstrap-wp .pill-content > .active {
2716
- display: block;
2717
- }
2718
- .bootstrap-wp .tabs-below .nav-tabs {
2719
- border-top: 1px solid #ddd;
2720
- }
2721
- .bootstrap-wp .tabs-below .nav-tabs > li {
2722
- margin-top: -1px;
2723
- margin-bottom: 0;
2724
- }
2725
- .bootstrap-wp .tabs-below .nav-tabs > li > a {
2726
- -webkit-border-radius: 0 0 4px 4px;
2727
- -moz-border-radius: 0 0 4px 4px;
2728
- border-radius: 0 0 4px 4px;
2729
- }
2730
- .bootstrap-wp .tabs-below .nav-tabs > li > a:hover {
2731
- border-bottom-color: transparent;
2732
- border-top-color: #ddd;
2733
- }
2734
- .bootstrap-wp .tabs-below .nav-tabs .active > a,
2735
- .bootstrap-wp .tabs-below .nav-tabs .active > a:hover {
2736
- border-color: transparent #ddd #ddd #ddd;
2737
- }
2738
- .bootstrap-wp .tabs-left .nav-tabs > li,
2739
- .bootstrap-wp .tabs-right .nav-tabs > li {
2740
- float: none;
2741
- }
2742
- .bootstrap-wp .tabs-left .nav-tabs > li > a,
2743
- .bootstrap-wp .tabs-right .nav-tabs > li > a {
2744
- min-width: 74px;
2745
- margin-right: 0;
2746
- margin-bottom: 3px;
2747
- }
2748
- .bootstrap-wp .tabs-left .nav-tabs {
2749
- float: left;
2750
- margin-right: 19px;
2751
- border-right: 1px solid #ddd;
2752
- }
2753
- .bootstrap-wp .tabs-left .nav-tabs > li > a {
2754
- margin-right: -1px;
2755
- -webkit-border-radius: 4px 0 0 4px;
2756
- -moz-border-radius: 4px 0 0 4px;
2757
- border-radius: 4px 0 0 4px;
2758
- }
2759
- .bootstrap-wp .tabs-left .nav-tabs > li > a:hover {
2760
- border-color: #eeeeee #dddddd #eeeeee #eeeeee;
2761
- }
2762
- .bootstrap-wp .tabs-left .nav-tabs .active > a,
2763
- .bootstrap-wp .tabs-left .nav-tabs .active > a:hover {
2764
- border-color: #ddd transparent #ddd #ddd;
2765
- *border-right-color: #ffffff;
2766
- }
2767
- .bootstrap-wp .tabs-right .nav-tabs {
2768
- float: right;
2769
- margin-left: 19px;
2770
- border-left: 1px solid #ddd;
2771
- }
2772
- .bootstrap-wp .tabs-right .nav-tabs > li > a {
2773
- margin-left: -1px;
2774
- -webkit-border-radius: 0 4px 4px 0;
2775
- -moz-border-radius: 0 4px 4px 0;
2776
- border-radius: 0 4px 4px 0;
2777
- }
2778
- .bootstrap-wp .tabs-right .nav-tabs > li > a:hover {
2779
- border-color: #eeeeee #eeeeee #eeeeee #dddddd;
2780
- }
2781
- .bootstrap-wp .tabs-right .nav-tabs .active > a,
2782
- .bootstrap-wp .tabs-right .nav-tabs .active > a:hover {
2783
- border-color: #ddd #ddd #ddd transparent;
2784
- *border-left-color: #ffffff;
2785
- }
2786
- .bootstrap-wp .navbar {
2787
- *position: relative;
2788
- *z-index: 2;
2789
- overflow: visible;
2790
- margin-bottom: 18px;
2791
- }
2792
- .bootstrap-wp .navbar-inner {
2793
- padding-left: 20px;
2794
- padding-right: 20px;
2795
- background-color: #2c2c2c;
2796
- background-image: -moz-linear-gradient(top, #333333, #222222);
2797
- background-image: -ms-linear-gradient(top, #333333, #222222);
2798
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#333333), to(#222222));
2799
- background-image: -webkit-linear-gradient(top, #333333, #222222);
2800
- background-image: -o-linear-gradient(top, #333333, #222222);
2801
- background-image: linear-gradient(top, #333333, #222222);
2802
- background-repeat: repeat-x;
2803
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);
2804
- -webkit-border-radius: 4px;
2805
- -moz-border-radius: 4px;
2806
- border-radius: 4px;
2807
- -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
2808
- -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
2809
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
2810
- }
2811
- .bootstrap-wp .navbar .container {
2812
- width: auto;
2813
- }
2814
- .bootstrap-wp .btn-navbar {
2815
- display: none;
2816
- float: right;
2817
- padding: 7px 10px;
2818
- margin-left: 5px;
2819
- margin-right: 5px;
2820
- background-color: #2c2c2c;
2821
- background-image: -moz-linear-gradient(top, #333333, #222222);
2822
- background-image: -ms-linear-gradient(top, #333333, #222222);
2823
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#333333), to(#222222));
2824
- background-image: -webkit-linear-gradient(top, #333333, #222222);
2825
- background-image: -o-linear-gradient(top, #333333, #222222);
2826
- background-image: linear-gradient(top, #333333, #222222);
2827
- background-repeat: repeat-x;
2828
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);
2829
- border-color: #222222 #222222 #000000;
2830
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
2831
- filter: progid:dximagetransform.microsoft.gradient(enabled=false);
2832
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
2833
- -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
2834
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
2835
- }
2836
- .bootstrap-wp .btn-navbar:hover,
2837
- .bootstrap-wp .btn-navbar:active,
2838
- .bootstrap-wp .btn-navbar.active,
2839
- .bootstrap-wp .btn-navbar.disabled,
2840
- .bootstrap-wp .btn-navbar[disabled] {
2841
- background-color: #222222;
2842
- }
2843
- .bootstrap-wp .btn-navbar:active,
2844
- .bootstrap-wp .btn-navbar.active {
2845
- background-color: #080808 \9;
2846
- }
2847
- .bootstrap-wp .btn-navbar .icon-bar {
2848
- display: block;
2849
- width: 18px;
2850
- height: 2px;
2851
- background-color: #f5f5f5;
2852
- -webkit-border-radius: 1px;
2853
- -moz-border-radius: 1px;
2854
- border-radius: 1px;
2855
- -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
2856
- -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
2857
- box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
2858
- }
2859
- .bootstrap-wp .btn-navbar .icon-bar + .icon-bar {
2860
- margin-top: 3px;
2861
- }
2862
- .bootstrap-wp .nav-collapse.collapse {
2863
- height: auto;
2864
- }
2865
- .bootstrap-wp .navbar {
2866
- color: #999999;
2867
- }
2868
- .bootstrap-wp .navbar .brand:hover {
2869
- text-decoration: none;
2870
- }
2871
- .bootstrap-wp .navbar .brand {
2872
- float: left;
2873
- display: block;
2874
- padding: 8px 20px 12px;
2875
- margin-left: -20px;
2876
- font-size: 20px;
2877
- font-weight: 200;
2878
- line-height: 1;
2879
- color: #ffffff;
2880
- }
2881
- .bootstrap-wp .navbar .navbar-text {
2882
- margin-bottom: 0;
2883
- line-height: 40px;
2884
- }
2885
- .bootstrap-wp .navbar .btn,
2886
- .bootstrap-wp .navbar .btn-group {
2887
- margin-top: 5px;
2888
- }
2889
- .bootstrap-wp .navbar .btn-group .btn {
2890
- margin-top: 0;
2891
- }
2892
- .bootstrap-wp .navbar-form {
2893
- margin-bottom: 0;
2894
- *zoom: 1;
2895
- }
2896
- .bootstrap-wp .navbar-form:before,
2897
- .bootstrap-wp .navbar-form:after {
2898
- display: table;
2899
- content: "";
2900
- }
2901
- .bootstrap-wp .navbar-form:after {
2902
- clear: both;
2903
- }
2904
- .bootstrap-wp .navbar-form input,
2905
- .bootstrap-wp .navbar-form select,
2906
- .bootstrap-wp .navbar-form .radio,
2907
- .bootstrap-wp .navbar-form .checkbox {
2908
- margin-top: 5px;
2909
- }
2910
- .bootstrap-wp .navbar-form input,
2911
- .bootstrap-wp .navbar-form select {
2912
- display: inline-block;
2913
- margin-bottom: 0;
2914
- }
2915
- .bootstrap-wp .navbar-form input[type="image"],
2916
- .bootstrap-wp .navbar-form input[type="checkbox"],
2917
- .bootstrap-wp .navbar-form input[type="radio"] {
2918
- margin-top: 3px;
2919
- }
2920
- .bootstrap-wp .navbar-form .input-append,
2921
- .bootstrap-wp .navbar-form .input-prepend {
2922
- margin-top: 6px;
2923
- white-space: nowrap;
2924
- }
2925
- .bootstrap-wp .navbar-form .input-append input,
2926
- .bootstrap-wp .navbar-form .input-prepend input {
2927
- margin-top: 0;
2928
- }
2929
- .bootstrap-wp .navbar-search {
2930
- position: relative;
2931
- float: left;
2932
- margin-top: 6px;
2933
- margin-bottom: 0;
2934
- }
2935
- .bootstrap-wp .navbar-search .search-query {
2936
- padding: 4px 9px;
2937
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
2938
- font-size: 13px;
2939
- font-weight: normal;
2940
- line-height: 1;
2941
- color: #ffffff;
2942
- background-color: #626262;
2943
- border: 1px solid #151515;
2944
- -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.15);
2945
- -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.15);
2946
- box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 0.15);
2947
- -webkit-transition: none;
2948
- -moz-transition: none;
2949
- -ms-transition: none;
2950
- -o-transition: none;
2951
- transition: none;
2952
- }
2953
- .bootstrap-wp .navbar-search .search-query:-moz-placeholder {
2954
- color: #cccccc;
2955
- }
2956
- .bootstrap-wp .navbar-search .search-query::-webkit-input-placeholder {
2957
- color: #cccccc;
2958
- }
2959
- .bootstrap-wp .navbar-search .search-query:focus,
2960
- .bootstrap-wp .navbar-search .search-query.focused {
2961
- padding: 5px 10px;
2962
- color: #333333;
2963
- text-shadow: 0 1px 0 #ffffff;
2964
- background-color: #ffffff;
2965
- border: 0;
2966
- -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
2967
- -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
2968
- box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
2969
- outline: 0;
2970
- }
2971
- .bootstrap-wp .navbar-fixed-top,
2972
- .bootstrap-wp .navbar-fixed-bottom {
2973
- position: fixed;
2974
- right: 0;
2975
- left: 0;
2976
- z-index: 1030;
2977
- margin-bottom: 0;
2978
- }
2979
- .bootstrap-wp .navbar-fixed-top .navbar-inner,
2980
- .bootstrap-wp .navbar-fixed-bottom .navbar-inner {
2981
- padding-left: 0;
2982
- padding-right: 0;
2983
- -webkit-border-radius: 0;
2984
- -moz-border-radius: 0;
2985
- border-radius: 0;
2986
- }
2987
- .bootstrap-wp .navbar-fixed-top .container,
2988
- .bootstrap-wp .navbar-fixed-bottom .container {
2989
- width: 940px;
2990
- }
2991
- .bootstrap-wp .navbar-fixed-top {
2992
- top: 0;
2993
- }
2994
- .bootstrap-wp .navbar-fixed-bottom {
2995
- bottom: 0;
2996
- }
2997
- .bootstrap-wp .navbar .nav {
2998
- position: relative;
2999
- left: 0;
3000
- display: block;
3001
- float: left;
3002
- margin: 0 10px 0 0;
3003
- }
3004
- .bootstrap-wp .navbar .nav.pull-right {
3005
- float: right;
3006
- }
3007
- .bootstrap-wp .navbar .nav > li {
3008
- display: block;
3009
- float: left;
3010
- }
3011
- .bootstrap-wp .navbar .nav > li > a {
3012
- float: none;
3013
- padding: 10px 10px 11px;
3014
- line-height: 19px;
3015
- color: #999999;
3016
- text-decoration: none;
3017
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
3018
- }
3019
- .bootstrap-wp .navbar .nav > li > a:hover {
3020
- background-color: transparent;
3021
- color: #ffffff;
3022
- text-decoration: none;
3023
- }
3024
- .bootstrap-wp .navbar .nav .active > a,
3025
- .bootstrap-wp .navbar .nav .active > a:hover {
3026
- color: #ffffff;
3027
- text-decoration: none;
3028
- background-color: #222222;
3029
- }
3030
- .bootstrap-wp .navbar .divider-vertical {
3031
- height: 40px;
3032
- width: 1px;
3033
- margin: 0 9px;
3034
- overflow: hidden;
3035
- background-color: #222222;
3036
- border-right: 1px solid #333333;
3037
- }
3038
- .bootstrap-wp .navbar .nav.pull-right {
3039
- margin-left: 10px;
3040
- margin-right: 0;
3041
- }
3042
- .bootstrap-wp .navbar .dropdown-menu {
3043
- margin-top: 1px;
3044
- -webkit-border-radius: 4px;
3045
- -moz-border-radius: 4px;
3046
- border-radius: 4px;
3047
- }
3048
- .bootstrap-wp .navbar .dropdown-menu:before {
3049
- content: '';
3050
- display: inline-block;
3051
- border-left: 7px solid transparent;
3052
- border-right: 7px solid transparent;
3053
- border-bottom: 7px solid #ccc;
3054
- border-bottom-color: rgba(0, 0, 0, 0.2);
3055
- position: absolute;
3056
- top: -7px;
3057
- left: 9px;
3058
- }
3059
- .bootstrap-wp .navbar .dropdown-menu:after {
3060
- content: '';
3061
- display: inline-block;
3062
- border-left: 6px solid transparent;
3063
- border-right: 6px solid transparent;
3064
- border-bottom: 6px solid #ffffff;
3065
- position: absolute;
3066
- top: -6px;
3067
- left: 10px;
3068
- }
3069
- .bootstrap-wp .navbar-fixed-bottom .dropdown-menu:before {
3070
- border-top: 7px solid #ccc;
3071
- border-top-color: rgba(0, 0, 0, 0.2);
3072
- border-bottom: 0;
3073
- bottom: -7px;
3074
- top: auto;
3075
- }
3076
- .bootstrap-wp .navbar-fixed-bottom .dropdown-menu:after {
3077
- border-top: 6px solid #ffffff;
3078
- border-bottom: 0;
3079
- bottom: -6px;
3080
- top: auto;
3081
- }
3082
- .bootstrap-wp .navbar .nav .dropdown-toggle .caret,
3083
- .bootstrap-wp .navbar .nav .open.dropdown .caret {
3084
- border-top-color: #ffffff;
3085
- border-bottom-color: #ffffff;
3086
- }
3087
- .bootstrap-wp .navbar .nav .active .caret {
3088
- opacity: 1;
3089
- filter: alpha(opacity=100);
3090
- }
3091
- .bootstrap-wp .navbar .nav .open > .dropdown-toggle,
3092
- .bootstrap-wp .navbar .nav .active > .dropdown-toggle,
3093
- .bootstrap-wp .navbar .nav .open.active > .dropdown-toggle {
3094
- background-color: transparent;
3095
- }
3096
- .bootstrap-wp .navbar .nav .active > .dropdown-toggle:hover {
3097
- color: #ffffff;
3098
- }
3099
- .bootstrap-wp .navbar .nav.pull-right .dropdown-menu,
3100
- .bootstrap-wp .navbar .nav .dropdown-menu.pull-right {
3101
- left: auto;
3102
- right: 0;
3103
- }
3104
- .bootstrap-wp .navbar .nav.pull-right .dropdown-menu:before,
3105
- .bootstrap-wp .navbar .nav .dropdown-menu.pull-right:before {
3106
- left: auto;
3107
- right: 12px;
3108
- }
3109
- .bootstrap-wp .navbar .nav.pull-right .dropdown-menu:after,
3110
- .bootstrap-wp .navbar .nav .dropdown-menu.pull-right:after {
3111
- left: auto;
3112
- right: 13px;
3113
- }
3114
- .bootstrap-wp .breadcrumb {
3115
- padding: 7px 14px;
3116
- margin: 0 0 18px;
3117
- list-style: none;
3118
- background-color: #fbfbfb;
3119
- background-image: -moz-linear-gradient(top, #ffffff, #f5f5f5);
3120
- background-image: -ms-linear-gradient(top, #ffffff, #f5f5f5);
3121
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#f5f5f5));
3122
- background-image: -webkit-linear-gradient(top, #ffffff, #f5f5f5);
3123
- background-image: -o-linear-gradient(top, #ffffff, #f5f5f5);
3124
- background-image: linear-gradient(top, #ffffff, #f5f5f5);
3125
- background-repeat: repeat-x;
3126
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f5f5f5', GradientType=0);
3127
- border: 1px solid #ddd;
3128
- -webkit-border-radius: 3px;
3129
- -moz-border-radius: 3px;
3130
- border-radius: 3px;
3131
- -webkit-box-shadow: inset 0 1px 0 #ffffff;
3132
- -moz-box-shadow: inset 0 1px 0 #ffffff;
3133
- box-shadow: inset 0 1px 0 #ffffff;
3134
- }
3135
- .bootstrap-wp .breadcrumb li {
3136
- display: inline-block;
3137
- *display: inline;
3138
- /* IE7 inline-block hack */
3139
-
3140
- *zoom: 1;
3141
- text-shadow: 0 1px 0 #ffffff;
3142
- }
3143
- .bootstrap-wp .breadcrumb .divider {
3144
- padding: 0 5px;
3145
- color: #999999;
3146
- }
3147
- .bootstrap-wp .breadcrumb .active a {
3148
- color: #333333;
3149
- }
3150
- .bootstrap-wp .pagination {
3151
- height: 36px;
3152
- margin: 18px 0;
3153
- }
3154
- .bootstrap-wp .pagination ul {
3155
- display: inline-block;
3156
- *display: inline;
3157
- /* IE7 inline-block hack */
3158
-
3159
- *zoom: 1;
3160
- margin-left: 0;
3161
- margin-bottom: 0;
3162
- -webkit-border-radius: 3px;
3163
- -moz-border-radius: 3px;
3164
- border-radius: 3px;
3165
- -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
3166
- -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
3167
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
3168
- }
3169
- .bootstrap-wp .pagination li {
3170
- display: inline;
3171
- }
3172
- .bootstrap-wp .pagination a {
3173
- float: left;
3174
- padding: 0 14px;
3175
- line-height: 34px;
3176
- text-decoration: none;
3177
- border: 1px solid #ddd;
3178
- border-left-width: 0;
3179
- }
3180
- .bootstrap-wp .pagination a:hover,
3181
- .bootstrap-wp .pagination .active a {
3182
- background-color: #f5f5f5;
3183
- }
3184
- .bootstrap-wp .pagination .active a {
3185
- color: #999999;
3186
- cursor: default;
3187
- }
3188
- .bootstrap-wp .pagination .disabled span,
3189
- .bootstrap-wp .pagination .disabled a,
3190
- .bootstrap-wp .pagination .disabled a:hover {
3191
- color: #999999;
3192
- background-color: transparent;
3193
- cursor: default;
3194
- }
3195
- .bootstrap-wp .pagination li:first-child a {
3196
- border-left-width: 1px;
3197
- -webkit-border-radius: 3px 0 0 3px;
3198
- -moz-border-radius: 3px 0 0 3px;
3199
- border-radius: 3px 0 0 3px;
3200
- }
3201
- .bootstrap-wp .pagination li:last-child a {
3202
- -webkit-border-radius: 0 3px 3px 0;
3203
- -moz-border-radius: 0 3px 3px 0;
3204
- border-radius: 0 3px 3px 0;
3205
- }
3206
- .bootstrap-wp .pagination-centered {
3207
- text-align: center;
3208
- }
3209
- .bootstrap-wp .pagination-right {
3210
- text-align: right;
3211
- }
3212
- .bootstrap-wp .pager {
3213
- margin-left: 0;
3214
- margin-bottom: 18px;
3215
- list-style: none;
3216
- text-align: center;
3217
- *zoom: 1;
3218
- }
3219
- .bootstrap-wp .pager:before,
3220
- .bootstrap-wp .pager:after {
3221
- display: table;
3222
- content: "";
3223
- }
3224
- .bootstrap-wp .pager:after {
3225
- clear: both;
3226
- }
3227
- .bootstrap-wp .pager li {
3228
- display: inline;
3229
- }
3230
- .bootstrap-wp .pager a {
3231
- display: inline-block;
3232
- padding: 5px 14px;
3233
- background-color: #fff;
3234
- border: 1px solid #ddd;
3235
- -webkit-border-radius: 15px;
3236
- -moz-border-radius: 15px;
3237
- border-radius: 15px;
3238
- }
3239
- .bootstrap-wp .pager a:hover {
3240
- text-decoration: none;
3241
- background-color: #f5f5f5;
3242
- }
3243
- .bootstrap-wp .pager .next a {
3244
- float: right;
3245
- }
3246
- .bootstrap-wp .pager .previous a {
3247
- float: left;
3248
- }
3249
- .bootstrap-wp .pager .disabled a,
3250
- .bootstrap-wp .pager .disabled a:hover {
3251
- color: #999999;
3252
- background-color: #fff;
3253
- cursor: default;
3254
- }
3255
- body .modal-open .dropdown-menu {
3256
- z-index: 2050;
3257
- }
3258
- body .modal-open .dropdown.open {
3259
- *z-index: 2050;
3260
- }
3261
- body .modal-open .popover {
3262
- z-index: 2060;
3263
- }
3264
- body .modal-open .tooltip {
3265
- z-index: 2070;
3266
- }
3267
- body .modal-backdrop {
3268
- position: fixed;
3269
- top: 0;
3270
- right: 0;
3271
- bottom: 0;
3272
- left: 0;
3273
- z-index: 1040;
3274
- background-color: #000000;
3275
- }
3276
- body .modal-backdrop.fade {
3277
- opacity: 0;
3278
- }
3279
- body .modal-backdrop,
3280
- body .modal-backdrop.fade.in {
3281
- opacity: 0.8;
3282
- filter: alpha(opacity=80);
3283
- }
3284
- body .modal {
3285
- position: fixed;
3286
- top: 50%;
3287
- left: 50%;
3288
- z-index: 1050;
3289
- overflow: auto;
3290
- width: 560px;
3291
- margin: -250px 0 0 -280px;
3292
- background-color: #ffffff;
3293
- border: 1px solid #999;
3294
- border: 1px solid rgba(0, 0, 0, 0.3);
3295
- *border: 1px solid #999;
3296
- /* IE6-7 */
3297
-
3298
- -webkit-border-radius: 6px;
3299
- -moz-border-radius: 6px;
3300
- border-radius: 6px;
3301
- -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
3302
- -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
3303
- box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
3304
- -webkit-background-clip: padding-box;
3305
- -moz-background-clip: padding-box;
3306
- background-clip: padding-box;
3307
- }
3308
- body .modal.fade {
3309
- -webkit-transition: opacity .3s linear, top .3s ease-out;
3310
- -moz-transition: opacity .3s linear, top .3s ease-out;
3311
- -ms-transition: opacity .3s linear, top .3s ease-out;
3312
- -o-transition: opacity .3s linear, top .3s ease-out;
3313
- transition: opacity .3s linear, top .3s ease-out;
3314
- top: -25%;
3315
- }
3316
- body .modal.fade.in {
3317
- top: 50%;
3318
- }
3319
- body .modal-header {
3320
- padding: 9px 15px;
3321
- border-bottom: 1px solid #eee;
3322
- }
3323
- body .modal-header .close {
3324
- margin-top: 2px;
3325
- }
3326
- body .modal-body {
3327
- overflow-y: auto;
3328
- max-height: 400px;
3329
- padding: 15px;
3330
- }
3331
- body .modal-form {
3332
- margin-bottom: 0;
3333
- }
3334
- body .modal-footer {
3335
- padding: 14px 15px 15px;
3336
- margin-bottom: 0;
3337
- text-align: right;
3338
- background-color: #f5f5f5;
3339
- border-top: 1px solid #ddd;
3340
- -webkit-border-radius: 0 0 6px 6px;
3341
- -moz-border-radius: 0 0 6px 6px;
3342
- border-radius: 0 0 6px 6px;
3343
- -webkit-box-shadow: inset 0 1px 0 #ffffff;
3344
- -moz-box-shadow: inset 0 1px 0 #ffffff;
3345
- box-shadow: inset 0 1px 0 #ffffff;
3346
- *zoom: 1;
3347
- }
3348
- body .modal-footer:before,
3349
- body .modal-footer:after {
3350
- display: table;
3351
- content: "";
3352
- }
3353
- body .modal-footer:after {
3354
- clear: both;
3355
- }
3356
- body .modal-footer .btn + .btn {
3357
- margin-left: 5px;
3358
- margin-bottom: 0;
3359
- }
3360
- body .modal-footer .btn-group .btn + .btn {
3361
- margin-left: -1px;
3362
- }
3363
- body .tooltip {
3364
- position: absolute;
3365
- z-index: 1020;
3366
- display: block;
3367
- visibility: visible;
3368
- padding: 5px;
3369
- font-size: 11px;
3370
- opacity: 0;
3371
- filter: alpha(opacity=0);
3372
- }
3373
- body .tooltip.in {
3374
- opacity: 0.8;
3375
- filter: alpha(opacity=80);
3376
- }
3377
- body .tooltip.top {
3378
- margin-top: -2px;
3379
- }
3380
- body .tooltip.right {
3381
- margin-left: 2px;
3382
- }
3383
- body .tooltip.bottom {
3384
- margin-top: 2px;
3385
- }
3386
- body .tooltip.left {
3387
- margin-left: -2px;
3388
- }
3389
- body .tooltip.top .tooltip-arrow {
3390
- bottom: 0;
3391
- left: 50%;
3392
- margin-left: -5px;
3393
- border-left: 5px solid transparent;
3394
- border-right: 5px solid transparent;
3395
- border-top: 5px solid #000000;
3396
- }
3397
- body .tooltip.left .tooltip-arrow {
3398
- top: 50%;
3399
- right: 0;
3400
- margin-top: -5px;
3401
- border-top: 5px solid transparent;
3402
- border-bottom: 5px solid transparent;
3403
- border-left: 5px solid #000000;
3404
- }
3405
- body .tooltip.bottom .tooltip-arrow {
3406
- top: 0;
3407
- left: 50%;
3408
- margin-left: -5px;
3409
- border-left: 5px solid transparent;
3410
- border-right: 5px solid transparent;
3411
- border-bottom: 5px solid #000000;
3412
- }
3413
- body .tooltip.right .tooltip-arrow {
3414
- top: 50%;
3415
- left: 0;
3416
- margin-top: -5px;
3417
- border-top: 5px solid transparent;
3418
- border-bottom: 5px solid transparent;
3419
- border-right: 5px solid #000000;
3420
- }
3421
- body .tooltip-inner {
3422
- max-width: 200px;
3423
- padding: 3px 8px;
3424
- color: #ffffff;
3425
- text-align: center;
3426
- text-decoration: none;
3427
- background-color: #000000;
3428
- -webkit-border-radius: 4px;
3429
- -moz-border-radius: 4px;
3430
- border-radius: 4px;
3431
- }
3432
- body .tooltip-arrow {
3433
- position: absolute;
3434
- width: 0;
3435
- height: 0;
3436
- }
3437
- body .popover {
3438
- position: absolute;
3439
- top: 0;
3440
- left: 0;
3441
- z-index: 1010;
3442
- display: none;
3443
- padding: 5px;
3444
- }
3445
- body .popover.top {
3446
- margin-top: -5px;
3447
- }
3448
- body .popover.right {
3449
- margin-left: 5px;
3450
- }
3451
- body .popover.bottom {
3452
- margin-top: 5px;
3453
- }
3454
- body .popover.left {
3455
- margin-left: -5px;
3456
- }
3457
- body .popover.top .arrow {
3458
- bottom: 0;
3459
- left: 50%;
3460
- margin-left: -5px;
3461
- border-left: 5px solid transparent;
3462
- border-right: 5px solid transparent;
3463
- border-top: 5px solid #000000;
3464
- }
3465
- body .popover.right .arrow {
3466
- top: 50%;
3467
- left: 0;
3468
- margin-top: -5px;
3469
- border-top: 5px solid transparent;
3470
- border-bottom: 5px solid transparent;
3471
- border-right: 5px solid #000000;
3472
- }
3473
- body .popover.bottom .arrow {
3474
- top: 0;
3475
- left: 50%;
3476
- margin-left: -5px;
3477
- border-left: 5px solid transparent;
3478
- border-right: 5px solid transparent;
3479
- border-bottom: 5px solid #000000;
3480
- }
3481
- body .popover.left .arrow {
3482
- top: 50%;
3483
- right: 0;
3484
- margin-top: -5px;
3485
- border-top: 5px solid transparent;
3486
- border-bottom: 5px solid transparent;
3487
- border-left: 5px solid #000000;
3488
- }
3489
- body .popover .arrow {
3490
- position: absolute;
3491
- width: 0;
3492
- height: 0;
3493
- }
3494
- body .popover-inner {
3495
- padding: 3px;
3496
- width: 280px;
3497
- overflow: hidden;
3498
- background: #000000;
3499
- background: rgba(0, 0, 0, 0.8);
3500
- -webkit-border-radius: 6px;
3501
- -moz-border-radius: 6px;
3502
- border-radius: 6px;
3503
- -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
3504
- -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
3505
- box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
3506
- }
3507
- body .popover-title {
3508
- padding: 9px 15px;
3509
- line-height: 1;
3510
- background-color: #f5f5f5;
3511
- border-bottom: 1px solid #eee;
3512
- -webkit-border-radius: 3px 3px 0 0;
3513
- -moz-border-radius: 3px 3px 0 0;
3514
- border-radius: 3px 3px 0 0;
3515
- }
3516
- body .popover-content {
3517
- padding: 14px;
3518
- background-color: #ffffff;
3519
- -webkit-border-radius: 0 0 3px 3px;
3520
- -moz-border-radius: 0 0 3px 3px;
3521
- border-radius: 0 0 3px 3px;
3522
- -webkit-background-clip: padding-box;
3523
- -moz-background-clip: padding-box;
3524
- background-clip: padding-box;
3525
- }
3526
- body .popover-content p,
3527
- body .popover-content ul,
3528
- body .popover-content ol {
3529
- margin-bottom: 0;
3530
- }
3531
- body .popover h3,
3532
- body .popover p {
3533
- margin: 0;
3534
- }
3535
- .bootstrap-wp .thumbnails {
3536
- margin-left: -20px;
3537
- list-style: none;
3538
- *zoom: 1;
3539
- }
3540
- .bootstrap-wp .thumbnails:before,
3541
- .bootstrap-wp .thumbnails:after {
3542
- display: table;
3543
- content: "";
3544
- }
3545
- .bootstrap-wp .thumbnails:after {
3546
- clear: both;
3547
- }
3548
- .bootstrap-wp .thumbnails > li {
3549
- float: left;
3550
- margin: 0 0 18px 20px;
3551
- }
3552
- .bootstrap-wp .thumbnail {
3553
- display: block;
3554
- padding: 4px;
3555
- line-height: 1;
3556
- border: 1px solid #ddd;
3557
- -webkit-border-radius: 4px;
3558
- -moz-border-radius: 4px;
3559
- border-radius: 4px;
3560
- -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
3561
- -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
3562
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
3563
- }
3564
- .bootstrap-wp a.thumbnail:hover {
3565
- border-color: #0088cc;
3566
- -webkit-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
3567
- -moz-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
3568
- box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
3569
- }
3570
- .bootstrap-wp .thumbnail > img {
3571
- display: block;
3572
- max-width: 100%;
3573
- margin-left: auto;
3574
- margin-right: auto;
3575
- }
3576
- .bootstrap-wp .thumbnail .caption {
3577
- padding: 9px;
3578
- }
3579
- .bootstrap-wp .label {
3580
- padding: 1px 4px 2px;
3581
- font-size: 10.998px;
3582
- font-weight: bold;
3583
- line-height: 13px;
3584
- color: #ffffff;
3585
- vertical-align: middle;
3586
- white-space: nowrap;
3587
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
3588
- background-color: #999999;
3589
- -webkit-border-radius: 3px;
3590
- -moz-border-radius: 3px;
3591
- border-radius: 3px;
3592
- }
3593
- .bootstrap-wp .label:hover {
3594
- color: #ffffff;
3595
- text-decoration: none;
3596
- }
3597
- .bootstrap-wp .label-important {
3598
- background-color: #b94a48;
3599
- }
3600
- .bootstrap-wp .label-important:hover {
3601
- background-color: #953b39;
3602
- }
3603
- .bootstrap-wp .label-warning {
3604
- background-color: #f89406;
3605
- }
3606
- .bootstrap-wp .label-warning:hover {
3607
- background-color: #c67605;
3608
- }
3609
- .bootstrap-wp .label-success {
3610
- background-color: #468847;
3611
- }
3612
- .bootstrap-wp .label-success:hover {
3613
- background-color: #356635;
3614
- }
3615
- .bootstrap-wp .label-info {
3616
- background-color: #3a87ad;
3617
- }
3618
- .bootstrap-wp .label-info:hover {
3619
- background-color: #2d6987;
3620
- }
3621
- .bootstrap-wp .label-inverse {
3622
- background-color: #333333;
3623
- }
3624
- .bootstrap-wp .label-inverse:hover {
3625
- background-color: #1a1a1a;
3626
- }
3627
- .bootstrap-wp .badge {
3628
- padding: 1px 9px 2px;
3629
- font-size: 12.025px;
3630
- font-weight: bold;
3631
- white-space: nowrap;
3632
- color: #ffffff;
3633
- background-color: #999999;
3634
- -webkit-border-radius: 9px;
3635
- -moz-border-radius: 9px;
3636
- border-radius: 9px;
3637
- }
3638
- .bootstrap-wp .badge:hover {
3639
- color: #ffffff;
3640
- text-decoration: none;
3641
- cursor: pointer;
3642
- }
3643
- .bootstrap-wp .badge-error {
3644
- background-color: #b94a48;
3645
- }
3646
- .bootstrap-wp .badge-error:hover {
3647
- background-color: #953b39;
3648
- }
3649
- .bootstrap-wp .badge-warning {
3650
- background-color: #f89406;
3651
- }
3652
- .bootstrap-wp .badge-warning:hover {
3653
- background-color: #c67605;
3654
- }
3655
- .bootstrap-wp .badge-success {
3656
- background-color: #468847;
3657
- }
3658
- .bootstrap-wp .badge-success:hover {
3659
- background-color: #356635;
3660
- }
3661
- .bootstrap-wp .badge-info {
3662
- background-color: #3a87ad;
3663
- }
3664
- .bootstrap-wp .badge-info:hover {
3665
- background-color: #2d6987;
3666
- }
3667
- .bootstrap-wp .badge-inverse {
3668
- background-color: #333333;
3669
- }
3670
- .bootstrap-wp .badge-inverse:hover {
3671
- background-color: #1a1a1a;
3672
- }
3673
- .bootstrap-wp @-webkit-keyframes progress-bar-stripes {
3674
- from {
3675
- background-position: 0 0;
3676
- }
3677
- to {
3678
- background-position: 40px 0;
3679
- }
3680
- }
3681
- .bootstrap-wp @-moz-keyframes progress-bar-stripes {
3682
- from {
3683
- background-position: 0 0;
3684
- }
3685
- to {
3686
- background-position: 40px 0;
3687
- }
3688
- }
3689
- .bootstrap-wp @-ms-keyframes progress-bar-stripes {
3690
- from {
3691
- background-position: 0 0;
3692
- }
3693
- to {
3694
- background-position: 40px 0;
3695
- }
3696
- }
3697
- .bootstrap-wp @keyframes progress-bar-stripes {
3698
- from {
3699
- background-position: 0 0;
3700
- }
3701
- to {
3702
- background-position: 40px 0;
3703
- }
3704
- }
3705
- .bootstrap-wp .progress {
3706
- overflow: hidden;
3707
- height: 18px;
3708
- margin-bottom: 18px;
3709
- background-color: #f7f7f7;
3710
- background-image: -moz-linear-gradient(top, #f5f5f5, #f9f9f9);
3711
- background-image: -ms-linear-gradient(top, #f5f5f5, #f9f9f9);
3712
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f5f5f5), to(#f9f9f9));
3713
- background-image: -webkit-linear-gradient(top, #f5f5f5, #f9f9f9);
3714
- background-image: -o-linear-gradient(top, #f5f5f5, #f9f9f9);
3715
- background-image: linear-gradient(top, #f5f5f5, #f9f9f9);
3716
- background-repeat: repeat-x;
3717
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f5f5f5', endColorstr='#f9f9f9', GradientType=0);
3718
- -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
3719
- -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
3720
- box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
3721
- -webkit-border-radius: 4px;
3722
- -moz-border-radius: 4px;
3723
- border-radius: 4px;
3724
- }
3725
- .bootstrap-wp .progress .bar {
3726
- width: 0%;
3727
- height: 18px;
3728
- color: #ffffff;
3729
- font-size: 12px;
3730
- text-align: center;
3731
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
3732
- background-color: #0e90d2;
3733
- background-image: -moz-linear-gradient(top, #149bdf, #0480be);
3734
- background-image: -ms-linear-gradient(top, #149bdf, #0480be);
3735
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be));
3736
- background-image: -webkit-linear-gradient(top, #149bdf, #0480be);
3737
- background-image: -o-linear-gradient(top, #149bdf, #0480be);
3738
- background-image: linear-gradient(top, #149bdf, #0480be);
3739
- background-repeat: repeat-x;
3740
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#149bdf', endColorstr='#0480be', GradientType=0);
3741
- -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
3742
- -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
3743
- box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
3744
- -webkit-box-sizing: border-box;
3745
- -moz-box-sizing: border-box;
3746
- -ms-box-sizing: border-box;
3747
- box-sizing: border-box;
3748
- -webkit-transition: width 0.6s ease;
3749
- -moz-transition: width 0.6s ease;
3750
- -ms-transition: width 0.6s ease;
3751
- -o-transition: width 0.6s ease;
3752
- transition: width 0.6s ease;
3753
- }
3754
- .bootstrap-wp .progress-striped .bar {
3755
- background-color: #149bdf;
3756
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
3757
- background-image: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3758
- background-image: -moz-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3759
- background-image: -ms-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3760
- background-image: -o-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3761
- background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3762
- -webkit-background-size: 40px 40px;
3763
- -moz-background-size: 40px 40px;
3764
- -o-background-size: 40px 40px;
3765
- background-size: 40px 40px;
3766
- }
3767
- .bootstrap-wp .progress.active .bar {
3768
- -webkit-animation: progress-bar-stripes 2s linear infinite;
3769
- -moz-animation: progress-bar-stripes 2s linear infinite;
3770
- animation: progress-bar-stripes 2s linear infinite;
3771
- }
3772
- .bootstrap-wp .progress-danger .bar {
3773
- background-color: #dd514c;
3774
- background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35);
3775
- background-image: -ms-linear-gradient(top, #ee5f5b, #c43c35);
3776
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#c43c35));
3777
- background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35);
3778
- background-image: -o-linear-gradient(top, #ee5f5b, #c43c35);
3779
- background-image: linear-gradient(top, #ee5f5b, #c43c35);
3780
- background-repeat: repeat-x;
3781
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#c43c35', GradientType=0);
3782
- }
3783
- .bootstrap-wp .progress-danger.progress-striped .bar {
3784
- background-color: #ee5f5b;
3785
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
3786
- background-image: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3787
- background-image: -moz-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3788
- background-image: -ms-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3789
- background-image: -o-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3790
- background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3791
- }
3792
- .bootstrap-wp .progress-success .bar {
3793
- background-color: #5eb95e;
3794
- background-image: -moz-linear-gradient(top, #62c462, #57a957);
3795
- background-image: -ms-linear-gradient(top, #62c462, #57a957);
3796
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#57a957));
3797
- background-image: -webkit-linear-gradient(top, #62c462, #57a957);
3798
- background-image: -o-linear-gradient(top, #62c462, #57a957);
3799
- background-image: linear-gradient(top, #62c462, #57a957);
3800
- background-repeat: repeat-x;
3801
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0);
3802
- }
3803
- .bootstrap-wp .progress-success.progress-striped .bar {
3804
- background-color: #62c462;
3805
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
3806
- background-image: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3807
- background-image: -moz-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3808
- background-image: -ms-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3809
- background-image: -o-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3810
- background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3811
- }
3812
- .bootstrap-wp .progress-info .bar {
3813
- background-color: #4bb1cf;
3814
- background-image: -moz-linear-gradient(top, #5bc0de, #339bb9);
3815
- background-image: -ms-linear-gradient(top, #5bc0de, #339bb9);
3816
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#339bb9));
3817
- background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9);
3818
- background-image: -o-linear-gradient(top, #5bc0de, #339bb9);
3819
- background-image: linear-gradient(top, #5bc0de, #339bb9);
3820
- background-repeat: repeat-x;
3821
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#339bb9', GradientType=0);
3822
- }
3823
- .bootstrap-wp .progress-info.progress-striped .bar {
3824
- background-color: #5bc0de;
3825
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
3826
- background-image: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3827
- background-image: -moz-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3828
- background-image: -ms-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3829
- background-image: -o-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3830
- background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3831
- }
3832
- .bootstrap-wp .progress-warning .bar {
3833
- background-color: #faa732;
3834
- background-image: -moz-linear-gradient(top, #fbb450, #f89406);
3835
- background-image: -ms-linear-gradient(top, #fbb450, #f89406);
3836
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));
3837
- background-image: -webkit-linear-gradient(top, #fbb450, #f89406);
3838
- background-image: -o-linear-gradient(top, #fbb450, #f89406);
3839
- background-image: linear-gradient(top, #fbb450, #f89406);
3840
- background-repeat: repeat-x;
3841
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbb450', endColorstr='#f89406', GradientType=0);
3842
- }
3843
- .bootstrap-wp .progress-warning.progress-striped .bar {
3844
- background-color: #fbb450;
3845
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
3846
- background-image: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3847
- background-image: -moz-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3848
- background-image: -ms-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3849
- background-image: -o-linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3850
- background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
3851
- }
3852
- .bootstrap-wp .accordion {
3853
- margin-bottom: 18px;
3854
- }
3855
- .bootstrap-wp .accordion-group {
3856
- margin-bottom: 2px;
3857
- border: 1px solid #e5e5e5;
3858
- -webkit-border-radius: 4px;
3859
- -moz-border-radius: 4px;
3860
- border-radius: 4px;
3861
- }
3862
- .bootstrap-wp .accordion-heading {
3863
- border-bottom: 0;
3864
- }
3865
- .bootstrap-wp .accordion-heading .accordion-toggle {
3866
- display: block;
3867
- padding: 8px 15px;
3868
- }
3869
- .bootstrap-wp .accordion-inner {
3870
- padding: 9px 15px;
3871
- border-top: 1px solid #e5e5e5;
3872
- }
3873
- .bootstrap-wp .carousel {
3874
- position: relative;
3875
- margin-bottom: 18px;
3876
- line-height: 1;
3877
- }
3878
- .bootstrap-wp .carousel-inner {
3879
- overflow: hidden;
3880
- width: 100%;
3881
- position: relative;
3882
- }
3883
- .bootstrap-wp .carousel .item {
3884
- display: none;
3885
- position: relative;
3886
- -webkit-transition: 0.6s ease-in-out left;
3887
- -moz-transition: 0.6s ease-in-out left;
3888
- -ms-transition: 0.6s ease-in-out left;
3889
- -o-transition: 0.6s ease-in-out left;
3890
- transition: 0.6s ease-in-out left;
3891
- }
3892
- .bootstrap-wp .carousel .item > img {
3893
- display: block;
3894
- line-height: 1;
3895
- }
3896
- .bootstrap-wp .carousel .active,
3897
- .bootstrap-wp .carousel .next,
3898
- .bootstrap-wp .carousel .prev {
3899
- display: block;
3900
- }
3901
- .bootstrap-wp .carousel .active {
3902
- left: 0;
3903
- }
3904
- .bootstrap-wp .carousel .next,
3905
- .bootstrap-wp .carousel .prev {
3906
- position: absolute;
3907
- top: 0;
3908
- width: 100%;
3909
- }
3910
- .bootstrap-wp .carousel .next {
3911
- left: 100%;
3912
- }
3913
- .bootstrap-wp .carousel .prev {
3914
- left: -100%;
3915
- }
3916
- .bootstrap-wp .carousel .next.left,
3917
- .bootstrap-wp .carousel .prev.right {
3918
- left: 0;
3919
- }
3920
- .bootstrap-wp .carousel .active.left {
3921
- left: -100%;
3922
- }
3923
- .bootstrap-wp .carousel .active.right {
3924
- left: 100%;
3925
- }
3926
- .bootstrap-wp .carousel-control {
3927
- position: absolute;
3928
- top: 40%;
3929
- left: 15px;
3930
- width: 40px;
3931
- height: 40px;
3932
- margin-top: -20px;
3933
- font-size: 60px;
3934
- font-weight: 100;
3935
- line-height: 30px;
3936
- color: #ffffff;
3937
- text-align: center;
3938
- background: #222222;
3939
- border: 3px solid #ffffff;
3940
- -webkit-border-radius: 23px;
3941
- -moz-border-radius: 23px;
3942
- border-radius: 23px;
3943
- opacity: 0.5;
3944
- filter: alpha(opacity=50);
3945
- }
3946
- .bootstrap-wp .carousel-control.right {
3947
- left: auto;
3948
- right: 15px;
3949
- }
3950
- .bootstrap-wp .carousel-control:hover {
3951
- color: #ffffff;
3952
- text-decoration: none;
3953
- opacity: 0.9;
3954
- filter: alpha(opacity=90);
3955
- }
3956
- .bootstrap-wp .carousel-caption {
3957
- position: absolute;
3958
- left: 0;
3959
- right: 0;
3960
- bottom: 0;
3961
- padding: 10px 15px 5px;
3962
- background: #333333;
3963
- background: rgba(0, 0, 0, 0.75);
3964
- }
3965
- .bootstrap-wp .carousel-caption h4,
3966
- .bootstrap-wp .carousel-caption p {
3967
- color: #ffffff;
3968
- }
3969
- .bootstrap-wp .hero-unit {
3970
- padding: 60px;
3971
- margin-bottom: 30px;
3972
- background-color: #eeeeee;
3973
- -webkit-border-radius: 6px;
3974
- -moz-border-radius: 6px;
3975
- border-radius: 6px;
3976
- }
3977
- .bootstrap-wp .hero-unit h1 {
3978
- margin-bottom: 0;
3979
- font-size: 60px;
3980
- line-height: 1;
3981
- color: inherit;
3982
- letter-spacing: -1px;
3983
- }
3984
- .bootstrap-wp .hero-unit p {
3985
- font-size: 18px;
3986
- font-weight: 200;
3987
- line-height: 27px;
3988
- color: inherit;
3989
- }
3990
- .bootstrap-wp .pull-right {
3991
- float: right;
3992
- }
3993
- .bootstrap-wp .pull-left {
3994
- float: left;
3995
- }
3996
- .bootstrap-wp .hide {
3997
- display: none;
3998
- }
3999
- .bootstrap-wp .show {
4000
- display: block;
4001
- }
4002
- .bootstrap-wp .invisible {
4003
- visibility: hidden;
4004
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
footer.php CHANGED
@@ -1,14 +1,22 @@
1
  <div class="copyrightInfo">
2
- <p><strong style="float: right;margin-right: 20px;font-weight: 200">Running version 1.1.2</strong> Copyright 2015+ &copy; Eitson, LLC</p>
3
  </div>
4
  <style>
5
  .copyrightInfo {
6
- width: 780px;
7
- padding: 0 10px;
8
- float: left;
9
- color: #999;
10
- font-size: 11px;
11
- padding-top: 10px;
 
 
 
 
 
 
 
 
12
  }
13
  .copyrightInfo p {
14
  font-size: 11px;
1
  <div class="copyrightInfo">
2
+ <p><strong style="float: right;font-weight: 600;font-size: 11px;text-align: right;">Running Version 2.0</strong> Copyright 2015+ &copy; Eitson, LLC</p>
3
  </div>
4
  <style>
5
  .copyrightInfo {
6
+ width: 740px;
7
+ padding: 10px 20px;
8
+ padding-top: 0;
9
+ float: left;
10
+ background: #F6F9FB;
11
+ /* box-shadow: 2px 2px 2px #DDEBF5; */
12
+ border-bottom-left-radius: 4px;
13
+ border-bottom-right-radius: 4px;
14
+ /* border: 1px solid #F6F9FB; */
15
+ border: 1px solid #E4E2E2;
16
+ border-top: none;
17
+ color: #074E81;
18
+ margin-left: -1px;
19
+ font-size: 11px;
20
  }
21
  .copyrightInfo p {
22
  font-size: 11px;
geobg.png DELETED
Binary file
header.php ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <div class="apiHeader">
2
+ <img src="<?php echo plugins_url( 'logo.png', __FILE__ ); ?>" alt="">
3
+ <a href="https://clickfunnels.com/login" target="_blank" style="margin-top: 3px !important;margin-right: 10px !important;font-size: 21px;"><i class="fa fa-user"></i></a>
4
+ <a href="https://support.clickfunnels.com/support/solutions/5000164139" target="_blank" style="margin-top: 3px !important;margin-right: 10px !important;font-size: 21px;"><i class="fa fa-life-ring"></i></a>
5
+ <br clear="all">
6
+ </div>
jquery.js ADDED
@@ -0,0 +1,4 @@
 
 
 
 
1
+ /*! jQuery v2.1.4 | (c) 2005, 2015 jQuery Foundation, Inc. | jquery.org/license */
2
+ !function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=c.slice,e=c.concat,f=c.push,g=c.indexOf,h={},i=h.toString,j=h.hasOwnProperty,k={},l=a.document,m="2.1.4",n=function(a,b){return new n.fn.init(a,b)},o=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,p=/^-ms-/,q=/-([\da-z])/gi,r=function(a,b){return b.toUpperCase()};n.fn=n.prototype={jquery:m,constructor:n,selector:"",length:0,toArray:function(){return d.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=n.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return n.each(this,a,b)},map:function(a){return this.pushStack(n.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(d.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:c.sort,splice:c.splice},n.extend=n.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||n.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(n.isPlainObject(d)||(e=n.isArray(d)))?(e?(e=!1,f=c&&n.isArray(c)?c:[]):f=c&&n.isPlainObject(c)?c:{},g[b]=n.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},n.extend({expando:"jQuery"+(m+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===n.type(a)},isArray:Array.isArray,isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){return!n.isArray(a)&&a-parseFloat(a)+1>=0},isPlainObject:function(a){return"object"!==n.type(a)||a.nodeType||n.isWindow(a)?!1:a.constructor&&!j.call(a.constructor.prototype,"isPrototypeOf")?!1:!0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?h[i.call(a)]||"object":typeof a},globalEval:function(a){var b,c=eval;a=n.trim(a),a&&(1===a.indexOf("use strict")?(b=l.createElement("script"),b.text=a,l.head.appendChild(b).parentNode.removeChild(b)):c(a))},camelCase:function(a){return a.replace(p,"ms-").replace(q,r)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var d,e=0,f=a.length,g=s(a);if(c){if(g){for(;f>e;e++)if(d=b.apply(a[e],c),d===!1)break}else for(e in a)if(d=b.apply(a[e],c),d===!1)break}else if(g){for(;f>e;e++)if(d=b.call(a[e],e,a[e]),d===!1)break}else for(e in a)if(d=b.call(a[e],e,a[e]),d===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(o,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(s(Object(a))?n.merge(c,"string"==typeof a?[a]:a):f.call(c,a)),c},inArray:function(a,b,c){return null==b?-1:g.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;c>d;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,f=0,g=a.length,h=s(a),i=[];if(h)for(;g>f;f++)d=b(a[f],f,c),null!=d&&i.push(d);else for(f in a)d=b(a[f],f,c),null!=d&&i.push(d);return e.apply([],i)},guid:1,proxy:function(a,b){var c,e,f;return"string"==typeof b&&(c=a[b],b=a,a=c),n.isFunction(a)?(e=d.call(arguments,2),f=function(){return a.apply(b||this,e.concat(d.call(arguments)))},f.guid=a.guid=a.guid||n.guid++,f):void 0},now:Date.now,support:k}),n.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){h["[object "+b+"]"]=b.toLowerCase()});function s(a){var b="length"in a&&a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var t=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ha(),z=ha(),A=ha(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N=M.replace("w","w#"),O="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+N+"))|)"+L+"*\\]",P=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+O+")*)|.*)\\)|)",Q=new RegExp(L+"+","g"),R=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),S=new RegExp("^"+L+"*,"+L+"*"),T=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),U=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),V=new RegExp(P),W=new RegExp("^"+N+"$"),X={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+O),PSEUDO:new RegExp("^"+P),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},Y=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,$=/^[^{]+\{\s*\[native \w/,_=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,aa=/[+~]/,ba=/'|\\/g,ca=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),da=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},ea=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(fa){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function ga(a,b,d,e){var f,h,j,k,l,o,r,s,w,x;if((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,d=d||[],k=b.nodeType,"string"!=typeof a||!a||1!==k&&9!==k&&11!==k)return d;if(!e&&p){if(11!==k&&(f=_.exec(a)))if(j=f[1]){if(9===k){if(h=b.getElementById(j),!h||!h.parentNode)return d;if(h.id===j)return d.push(h),d}else if(b.ownerDocument&&(h=b.ownerDocument.getElementById(j))&&t(b,h)&&h.id===j)return d.push(h),d}else{if(f[2])return H.apply(d,b.getElementsByTagName(a)),d;if((j=f[3])&&c.getElementsByClassName)return H.apply(d,b.getElementsByClassName(j)),d}if(c.qsa&&(!q||!q.test(a))){if(s=r=u,w=b,x=1!==k&&a,1===k&&"object"!==b.nodeName.toLowerCase()){o=g(a),(r=b.getAttribute("id"))?s=r.replace(ba,"\\$&"):b.setAttribute("id",s),s="[id='"+s+"'] ",l=o.length;while(l--)o[l]=s+ra(o[l]);w=aa.test(a)&&pa(b.parentNode)||b,x=o.join(",")}if(x)try{return H.apply(d,w.querySelectorAll(x)),d}catch(y){}finally{r||b.removeAttribute("id")}}}return i(a.replace(R,"$1"),b,d,e)}function ha(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ia(a){return a[u]=!0,a}function ja(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ka(a,b){var c=a.split("|"),e=a.length;while(e--)d.attrHandle[c[e]]=b}function la(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function na(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function oa(a){return ia(function(b){return b=+b,ia(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function pa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=ga.support={},f=ga.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=ga.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=g.documentElement,e=g.defaultView,e&&e!==e.top&&(e.addEventListener?e.addEventListener("unload",ea,!1):e.attachEvent&&e.attachEvent("onunload",ea)),p=!f(g),c.attributes=ja(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ja(function(a){return a.appendChild(g.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=$.test(g.getElementsByClassName),c.getById=ja(function(a){return o.appendChild(a).id=u,!g.getElementsByName||!g.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},d.filter.ID=function(a){var b=a.replace(ca,da);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(ca,da);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=$.test(g.querySelectorAll))&&(ja(function(a){o.appendChild(a).innerHTML="<a id='"+u+"'></a><select id='"+u+"-\f]' msallowcapture=''><option selected=''></option></select>",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ja(function(a){var b=g.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=$.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ja(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",P)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=$.test(o.compareDocumentPosition),t=b||$.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===g||a.ownerDocument===v&&t(v,a)?-1:b===g||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,h=[a],i=[b];if(!e||!f)return a===g?-1:b===g?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return la(a,b);c=a;while(c=c.parentNode)h.unshift(c);c=b;while(c=c.parentNode)i.unshift(c);while(h[d]===i[d])d++;return d?la(h[d],i[d]):h[d]===v?-1:i[d]===v?1:0},g):n},ga.matches=function(a,b){return ga(a,null,null,b)},ga.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(U,"='$1']"),!(!c.matchesSelector||!p||r&&r.test(b)||q&&q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return ga(b,n,null,[a]).length>0},ga.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},ga.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},ga.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},ga.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=ga.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=ga.selectors={cacheLength:50,createPseudo:ia,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(ca,da),a[3]=(a[3]||a[4]||a[5]||"").replace(ca,da),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||ga.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&ga.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return X.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&V.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(ca,da).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=ga.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(Q," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){while(p){l=b;while(l=l[p])if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){k=q[u]||(q[u]={}),j=k[a]||[],n=j[0]===w&&j[1],m=j[0]===w&&j[2],l=n&&q.childNodes[n];while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if(1===l.nodeType&&++m&&l===b){k[a]=[w,n,m];break}}else if(s&&(j=(b[u]||(b[u]={}))[a])&&j[0]===w)m=j[1];else while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if((h?l.nodeName.toLowerCase()===r:1===l.nodeType)&&++m&&(s&&((l[u]||(l[u]={}))[a]=[w,m]),l===b))break;return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||ga.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ia(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ia(function(a){var b=[],c=[],d=h(a.replace(R,"$1"));return d[u]?ia(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ia(function(a){return function(b){return ga(a,b).length>0}}),contains:ia(function(a){return a=a.replace(ca,da),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ia(function(a){return W.test(a||"")||ga.error("unsupported lang: "+a),a=a.replace(ca,da).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Z.test(a.nodeName)},input:function(a){return Y.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:oa(function(){return[0]}),last:oa(function(a,b){return[b-1]}),eq:oa(function(a,b,c){return[0>c?c+b:c]}),even:oa(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:oa(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:oa(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:oa(function(a,b,c){for(var d=0>c?c+b:c;++d<b;)a.push(d);return a})}},d.pseudos.nth=d.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})d.pseudos[b]=ma(b);for(b in{submit:!0,reset:!0})d.pseudos[b]=na(b);function qa(){}qa.prototype=d.filters=d.pseudos,d.setFilters=new qa,g=ga.tokenize=function(a,b){var c,e,f,g,h,i,j,k=z[a+" "];if(k)return b?0:k.slice(0);h=a,i=[],j=d.preFilter;while(h){(!c||(e=S.exec(h)))&&(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),c=!1,(e=T.exec(h))&&(c=e.shift(),f.push({value:c,type:e[0].replace(R," ")}),h=h.slice(c.length));for(g in d.filter)!(e=X[g].exec(h))||j[g]&&!(e=j[g](e))||(c=e.shift(),f.push({value:c,type:g,matches:e}),h=h.slice(c.length));if(!c)break}return b?h.length:h?ga.error(a):z(a,i).slice(0)};function ra(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function sa(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(i=b[u]||(b[u]={}),(h=i[d])&&h[0]===w&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function ta(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ua(a,b,c){for(var d=0,e=b.length;e>d;d++)ga(a,b[d],c);return c}function va(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function wa(a,b,c,d,e,f){return d&&!d[u]&&(d=wa(d)),e&&!e[u]&&(e=wa(e,f)),ia(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ua(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:va(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=va(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=va(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function xa(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=sa(function(a){return a===b},h,!0),l=sa(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[sa(ta(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return wa(i>1&&ta(m),i>1&&ra(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(R,"$1"),c,e>i&&xa(a.slice(i,e)),f>e&&xa(a=a.slice(e)),f>e&&ra(a))}m.push(c)}return ta(m)}function ya(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,m,o,p=0,q="0",r=f&&[],s=[],t=j,u=f||e&&d.find.TAG("*",k),v=w+=null==t?1:Math.random()||.1,x=u.length;for(k&&(j=g!==n&&g);q!==x&&null!=(l=u[q]);q++){if(e&&l){m=0;while(o=a[m++])if(o(l,g,h)){i.push(l);break}k&&(w=v)}c&&((l=!o&&l)&&p--,f&&r.push(l))}if(p+=q,c&&q!==p){m=0;while(o=b[m++])o(r,s,g,h);if(f){if(p>0)while(q--)r[q]||s[q]||(s[q]=F.call(i));s=va(s)}H.apply(i,s),k&&!f&&s.length>0&&p+b.length>1&&ga.uniqueSort(i)}return k&&(w=v,j=t),r};return c?ia(f):f}return h=ga.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=xa(b[c]),f[u]?d.push(f):e.push(f);f=A(a,ya(e,d)),f.selector=a}return f},i=ga.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(ca,da),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=X.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(ca,da),aa.test(j[0].type)&&pa(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&ra(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,aa.test(a)&&pa(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ja(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),ja(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||ka("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ja(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ka("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),ja(function(a){return null==a.getAttribute("disabled")})||ka(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),ga}(a);n.find=t,n.expr=t.selectors,n.expr[":"]=n.expr.pseudos,n.unique=t.uniqueSort,n.text=t.getText,n.isXMLDoc=t.isXML,n.contains=t.contains;var u=n.expr.match.needsContext,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^.[^:#\[\.,]*$/;function x(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(w.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return g.call(b,a)>=0!==c})}n.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?n.find.matchesSelector(d,a)?[d]:[]:n.find.matches(a,n.grep(b,function(a){return 1===a.nodeType}))},n.fn.extend({find:function(a){var b,c=this.length,d=[],e=this;if("string"!=typeof a)return this.pushStack(n(a).filter(function(){for(b=0;c>b;b++)if(n.contains(e[b],this))return!0}));for(b=0;c>b;b++)n.find(a,e[b],d);return d=this.pushStack(c>1?n.unique(d):d),d.selector=this.selector?this.selector+" "+a:a,d},filter:function(a){return this.pushStack(x(this,a||[],!1))},not:function(a){return this.pushStack(x(this,a||[],!0))},is:function(a){return!!x(this,"string"==typeof a&&u.test(a)?n(a):a||[],!1).length}});var y,z=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,A=n.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(c="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:z.exec(a),!c||!c[1]&&b)return!b||b.jquery?(b||y).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof n?b[0]:b,n.merge(this,n.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:l,!0)),v.test(c[1])&&n.isPlainObject(b))for(c in b)n.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}return d=l.getElementById(c[2]),d&&d.parentNode&&(this.length=1,this[0]=d),this.context=l,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):n.isFunction(a)?"undefined"!=typeof y.ready?y.ready(a):a(n):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),n.makeArray(a,this))};A.prototype=n.fn,y=n(l);var B=/^(?:parents|prev(?:Until|All))/,C={children:!0,contents:!0,next:!0,prev:!0};n.extend({dir:function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&n(a).is(c))break;d.push(a)}return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),n.fn.extend({has:function(a){var b=n(a,this),c=b.length;return this.filter(function(){for(var a=0;c>a;a++)if(n.contains(this,b[a]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=u.test(a)||"string"!=typeof a?n(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&n.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?n.unique(f):f)},index:function(a){return a?"string"==typeof a?g.call(n(a),this[0]):g.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(n.unique(n.merge(this.get(),n(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function D(a,b){while((a=a[b])&&1!==a.nodeType);return a}n.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return n.dir(a,"parentNode")},parentsUntil:function(a,b,c){return n.dir(a,"parentNode",c)},next:function(a){return D(a,"nextSibling")},prev:function(a){return D(a,"previousSibling")},nextAll:function(a){return n.dir(a,"nextSibling")},prevAll:function(a){return n.dir(a,"previousSibling")},nextUntil:function(a,b,c){return n.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return n.dir(a,"previousSibling",c)},siblings:function(a){return n.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return n.sibling(a.firstChild)},contents:function(a){return a.contentDocument||n.merge([],a.childNodes)}},function(a,b){n.fn[a]=function(c,d){var e=n.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=n.filter(d,e)),this.length>1&&(C[a]||n.unique(e),B.test(a)&&e.reverse()),this.pushStack(e)}});var E=/\S+/g,F={};function G(a){var b=F[a]={};return n.each(a.match(E)||[],function(a,c){b[c]=!0}),b}n.Callbacks=function(a){a="string"==typeof a?F[a]||G(a):n.extend({},a);var b,c,d,e,f,g,h=[],i=!a.once&&[],j=function(l){for(b=a.memory&&l,c=!0,g=e||0,e=0,f=h.length,d=!0;h&&f>g;g++)if(h[g].apply(l[0],l[1])===!1&&a.stopOnFalse){b=!1;break}d=!1,h&&(i?i.length&&j(i.shift()):b?h=[]:k.disable())},k={add:function(){if(h){var c=h.length;!function g(b){n.each(b,function(b,c){var d=n.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&g(c)})}(arguments),d?f=h.length:b&&(e=c,j(b))}return this},remove:function(){return h&&n.each(arguments,function(a,b){var c;while((c=n.inArray(b,h,c))>-1)h.splice(c,1),d&&(f>=c&&f--,g>=c&&g--)}),this},has:function(a){return a?n.inArray(a,h)>-1:!(!h||!h.length)},empty:function(){return h=[],f=0,this},disable:function(){return h=i=b=void 0,this},disabled:function(){return!h},lock:function(){return i=void 0,b||k.disable(),this},locked:function(){return!i},fireWith:function(a,b){return!h||c&&!i||(b=b||[],b=[a,b.slice?b.slice():b],d?i.push(b):j(b)),this},fire:function(){return k.fireWith(this,arguments),this},fired:function(){return!!c}};return k},n.extend({Deferred:function(a){var b=[["resolve","done",n.Callbacks("once memory"),"resolved"],["reject","fail",n.Callbacks("once memory"),"rejected"],["notify","progress",n.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return n.Deferred(function(c){n.each(b,function(b,f){var g=n.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&n.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?n.extend(a,d):d}},e={};return d.pipe=d.then,n.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=d.call(arguments),e=c.length,f=1!==e||a&&n.isFunction(a.promise)?e:0,g=1===f?a:n.Deferred(),h=function(a,b,c){return function(e){b[a]=this,c[a]=arguments.length>1?d.call(arguments):e,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(e>1)for(i=new Array(e),j=new Array(e),k=new Array(e);e>b;b++)c[b]&&n.isFunction(c[b].promise)?c[b].promise().done(h(b,k,c)).fail(g.reject).progress(h(b,j,i)):--f;return f||g.resolveWith(k,c),g.promise()}});var H;n.fn.ready=function(a){return n.ready.promise().done(a),this},n.extend({isReady:!1,readyWait:1,holdReady:function(a){a?n.readyWait++:n.ready(!0)},ready:function(a){(a===!0?--n.readyWait:n.isReady)||(n.isReady=!0,a!==!0&&--n.readyWait>0||(H.resolveWith(l,[n]),n.fn.triggerHandler&&(n(l).triggerHandler("ready"),n(l).off("ready"))))}});function I(){l.removeEventListener("DOMContentLoaded",I,!1),a.removeEventListener("load",I,!1),n.ready()}n.ready.promise=function(b){return H||(H=n.Deferred(),"complete"===l.readyState?setTimeout(n.ready):(l.addEventListener("DOMContentLoaded",I,!1),a.addEventListener("load",I,!1))),H.promise(b)},n.ready.promise();var J=n.access=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===n.type(c)){e=!0;for(h in c)n.access(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,n.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(n(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f};n.acceptData=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function K(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=n.expando+K.uid++}K.uid=1,K.accepts=n.acceptData,K.prototype={key:function(a){if(!K.accepts(a))return 0;var b={},c=a[this.expando];if(!c){c=K.uid++;try{b[this.expando]={value:c},Object.defineProperties(a,b)}catch(d){b[this.expando]=c,n.extend(a,b)}}return this.cache[c]||(this.cache[c]={}),c},set:function(a,b,c){var d,e=this.key(a),f=this.cache[e];if("string"==typeof b)f[b]=c;else if(n.isEmptyObject(f))n.extend(this.cache[e],b);else for(d in b)f[d]=b[d];return f},get:function(a,b){var c=this.cache[this.key(a)];return void 0===b?c:c[b]},access:function(a,b,c){var d;return void 0===b||b&&"string"==typeof b&&void 0===c?(d=this.get(a,b),void 0!==d?d:this.get(a,n.camelCase(b))):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d,e,f=this.key(a),g=this.cache[f];if(void 0===b)this.cache[f]={};else{n.isArray(b)?d=b.concat(b.map(n.camelCase)):(e=n.camelCase(b),b in g?d=[b,e]:(d=e,d=d in g?[d]:d.match(E)||[])),c=d.length;while(c--)delete g[d[c]]}},hasData:function(a){return!n.isEmptyObject(this.cache[a[this.expando]]||{})},discard:function(a){a[this.expando]&&delete this.cache[a[this.expando]]}};var L=new K,M=new K,N=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,O=/([A-Z])/g;function P(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(O,"-$1").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:N.test(c)?n.parseJSON(c):c}catch(e){}M.set(a,b,c)}else c=void 0;return c}n.extend({hasData:function(a){return M.hasData(a)||L.hasData(a)},data:function(a,b,c){
3
+ return M.access(a,b,c)},removeData:function(a,b){M.remove(a,b)},_data:function(a,b,c){return L.access(a,b,c)},_removeData:function(a,b){L.remove(a,b)}}),n.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=M.get(f),1===f.nodeType&&!L.get(f,"hasDataAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=n.camelCase(d.slice(5)),P(f,d,e[d])));L.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){M.set(this,a)}):J(this,function(b){var c,d=n.camelCase(a);if(f&&void 0===b){if(c=M.get(f,a),void 0!==c)return c;if(c=M.get(f,d),void 0!==c)return c;if(c=P(f,d,void 0),void 0!==c)return c}else this.each(function(){var c=M.get(this,d);M.set(this,d,b),-1!==a.indexOf("-")&&void 0!==c&&M.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){M.remove(this,a)})}}),n.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=L.get(a,b),c&&(!d||n.isArray(c)?d=L.access(a,b,n.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=n.queue(a,b),d=c.length,e=c.shift(),f=n._queueHooks(a,b),g=function(){n.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return L.get(a,c)||L.access(a,c,{empty:n.Callbacks("once memory").add(function(){L.remove(a,[b+"queue",c])})})}}),n.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length<c?n.queue(this[0],a):void 0===b?this:this.each(function(){var c=n.queue(this,a,b);n._queueHooks(this,a),"fx"===a&&"inprogress"!==c[0]&&n.dequeue(this,a)})},dequeue:function(a){return this.each(function(){n.dequeue(this,a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var c,d=1,e=n.Deferred(),f=this,g=this.length,h=function(){--d||e.resolveWith(f,[f])};"string"!=typeof a&&(b=a,a=void 0),a=a||"fx";while(g--)c=L.get(f[g],a+"queueHooks"),c&&c.empty&&(d++,c.empty.add(h));return h(),e.promise(b)}});var Q=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,R=["Top","Right","Bottom","Left"],S=function(a,b){return a=b||a,"none"===n.css(a,"display")||!n.contains(a.ownerDocument,a)},T=/^(?:checkbox|radio)$/i;!function(){var a=l.createDocumentFragment(),b=a.appendChild(l.createElement("div")),c=l.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),k.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="<textarea>x</textarea>",k.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var U="undefined";k.focusinBubbles="onfocusin"in a;var V=/^key/,W=/^(?:mouse|pointer|contextmenu)|click/,X=/^(?:focusinfocus|focusoutblur)$/,Y=/^([^.]*)(?:\.(.+)|)$/;function Z(){return!0}function $(){return!1}function _(){try{return l.activeElement}catch(a){}}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=L.get(a);if(r){c.handler&&(f=c,c=f.handler,e=f.selector),c.guid||(c.guid=n.guid++),(i=r.events)||(i=r.events={}),(g=r.handle)||(g=r.handle=function(b){return typeof n!==U&&n.event.triggered!==b.type?n.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(E)||[""],j=b.length;while(j--)h=Y.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o&&(l=n.event.special[o]||{},o=(e?l.delegateType:l.bindType)||o,l=n.event.special[o]||{},k=n.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&n.expr.match.needsContext.test(e),namespace:p.join(".")},f),(m=i[o])||(m=i[o]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,p,g)!==!1||a.addEventListener&&a.addEventListener(o,g,!1)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),n.event.global[o]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=L.hasData(a)&&L.get(a);if(r&&(i=r.events)){b=(b||"").match(E)||[""],j=b.length;while(j--)if(h=Y.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=n.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,m=i[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&q!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||n.removeEvent(a,o,r.handle),delete i[o])}else for(o in i)n.event.remove(a,o+b[j],c,d,!0);n.isEmptyObject(i)&&(delete r.handle,L.remove(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,k,m,o,p=[d||l],q=j.call(b,"type")?b.type:b,r=j.call(b,"namespace")?b.namespace.split("."):[];if(g=h=d=d||l,3!==d.nodeType&&8!==d.nodeType&&!X.test(q+n.event.triggered)&&(q.indexOf(".")>=0&&(r=q.split("."),q=r.shift(),r.sort()),k=q.indexOf(":")<0&&"on"+q,b=b[n.expando]?b:new n.Event(q,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=r.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+r.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:n.makeArray(c,[b]),o=n.event.special[q]||{},e||!o.trigger||o.trigger.apply(d,c)!==!1)){if(!e&&!o.noBubble&&!n.isWindow(d)){for(i=o.delegateType||q,X.test(i+q)||(g=g.parentNode);g;g=g.parentNode)p.push(g),h=g;h===(d.ownerDocument||l)&&p.push(h.defaultView||h.parentWindow||a)}f=0;while((g=p[f++])&&!b.isPropagationStopped())b.type=f>1?i:o.bindType||q,m=(L.get(g,"events")||{})[b.type]&&L.get(g,"handle"),m&&m.apply(g,c),m=k&&g[k],m&&m.apply&&n.acceptData(g)&&(b.result=m.apply(g,c),b.result===!1&&b.preventDefault());return b.type=q,e||b.isDefaultPrevented()||o._default&&o._default.apply(p.pop(),c)!==!1||!n.acceptData(d)||k&&n.isFunction(d[q])&&!n.isWindow(d)&&(h=d[k],h&&(d[k]=null),n.event.triggered=q,d[q](),n.event.triggered=void 0,h&&(d[k]=h)),b.result}},dispatch:function(a){a=n.event.fix(a);var b,c,e,f,g,h=[],i=d.call(arguments),j=(L.get(this,"events")||{})[a.type]||[],k=n.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=n.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,c=0;while((g=f.handlers[c++])&&!a.isImmediatePropagationStopped())(!a.namespace_re||a.namespace_re.test(g.namespace))&&(a.handleObj=g,a.data=g.data,e=((n.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==e&&(a.result=e)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!==this;i=i.parentNode||this)if(i.disabled!==!0||"click"!==a.type){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?n(e,this).index(i)>=0:n.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h<b.length&&g.push({elem:this,handlers:b.slice(h)}),g},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return null==a.which&&(a.which=null!=b.charCode?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,b){var c,d,e,f=b.button;return null==a.pageX&&null!=b.clientX&&(c=a.target.ownerDocument||l,d=c.documentElement,e=c.body,a.pageX=b.clientX+(d&&d.scrollLeft||e&&e.scrollLeft||0)-(d&&d.clientLeft||e&&e.clientLeft||0),a.pageY=b.clientY+(d&&d.scrollTop||e&&e.scrollTop||0)-(d&&d.clientTop||e&&e.clientTop||0)),a.which||void 0===f||(a.which=1&f?1:2&f?3:4&f?2:0),a}},fix:function(a){if(a[n.expando])return a;var b,c,d,e=a.type,f=a,g=this.fixHooks[e];g||(this.fixHooks[e]=g=W.test(e)?this.mouseHooks:V.test(e)?this.keyHooks:{}),d=g.props?this.props.concat(g.props):this.props,a=new n.Event(f),b=d.length;while(b--)c=d[b],a[c]=f[c];return a.target||(a.target=l),3===a.target.nodeType&&(a.target=a.target.parentNode),g.filter?g.filter(a,f):a},special:{load:{noBubble:!0},focus:{trigger:function(){return this!==_()&&this.focus?(this.focus(),!1):void 0},delegateType:"focusin"},blur:{trigger:function(){return this===_()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return"checkbox"===this.type&&this.click&&n.nodeName(this,"input")?(this.click(),!1):void 0},_default:function(a){return n.nodeName(a.target,"a")}},beforeunload:{postDispatch:function(a){void 0!==a.result&&a.originalEvent&&(a.originalEvent.returnValue=a.result)}}},simulate:function(a,b,c,d){var e=n.extend(new n.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?n.event.trigger(e,null,b):n.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},n.removeEvent=function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)},n.Event=function(a,b){return this instanceof n.Event?(a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||void 0===a.defaultPrevented&&a.returnValue===!1?Z:$):this.type=a,b&&n.extend(this,b),this.timeStamp=a&&a.timeStamp||n.now(),void(this[n.expando]=!0)):new n.Event(a,b)},n.Event.prototype={isDefaultPrevented:$,isPropagationStopped:$,isImmediatePropagationStopped:$,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=Z,a&&a.preventDefault&&a.preventDefault()},stopPropagation:function(){var a=this.originalEvent;this.isPropagationStopped=Z,a&&a.stopPropagation&&a.stopPropagation()},stopImmediatePropagation:function(){var a=this.originalEvent;this.isImmediatePropagationStopped=Z,a&&a.stopImmediatePropagation&&a.stopImmediatePropagation(),this.stopPropagation()}},n.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(a,b){n.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj;return(!e||e!==d&&!n.contains(d,e))&&(a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b),c}}}),k.focusinBubbles||n.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){n.event.simulate(b,a.target,n.event.fix(a),!0)};n.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=L.access(d,b);e||d.addEventListener(a,c,!0),L.access(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=L.access(d,b)-1;e?L.access(d,b,e):(d.removeEventListener(a,c,!0),L.remove(d,b))}}}),n.fn.extend({on:function(a,b,c,d,e){var f,g;if("object"==typeof a){"string"!=typeof b&&(c=c||b,b=void 0);for(g in a)this.on(g,b,c,a[g],e);return this}if(null==c&&null==d?(d=b,c=b=void 0):null==d&&("string"==typeof b?(d=c,c=void 0):(d=c,c=b,b=void 0)),d===!1)d=$;else if(!d)return this;return 1===e&&(f=d,d=function(a){return n().off(a),f.apply(this,arguments)},d.guid=f.guid||(f.guid=n.guid++)),this.each(function(){n.event.add(this,a,d,c,b)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,b,c){var d,e;if(a&&a.preventDefault&&a.handleObj)return d=a.handleObj,n(a.delegateTarget).off(d.namespace?d.origType+"."+d.namespace:d.origType,d.selector,d.handler),this;if("object"==typeof a){for(e in a)this.off(e,b,a[e]);return this}return(b===!1||"function"==typeof b)&&(c=b,b=void 0),c===!1&&(c=$),this.each(function(){n.event.remove(this,a,c,b)})},trigger:function(a,b){return this.each(function(){n.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];return c?n.event.trigger(a,b,c,!0):void 0}});var aa=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,ba=/<([\w:]+)/,ca=/<|&#?\w+;/,da=/<(?:script|style|link)/i,ea=/checked\s*(?:[^=]|=\s*.checked.)/i,fa=/^$|\/(?:java|ecma)script/i,ga=/^true\/(.*)/,ha=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,ia={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};ia.optgroup=ia.option,ia.tbody=ia.tfoot=ia.colgroup=ia.caption=ia.thead,ia.th=ia.td;function ja(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function ka(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function la(a){var b=ga.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function ma(a,b){for(var c=0,d=a.length;d>c;c++)L.set(a[c],"globalEval",!b||L.get(b[c],"globalEval"))}function na(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(L.hasData(a)&&(f=L.access(a),g=L.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)n.event.add(b,e,j[e][c])}M.hasData(a)&&(h=M.access(a),i=n.extend({},h),M.set(b,i))}}function oa(a,b){var c=a.getElementsByTagName?a.getElementsByTagName(b||"*"):a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&n.nodeName(a,b)?n.merge([a],c):c}function pa(a,b){var c=b.nodeName.toLowerCase();"input"===c&&T.test(a.type)?b.checked=a.checked:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}n.extend({clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=n.contains(a.ownerDocument,a);if(!(k.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||n.isXMLDoc(a)))for(g=oa(h),f=oa(a),d=0,e=f.length;e>d;d++)pa(f[d],g[d]);if(b)if(c)for(f=f||oa(a),g=g||oa(h),d=0,e=f.length;e>d;d++)na(f[d],g[d]);else na(a,h);return g=oa(h,"script"),g.length>0&&ma(g,!i&&oa(a,"script")),h},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,k=b.createDocumentFragment(),l=[],m=0,o=a.length;o>m;m++)if(e=a[m],e||0===e)if("object"===n.type(e))n.merge(l,e.nodeType?[e]:e);else if(ca.test(e)){f=f||k.appendChild(b.createElement("div")),g=(ba.exec(e)||["",""])[1].toLowerCase(),h=ia[g]||ia._default,f.innerHTML=h[1]+e.replace(aa,"<$1></$2>")+h[2],j=h[0];while(j--)f=f.lastChild;n.merge(l,f.childNodes),f=k.firstChild,f.textContent=""}else l.push(b.createTextNode(e));k.textContent="",m=0;while(e=l[m++])if((!d||-1===n.inArray(e,d))&&(i=n.contains(e.ownerDocument,e),f=oa(k.appendChild(e),"script"),i&&ma(f),c)){j=0;while(e=f[j++])fa.test(e.type||"")&&c.push(e)}return k},cleanData:function(a){for(var b,c,d,e,f=n.event.special,g=0;void 0!==(c=a[g]);g++){if(n.acceptData(c)&&(e=c[L.expando],e&&(b=L.cache[e]))){if(b.events)for(d in b.events)f[d]?n.event.remove(c,d):n.removeEvent(c,d,b.handle);L.cache[e]&&delete L.cache[e]}delete M.cache[c[M.expando]]}}}),n.fn.extend({text:function(a){return J(this,function(a){return void 0===a?n.text(this):this.empty().each(function(){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&(this.textContent=a)})},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=ja(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=ja(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?n.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||n.cleanData(oa(c)),c.parentNode&&(b&&n.contains(c.ownerDocument,c)&&ma(oa(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(n.cleanData(oa(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return n.clone(this,a,b)})},html:function(a){return J(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!da.test(a)&&!ia[(ba.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(aa,"<$1></$2>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(n.cleanData(oa(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,n.cleanData(oa(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=e.apply([],a);var c,d,f,g,h,i,j=0,l=this.length,m=this,o=l-1,p=a[0],q=n.isFunction(p);if(q||l>1&&"string"==typeof p&&!k.checkClone&&ea.test(p))return this.each(function(c){var d=m.eq(c);q&&(a[0]=p.call(this,c,d.html())),d.domManip(a,b)});if(l&&(c=n.buildFragment(a,this[0].ownerDocument,!1,this),d=c.firstChild,1===c.childNodes.length&&(c=d),d)){for(f=n.map(oa(c,"script"),ka),g=f.length;l>j;j++)h=c,j!==o&&(h=n.clone(h,!0,!0),g&&n.merge(f,oa(h,"script"))),b.call(this[j],h,j);if(g)for(i=f[f.length-1].ownerDocument,n.map(f,la),j=0;g>j;j++)h=f[j],fa.test(h.type||"")&&!L.access(h,"globalEval")&&n.contains(i,h)&&(h.src?n._evalUrl&&n._evalUrl(h.src):n.globalEval(h.textContent.replace(ha,"")))}return this}}),n.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){n.fn[a]=function(a){for(var c,d=[],e=n(a),g=e.length-1,h=0;g>=h;h++)c=h===g?this:this.clone(!0),n(e[h])[b](c),f.apply(d,c.get());return this.pushStack(d)}});var qa,ra={};function sa(b,c){var d,e=n(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:n.css(e[0],"display");return e.detach(),f}function ta(a){var b=l,c=ra[a];return c||(c=sa(a,b),"none"!==c&&c||(qa=(qa||n("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement),b=qa[0].contentDocument,b.write(),b.close(),c=sa(a,b),qa.detach()),ra[a]=c),c}var ua=/^margin/,va=new RegExp("^("+Q+")(?!px)[a-z%]+$","i"),wa=function(b){return b.ownerDocument.defaultView.opener?b.ownerDocument.defaultView.getComputedStyle(b,null):a.getComputedStyle(b,null)};function xa(a,b,c){var d,e,f,g,h=a.style;return c=c||wa(a),c&&(g=c.getPropertyValue(b)||c[b]),c&&(""!==g||n.contains(a.ownerDocument,a)||(g=n.style(a,b)),va.test(g)&&ua.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f)),void 0!==g?g+"":g}function ya(a,b){return{get:function(){return a()?void delete this.get:(this.get=b).apply(this,arguments)}}}!function(){var b,c,d=l.documentElement,e=l.createElement("div"),f=l.createElement("div");if(f.style){f.style.backgroundClip="content-box",f.cloneNode(!0).style.backgroundClip="",k.clearCloneStyle="content-box"===f.style.backgroundClip,e.style.cssText="border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute",e.appendChild(f);function g(){f.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",f.innerHTML="",d.appendChild(e);var g=a.getComputedStyle(f,null);b="1%"!==g.top,c="4px"===g.width,d.removeChild(e)}a.getComputedStyle&&n.extend(k,{pixelPosition:function(){return g(),b},boxSizingReliable:function(){return null==c&&g(),c},reliableMarginRight:function(){var b,c=f.appendChild(l.createElement("div"));return c.style.cssText=f.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",c.style.marginRight=c.style.width="0",f.style.width="1px",d.appendChild(e),b=!parseFloat(a.getComputedStyle(c,null).marginRight),d.removeChild(e),f.removeChild(c),b}})}}(),n.swap=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e};var za=/^(none|table(?!-c[ea]).+)/,Aa=new RegExp("^("+Q+")(.*)$","i"),Ba=new RegExp("^([+-])=("+Q+")","i"),Ca={position:"absolute",visibility:"hidden",display:"block"},Da={letterSpacing:"0",fontWeight:"400"},Ea=["Webkit","O","Moz","ms"];function Fa(a,b){if(b in a)return b;var c=b[0].toUpperCase()+b.slice(1),d=b,e=Ea.length;while(e--)if(b=Ea[e]+c,b in a)return b;return d}function Ga(a,b,c){var d=Aa.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function Ha(a,b,c,d,e){for(var f=c===(d?"border":"content")?4:"width"===b?1:0,g=0;4>f;f+=2)"margin"===c&&(g+=n.css(a,c+R[f],!0,e)),d?("content"===c&&(g-=n.css(a,"padding"+R[f],!0,e)),"margin"!==c&&(g-=n.css(a,"border"+R[f]+"Width",!0,e))):(g+=n.css(a,"padding"+R[f],!0,e),"padding"!==c&&(g+=n.css(a,"border"+R[f]+"Width",!0,e)));return g}function Ia(a,b,c){var d=!0,e="width"===b?a.offsetWidth:a.offsetHeight,f=wa(a),g="border-box"===n.css(a,"boxSizing",!1,f);if(0>=e||null==e){if(e=xa(a,b,f),(0>e||null==e)&&(e=a.style[b]),va.test(e))return e;d=g&&(k.boxSizingReliable()||e===a.style[b]),e=parseFloat(e)||0}return e+Ha(a,b,c||(g?"border":"content"),d,f)+"px"}function Ja(a,b){for(var c,d,e,f=[],g=0,h=a.length;h>g;g++)d=a[g],d.style&&(f[g]=L.get(d,"olddisplay"),c=d.style.display,b?(f[g]||"none"!==c||(d.style.display=""),""===d.style.display&&S(d)&&(f[g]=L.access(d,"olddisplay",ta(d.nodeName)))):(e=S(d),"none"===c&&e||L.set(d,"olddisplay",e?c:n.css(d,"display"))));for(g=0;h>g;g++)d=a[g],d.style&&(b&&"none"!==d.style.display&&""!==d.style.display||(d.style.display=b?f[g]||"":"none"));return a}n.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=xa(a,"opacity");return""===c?"1":c}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=n.camelCase(b),i=a.style;return b=n.cssProps[h]||(n.cssProps[h]=Fa(i,h)),g=n.cssHooks[b]||n.cssHooks[h],void 0===c?g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:i[b]:(f=typeof c,"string"===f&&(e=Ba.exec(c))&&(c=(e[1]+1)*e[2]+parseFloat(n.css(a,b)),f="number"),null!=c&&c===c&&("number"!==f||n.cssNumber[h]||(c+="px"),k.clearCloneStyle||""!==c||0!==b.indexOf("background")||(i[b]="inherit"),g&&"set"in g&&void 0===(c=g.set(a,c,d))||(i[b]=c)),void 0)}},css:function(a,b,c,d){var e,f,g,h=n.camelCase(b);return b=n.cssProps[h]||(n.cssProps[h]=Fa(a.style,h)),g=n.cssHooks[b]||n.cssHooks[h],g&&"get"in g&&(e=g.get(a,!0,c)),void 0===e&&(e=xa(a,b,d)),"normal"===e&&b in Da&&(e=Da[b]),""===c||c?(f=parseFloat(e),c===!0||n.isNumeric(f)?f||0:e):e}}),n.each(["height","width"],function(a,b){n.cssHooks[b]={get:function(a,c,d){return c?za.test(n.css(a,"display"))&&0===a.offsetWidth?n.swap(a,Ca,function(){return Ia(a,b,d)}):Ia(a,b,d):void 0},set:function(a,c,d){var e=d&&wa(a);return Ga(a,c,d?Ha(a,b,d,"border-box"===n.css(a,"boxSizing",!1,e),e):0)}}}),n.cssHooks.marginRight=ya(k.reliableMarginRight,function(a,b){return b?n.swap(a,{display:"inline-block"},xa,[a,"marginRight"]):void 0}),n.each({margin:"",padding:"",border:"Width"},function(a,b){n.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];4>d;d++)e[a+R[d]+b]=f[d]||f[d-2]||f[0];return e}},ua.test(a)||(n.cssHooks[a+b].set=Ga)}),n.fn.extend({css:function(a,b){return J(this,function(a,b,c){var d,e,f={},g=0;if(n.isArray(b)){for(d=wa(a),e=b.length;e>g;g++)f[b[g]]=n.css(a,b[g],!1,d);return f}return void 0!==c?n.style(a,b,c):n.css(a,b)},a,b,arguments.length>1)},show:function(){return Ja(this,!0)},hide:function(){return Ja(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){S(this)?n(this).show():n(this).hide()})}});function Ka(a,b,c,d,e){return new Ka.prototype.init(a,b,c,d,e)}n.Tween=Ka,Ka.prototype={constructor:Ka,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(n.cssNumber[c]?"":"px")},cur:function(){var a=Ka.propHooks[this.prop];return a&&a.get?a.get(this):Ka.propHooks._default.get(this)},run:function(a){var b,c=Ka.propHooks[this.prop];return this.options.duration?this.pos=b=n.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):Ka.propHooks._default.set(this),this}},Ka.prototype.init.prototype=Ka.prototype,Ka.propHooks={_default:{get:function(a){var b;return null==a.elem[a.prop]||a.elem.style&&null!=a.elem.style[a.prop]?(b=n.css(a.elem,a.prop,""),b&&"auto"!==b?b:0):a.elem[a.prop]},set:function(a){n.fx.step[a.prop]?n.fx.step[a.prop](a):a.elem.style&&(null!=a.elem.style[n.cssProps[a.prop]]||n.cssHooks[a.prop])?n.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},Ka.propHooks.scrollTop=Ka.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},n.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},n.fx=Ka.prototype.init,n.fx.step={};var La,Ma,Na=/^(?:toggle|show|hide)$/,Oa=new RegExp("^(?:([+-])=|)("+Q+")([a-z%]*)$","i"),Pa=/queueHooks$/,Qa=[Va],Ra={"*":[function(a,b){var c=this.createTween(a,b),d=c.cur(),e=Oa.exec(b),f=e&&e[3]||(n.cssNumber[a]?"":"px"),g=(n.cssNumber[a]||"px"!==f&&+d)&&Oa.exec(n.css(c.elem,a)),h=1,i=20;if(g&&g[3]!==f){f=f||g[3],e=e||[],g=+d||1;do h=h||".5",g/=h,n.style(c.elem,a,g+f);while(h!==(h=c.cur()/d)&&1!==h&&--i)}return e&&(g=c.start=+g||+d||0,c.unit=f,c.end=e[1]?g+(e[1]+1)*e[2]:+e[2]),c}]};function Sa(){return setTimeout(function(){La=void 0}),La=n.now()}function Ta(a,b){var c,d=0,e={height:a};for(b=b?1:0;4>d;d+=2-b)c=R[d],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function Ua(a,b,c){for(var d,e=(Ra[b]||[]).concat(Ra["*"]),f=0,g=e.length;g>f;f++)if(d=e[f].call(c,b,a))return d}function Va(a,b,c){var d,e,f,g,h,i,j,k,l=this,m={},o=a.style,p=a.nodeType&&S(a),q=L.get(a,"fxshow");c.queue||(h=n._queueHooks(a,"fx"),null==h.unqueued&&(h.unqueued=0,i=h.empty.fire,h.empty.fire=function(){h.unqueued||i()}),h.unqueued++,l.always(function(){l.always(function(){h.unqueued--,n.queue(a,"fx").length||h.empty.fire()})})),1===a.nodeType&&("height"in b||"width"in b)&&(c.overflow=[o.overflow,o.overflowX,o.overflowY],j=n.css(a,"display"),k="none"===j?L.get(a,"olddisplay")||ta(a.nodeName):j,"inline"===k&&"none"===n.css(a,"float")&&(o.display="inline-block")),c.overflow&&(o.overflow="hidden",l.always(function(){o.overflow=c.overflow[0],o.overflowX=c.overflow[1],o.overflowY=c.overflow[2]}));for(d in b)if(e=b[d],Na.exec(e)){if(delete b[d],f=f||"toggle"===e,e===(p?"hide":"show")){if("show"!==e||!q||void 0===q[d])continue;p=!0}m[d]=q&&q[d]||n.style(a,d)}else j=void 0;if(n.isEmptyObject(m))"inline"===("none"===j?ta(a.nodeName):j)&&(o.display=j);else{q?"hidden"in q&&(p=q.hidden):q=L.access(a,"fxshow",{}),f&&(q.hidden=!p),p?n(a).show():l.done(function(){n(a).hide()}),l.done(function(){var b;L.remove(a,"fxshow");for(b in m)n.style(a,b,m[b])});for(d in m)g=Ua(p?q[d]:0,d,l),d in q||(q[d]=g.start,p&&(g.end=g.start,g.start="width"===d||"height"===d?1:0))}}function Wa(a,b){var c,d,e,f,g;for(c in a)if(d=n.camelCase(c),e=b[d],f=a[c],n.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=n.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function Xa(a,b,c){var d,e,f=0,g=Qa.length,h=n.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=La||Sa(),c=Math.max(0,j.startTime+j.duration-b),d=c/j.duration||0,f=1-d,g=0,i=j.tweens.length;i>g;g++)j.tweens[g].run(f);return h.notifyWith(a,[j,f,c]),1>f&&i?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:n.extend({},b),opts:n.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:La||Sa(),duration:c.duration,tweens:[],createTween:function(b,c){var d=n.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(d),d},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;for(e=!0;d>c;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;for(Wa(k,j.opts.specialEasing);g>f;f++)if(d=Qa[f].call(j,a,k,j.opts))return d;return n.map(k,Ua,j),n.isFunction(j.opts.start)&&j.opts.start.call(a,j),n.fx.timer(n.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}n.Animation=n.extend(Xa,{tweener:function(a,b){n.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");for(var c,d=0,e=a.length;e>d;d++)c=a[d],Ra[c]=Ra[c]||[],Ra[c].unshift(b)},prefilter:function(a,b){b?Qa.unshift(a):Qa.push(a)}}),n.speed=function(a,b,c){var d=a&&"object"==typeof a?n.extend({},a):{complete:c||!c&&b||n.isFunction(a)&&a,duration:a,easing:c&&b||b&&!n.isFunction(b)&&b};return d.duration=n.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in n.fx.speeds?n.fx.speeds[d.duration]:n.fx.speeds._default,(null==d.queue||d.queue===!0)&&(d.queue="fx"),d.old=d.complete,d.complete=function(){n.isFunction(d.old)&&d.old.call(this),d.queue&&n.dequeue(this,d.queue)},d},n.fn.extend({fadeTo:function(a,b,c,d){return this.filter(S).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=n.isEmptyObject(a),f=n.speed(b,c,d),g=function(){var b=Xa(this,n.extend({},a),f);(e||L.get(this,"finish"))&&b.stop(!0)};return g.finish=g,e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,b,c){var d=function(a){var b=a.stop;delete a.stop,b(c)};return"string"!=typeof a&&(c=b,b=a,a=void 0),b&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,e=null!=a&&a+"queueHooks",f=n.timers,g=L.get(this);if(e)g[e]&&g[e].stop&&d(g[e]);else for(e in g)g[e]&&g[e].stop&&Pa.test(e)&&d(g[e]);for(e=f.length;e--;)f[e].elem!==this||null!=a&&f[e].queue!==a||(f[e].anim.stop(c),b=!1,f.splice(e,1));(b||!c)&&n.dequeue(this,a)})},finish:function(a){return a!==!1&&(a=a||"fx"),this.each(function(){var b,c=L.get(this),d=c[a+"queue"],e=c[a+"queueHooks"],f=n.timers,g=d?d.length:0;for(c.finish=!0,n.queue(this,a,[]),e&&e.stop&&e.stop.call(this,!0),b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;g>b;b++)d[b]&&d[b].finish&&d[b].finish.call(this);delete c.finish})}}),n.each(["toggle","show","hide"],function(a,b){var c=n.fn[b];n.fn[b]=function(a,d,e){return null==a||"boolean"==typeof a?c.apply(this,arguments):this.animate(Ta(b,!0),a,d,e)}}),n.each({slideDown:Ta("show"),slideUp:Ta("hide"),slideToggle:Ta("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){n.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),n.timers=[],n.fx.tick=function(){var a,b=0,c=n.timers;for(La=n.now();b<c.length;b++)a=c[b],a()||c[b]!==a||c.splice(b--,1);c.length||n.fx.stop(),La=void 0},n.fx.timer=function(a){n.timers.push(a),a()?n.fx.start():n.timers.pop()},n.fx.interval=13,n.fx.start=function(){Ma||(Ma=setInterval(n.fx.tick,n.fx.interval))},n.fx.stop=function(){clearInterval(Ma),Ma=null},n.fx.speeds={slow:600,fast:200,_default:400},n.fn.delay=function(a,b){return a=n.fx?n.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},function(){var a=l.createElement("input"),b=l.createElement("select"),c=b.appendChild(l.createElement("option"));a.type="checkbox",k.checkOn=""!==a.value,k.optSelected=c.selected,b.disabled=!0,k.optDisabled=!c.disabled,a=l.createElement("input"),a.value="t",a.type="radio",k.radioValue="t"===a.value}();var Ya,Za,$a=n.expr.attrHandle;n.fn.extend({attr:function(a,b){return J(this,n.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){n.removeAttr(this,a)})}}),n.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(a&&3!==f&&8!==f&&2!==f)return typeof a.getAttribute===U?n.prop(a,b,c):(1===f&&n.isXMLDoc(a)||(b=b.toLowerCase(),d=n.attrHooks[b]||(n.expr.match.bool.test(b)?Za:Ya)),
4
+ void 0===c?d&&"get"in d&&null!==(e=d.get(a,b))?e:(e=n.find.attr(a,b),null==e?void 0:e):null!==c?d&&"set"in d&&void 0!==(e=d.set(a,c,b))?e:(a.setAttribute(b,c+""),c):void n.removeAttr(a,b))},removeAttr:function(a,b){var c,d,e=0,f=b&&b.match(E);if(f&&1===a.nodeType)while(c=f[e++])d=n.propFix[c]||c,n.expr.match.bool.test(c)&&(a[d]=!1),a.removeAttribute(c)},attrHooks:{type:{set:function(a,b){if(!k.radioValue&&"radio"===b&&n.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}}}),Za={set:function(a,b,c){return b===!1?n.removeAttr(a,c):a.setAttribute(c,c),c}},n.each(n.expr.match.bool.source.match(/\w+/g),function(a,b){var c=$a[b]||n.find.attr;$a[b]=function(a,b,d){var e,f;return d||(f=$a[b],$a[b]=e,e=null!=c(a,b,d)?b.toLowerCase():null,$a[b]=f),e}});var _a=/^(?:input|select|textarea|button)$/i;n.fn.extend({prop:function(a,b){return J(this,n.prop,a,b,arguments.length>1)},removeProp:function(a){return this.each(function(){delete this[n.propFix[a]||a]})}}),n.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(a,b,c){var d,e,f,g=a.nodeType;if(a&&3!==g&&8!==g&&2!==g)return f=1!==g||!n.isXMLDoc(a),f&&(b=n.propFix[b]||b,e=n.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){return a.hasAttribute("tabindex")||_a.test(a.nodeName)||a.href?a.tabIndex:-1}}}}),k.optSelected||(n.propHooks.selected={get:function(a){var b=a.parentNode;return b&&b.parentNode&&b.parentNode.selectedIndex,null}}),n.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){n.propFix[this.toLowerCase()]=this});var ab=/[\t\r\n\f]/g;n.fn.extend({addClass:function(a){var b,c,d,e,f,g,h="string"==typeof a&&a,i=0,j=this.length;if(n.isFunction(a))return this.each(function(b){n(this).addClass(a.call(this,b,this.className))});if(h)for(b=(a||"").match(E)||[];j>i;i++)if(c=this[i],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(ab," "):" ")){f=0;while(e=b[f++])d.indexOf(" "+e+" ")<0&&(d+=e+" ");g=n.trim(d),c.className!==g&&(c.className=g)}return this},removeClass:function(a){var b,c,d,e,f,g,h=0===arguments.length||"string"==typeof a&&a,i=0,j=this.length;if(n.isFunction(a))return this.each(function(b){n(this).removeClass(a.call(this,b,this.className))});if(h)for(b=(a||"").match(E)||[];j>i;i++)if(c=this[i],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(ab," "):"")){f=0;while(e=b[f++])while(d.indexOf(" "+e+" ")>=0)d=d.replace(" "+e+" "," ");g=a?n.trim(d):"",c.className!==g&&(c.className=g)}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):this.each(n.isFunction(a)?function(c){n(this).toggleClass(a.call(this,c,this.className,b),b)}:function(){if("string"===c){var b,d=0,e=n(this),f=a.match(E)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else(c===U||"boolean"===c)&&(this.className&&L.set(this,"__className__",this.className),this.className=this.className||a===!1?"":L.get(this,"__className__")||"")})},hasClass:function(a){for(var b=" "+a+" ",c=0,d=this.length;d>c;c++)if(1===this[c].nodeType&&(" "+this[c].className+" ").replace(ab," ").indexOf(b)>=0)return!0;return!1}});var bb=/\r/g;n.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=n.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,n(this).val()):a,null==e?e="":"number"==typeof e?e+="":n.isArray(e)&&(e=n.map(e,function(a){return null==a?"":a+""})),b=n.valHooks[this.type]||n.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=n.valHooks[e.type]||n.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(bb,""):null==c?"":c)}}}),n.extend({valHooks:{option:{get:function(a){var b=n.find.attr(a,"value");return null!=b?b:n.trim(n.text(a))}},select:{get:function(a){for(var b,c,d=a.options,e=a.selectedIndex,f="select-one"===a.type||0>e,g=f?null:[],h=f?e+1:d.length,i=0>e?h:f?e:0;h>i;i++)if(c=d[i],!(!c.selected&&i!==e||(k.optDisabled?c.disabled:null!==c.getAttribute("disabled"))||c.parentNode.disabled&&n.nodeName(c.parentNode,"optgroup"))){if(b=n(c).val(),f)return b;g.push(b)}return g},set:function(a,b){var c,d,e=a.options,f=n.makeArray(b),g=e.length;while(g--)d=e[g],(d.selected=n.inArray(d.value,f)>=0)&&(c=!0);return c||(a.selectedIndex=-1),f}}}}),n.each(["radio","checkbox"],function(){n.valHooks[this]={set:function(a,b){return n.isArray(b)?a.checked=n.inArray(n(a).val(),b)>=0:void 0}},k.checkOn||(n.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})}),n.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){n.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),n.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)}});var cb=n.now(),db=/\?/;n.parseJSON=function(a){return JSON.parse(a+"")},n.parseXML=function(a){var b,c;if(!a||"string"!=typeof a)return null;try{c=new DOMParser,b=c.parseFromString(a,"text/xml")}catch(d){b=void 0}return(!b||b.getElementsByTagName("parsererror").length)&&n.error("Invalid XML: "+a),b};var eb=/#.*$/,fb=/([?&])_=[^&]*/,gb=/^(.*?):[ \t]*([^\r\n]*)$/gm,hb=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,ib=/^(?:GET|HEAD)$/,jb=/^\/\//,kb=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,lb={},mb={},nb="*/".concat("*"),ob=a.location.href,pb=kb.exec(ob.toLowerCase())||[];function qb(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(E)||[];if(n.isFunction(c))while(d=f[e++])"+"===d[0]?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function rb(a,b,c,d){var e={},f=a===mb;function g(h){var i;return e[h]=!0,n.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}return g(b.dataTypes[0])||!e["*"]&&g("*")}function sb(a,b){var c,d,e=n.ajaxSettings.flatOptions||{};for(c in b)void 0!==b[c]&&((e[c]?a:d||(d={}))[c]=b[c]);return d&&n.extend(!0,a,d),a}function tb(a,b,c){var d,e,f,g,h=a.contents,i=a.dataTypes;while("*"===i[0])i.shift(),void 0===d&&(d=a.mimeType||b.getResponseHeader("Content-Type"));if(d)for(e in h)if(h[e]&&h[e].test(d)){i.unshift(e);break}if(i[0]in c)f=i[0];else{for(e in c){if(!i[0]||a.converters[e+" "+i[0]]){f=e;break}g||(g=e)}f=f||g}return f?(f!==i[0]&&i.unshift(f),c[f]):void 0}function ub(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];f=k.shift();while(f)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}n.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:ob,type:"GET",isLocal:hb.test(pb[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":nb,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":n.parseJSON,"text xml":n.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?sb(sb(a,n.ajaxSettings),b):sb(n.ajaxSettings,a)},ajaxPrefilter:qb(lb),ajaxTransport:qb(mb),ajax:function(a,b){"object"==typeof a&&(b=a,a=void 0),b=b||{};var c,d,e,f,g,h,i,j,k=n.ajaxSetup({},b),l=k.context||k,m=k.context&&(l.nodeType||l.jquery)?n(l):n.event,o=n.Deferred(),p=n.Callbacks("once memory"),q=k.statusCode||{},r={},s={},t=0,u="canceled",v={readyState:0,getResponseHeader:function(a){var b;if(2===t){if(!f){f={};while(b=gb.exec(e))f[b[1].toLowerCase()]=b[2]}b=f[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return 2===t?e:null},setRequestHeader:function(a,b){var c=a.toLowerCase();return t||(a=s[c]=s[c]||a,r[a]=b),this},overrideMimeType:function(a){return t||(k.mimeType=a),this},statusCode:function(a){var b;if(a)if(2>t)for(b in a)q[b]=[q[b],a[b]];else v.always(a[v.status]);return this},abort:function(a){var b=a||u;return c&&c.abort(b),x(0,b),this}};if(o.promise(v).complete=p.add,v.success=v.done,v.error=v.fail,k.url=((a||k.url||ob)+"").replace(eb,"").replace(jb,pb[1]+"//"),k.type=b.method||b.type||k.method||k.type,k.dataTypes=n.trim(k.dataType||"*").toLowerCase().match(E)||[""],null==k.crossDomain&&(h=kb.exec(k.url.toLowerCase()),k.crossDomain=!(!h||h[1]===pb[1]&&h[2]===pb[2]&&(h[3]||("http:"===h[1]?"80":"443"))===(pb[3]||("http:"===pb[1]?"80":"443")))),k.data&&k.processData&&"string"!=typeof k.data&&(k.data=n.param(k.data,k.traditional)),rb(lb,k,b,v),2===t)return v;i=n.event&&k.global,i&&0===n.active++&&n.event.trigger("ajaxStart"),k.type=k.type.toUpperCase(),k.hasContent=!ib.test(k.type),d=k.url,k.hasContent||(k.data&&(d=k.url+=(db.test(d)?"&":"?")+k.data,delete k.data),k.cache===!1&&(k.url=fb.test(d)?d.replace(fb,"$1_="+cb++):d+(db.test(d)?"&":"?")+"_="+cb++)),k.ifModified&&(n.lastModified[d]&&v.setRequestHeader("If-Modified-Since",n.lastModified[d]),n.etag[d]&&v.setRequestHeader("If-None-Match",n.etag[d])),(k.data&&k.hasContent&&k.contentType!==!1||b.contentType)&&v.setRequestHeader("Content-Type",k.contentType),v.setRequestHeader("Accept",k.dataTypes[0]&&k.accepts[k.dataTypes[0]]?k.accepts[k.dataTypes[0]]+("*"!==k.dataTypes[0]?", "+nb+"; q=0.01":""):k.accepts["*"]);for(j in k.headers)v.setRequestHeader(j,k.headers[j]);if(k.beforeSend&&(k.beforeSend.call(l,v,k)===!1||2===t))return v.abort();u="abort";for(j in{success:1,error:1,complete:1})v[j](k[j]);if(c=rb(mb,k,b,v)){v.readyState=1,i&&m.trigger("ajaxSend",[v,k]),k.async&&k.timeout>0&&(g=setTimeout(function(){v.abort("timeout")},k.timeout));try{t=1,c.send(r,x)}catch(w){if(!(2>t))throw w;x(-1,w)}}else x(-1,"No Transport");function x(a,b,f,h){var j,r,s,u,w,x=b;2!==t&&(t=2,g&&clearTimeout(g),c=void 0,e=h||"",v.readyState=a>0?4:0,j=a>=200&&300>a||304===a,f&&(u=tb(k,v,f)),u=ub(k,u,v,j),j?(k.ifModified&&(w=v.getResponseHeader("Last-Modified"),w&&(n.lastModified[d]=w),w=v.getResponseHeader("etag"),w&&(n.etag[d]=w)),204===a||"HEAD"===k.type?x="nocontent":304===a?x="notmodified":(x=u.state,r=u.data,s=u.error,j=!s)):(s=x,(a||!x)&&(x="error",0>a&&(a=0))),v.status=a,v.statusText=(b||x)+"",j?o.resolveWith(l,[r,x,v]):o.rejectWith(l,[v,x,s]),v.statusCode(q),q=void 0,i&&m.trigger(j?"ajaxSuccess":"ajaxError",[v,k,j?r:s]),p.fireWith(l,[v,x]),i&&(m.trigger("ajaxComplete",[v,k]),--n.active||n.event.trigger("ajaxStop")))}return v},getJSON:function(a,b,c){return n.get(a,b,c,"json")},getScript:function(a,b){return n.get(a,void 0,b,"script")}}),n.each(["get","post"],function(a,b){n[b]=function(a,c,d,e){return n.isFunction(c)&&(e=e||d,d=c,c=void 0),n.ajax({url:a,type:b,dataType:e,data:c,success:d})}}),n._evalUrl=function(a){return n.ajax({url:a,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},n.fn.extend({wrapAll:function(a){var b;return n.isFunction(a)?this.each(function(b){n(this).wrapAll(a.call(this,b))}):(this[0]&&(b=n(a,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstElementChild)a=a.firstElementChild;return a}).append(this)),this)},wrapInner:function(a){return this.each(n.isFunction(a)?function(b){n(this).wrapInner(a.call(this,b))}:function(){var b=n(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=n.isFunction(a);return this.each(function(c){n(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){n.nodeName(this,"body")||n(this).replaceWith(this.childNodes)}).end()}}),n.expr.filters.hidden=function(a){return a.offsetWidth<=0&&a.offsetHeight<=0},n.expr.filters.visible=function(a){return!n.expr.filters.hidden(a)};var vb=/%20/g,wb=/\[\]$/,xb=/\r?\n/g,yb=/^(?:submit|button|image|reset|file)$/i,zb=/^(?:input|select|textarea|keygen)/i;function Ab(a,b,c,d){var e;if(n.isArray(b))n.each(b,function(b,e){c||wb.test(a)?d(a,e):Ab(a+"["+("object"==typeof e?b:"")+"]",e,c,d)});else if(c||"object"!==n.type(b))d(a,b);else for(e in b)Ab(a+"["+e+"]",b[e],c,d)}n.param=function(a,b){var c,d=[],e=function(a,b){b=n.isFunction(b)?b():null==b?"":b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};if(void 0===b&&(b=n.ajaxSettings&&n.ajaxSettings.traditional),n.isArray(a)||a.jquery&&!n.isPlainObject(a))n.each(a,function(){e(this.name,this.value)});else for(c in a)Ab(c,a[c],b,e);return d.join("&").replace(vb,"+")},n.fn.extend({serialize:function(){return n.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=n.prop(this,"elements");return a?n.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!n(this).is(":disabled")&&zb.test(this.nodeName)&&!yb.test(a)&&(this.checked||!T.test(a))}).map(function(a,b){var c=n(this).val();return null==c?null:n.isArray(c)?n.map(c,function(a){return{name:b.name,value:a.replace(xb,"\r\n")}}):{name:b.name,value:c.replace(xb,"\r\n")}}).get()}}),n.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(a){}};var Bb=0,Cb={},Db={0:200,1223:204},Eb=n.ajaxSettings.xhr();a.attachEvent&&a.attachEvent("onunload",function(){for(var a in Cb)Cb[a]()}),k.cors=!!Eb&&"withCredentials"in Eb,k.ajax=Eb=!!Eb,n.ajaxTransport(function(a){var b;return k.cors||Eb&&!a.crossDomain?{send:function(c,d){var e,f=a.xhr(),g=++Bb;if(f.open(a.type,a.url,a.async,a.username,a.password),a.xhrFields)for(e in a.xhrFields)f[e]=a.xhrFields[e];a.mimeType&&f.overrideMimeType&&f.overrideMimeType(a.mimeType),a.crossDomain||c["X-Requested-With"]||(c["X-Requested-With"]="XMLHttpRequest");for(e in c)f.setRequestHeader(e,c[e]);b=function(a){return function(){b&&(delete Cb[g],b=f.onload=f.onerror=null,"abort"===a?f.abort():"error"===a?d(f.status,f.statusText):d(Db[f.status]||f.status,f.statusText,"string"==typeof f.responseText?{text:f.responseText}:void 0,f.getAllResponseHeaders()))}},f.onload=b(),f.onerror=b("error"),b=Cb[g]=b("abort");try{f.send(a.hasContent&&a.data||null)}catch(h){if(b)throw h}},abort:function(){b&&b()}}:void 0}),n.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(a){return n.globalEval(a),a}}}),n.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET")}),n.ajaxTransport("script",function(a){if(a.crossDomain){var b,c;return{send:function(d,e){b=n("<script>").prop({async:!0,charset:a.scriptCharset,src:a.url}).on("load error",c=function(a){b.remove(),c=null,a&&e("error"===a.type?404:200,a.type)}),l.head.appendChild(b[0])},abort:function(){c&&c()}}}});var Fb=[],Gb=/(=)\?(?=&|$)|\?\?/;n.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=Fb.pop()||n.expando+"_"+cb++;return this[a]=!0,a}}),n.ajaxPrefilter("json jsonp",function(b,c,d){var e,f,g,h=b.jsonp!==!1&&(Gb.test(b.url)?"url":"string"==typeof b.data&&!(b.contentType||"").indexOf("application/x-www-form-urlencoded")&&Gb.test(b.data)&&"data");return h||"jsonp"===b.dataTypes[0]?(e=b.jsonpCallback=n.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,h?b[h]=b[h].replace(Gb,"$1"+e):b.jsonp!==!1&&(b.url+=(db.test(b.url)?"&":"?")+b.jsonp+"="+e),b.converters["script json"]=function(){return g||n.error(e+" was not called"),g[0]},b.dataTypes[0]="json",f=a[e],a[e]=function(){g=arguments},d.always(function(){a[e]=f,b[e]&&(b.jsonpCallback=c.jsonpCallback,Fb.push(e)),g&&n.isFunction(f)&&f(g[0]),g=f=void 0}),"script"):void 0}),n.parseHTML=function(a,b,c){if(!a||"string"!=typeof a)return null;"boolean"==typeof b&&(c=b,b=!1),b=b||l;var d=v.exec(a),e=!c&&[];return d?[b.createElement(d[1])]:(d=n.buildFragment([a],b,e),e&&e.length&&n(e).remove(),n.merge([],d.childNodes))};var Hb=n.fn.load;n.fn.load=function(a,b,c){if("string"!=typeof a&&Hb)return Hb.apply(this,arguments);var d,e,f,g=this,h=a.indexOf(" ");return h>=0&&(d=n.trim(a.slice(h)),a=a.slice(0,h)),n.isFunction(b)?(c=b,b=void 0):b&&"object"==typeof b&&(e="POST"),g.length>0&&n.ajax({url:a,type:e,dataType:"html",data:b}).done(function(a){f=arguments,g.html(d?n("<div>").append(n.parseHTML(a)).find(d):a)}).complete(c&&function(a,b){g.each(c,f||[a.responseText,b,a])}),this},n.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){n.fn[b]=function(a){return this.on(b,a)}}),n.expr.filters.animated=function(a){return n.grep(n.timers,function(b){return a===b.elem}).length};var Ib=a.document.documentElement;function Jb(a){return n.isWindow(a)?a:9===a.nodeType&&a.defaultView}n.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=n.css(a,"position"),l=n(a),m={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=n.css(a,"top"),i=n.css(a,"left"),j=("absolute"===k||"fixed"===k)&&(f+i).indexOf("auto")>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),n.isFunction(b)&&(b=b.call(a,c,h)),null!=b.top&&(m.top=b.top-h.top+g),null!=b.left&&(m.left=b.left-h.left+e),"using"in b?b.using.call(a,m):l.css(m)}},n.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){n.offset.setOffset(this,a,b)});var b,c,d=this[0],e={top:0,left:0},f=d&&d.ownerDocument;if(f)return b=f.documentElement,n.contains(b,d)?(typeof d.getBoundingClientRect!==U&&(e=d.getBoundingClientRect()),c=Jb(f),{top:e.top+c.pageYOffset-b.clientTop,left:e.left+c.pageXOffset-b.clientLeft}):e},position:function(){if(this[0]){var a,b,c=this[0],d={top:0,left:0};return"fixed"===n.css(c,"position")?b=c.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),n.nodeName(a[0],"html")||(d=a.offset()),d.top+=n.css(a[0],"borderTopWidth",!0),d.left+=n.css(a[0],"borderLeftWidth",!0)),{top:b.top-d.top-n.css(c,"marginTop",!0),left:b.left-d.left-n.css(c,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||Ib;while(a&&!n.nodeName(a,"html")&&"static"===n.css(a,"position"))a=a.offsetParent;return a||Ib})}}),n.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(b,c){var d="pageYOffset"===c;n.fn[b]=function(e){return J(this,function(b,e,f){var g=Jb(b);return void 0===f?g?g[c]:b[e]:void(g?g.scrollTo(d?a.pageXOffset:f,d?f:a.pageYOffset):b[e]=f)},b,e,arguments.length,null)}}),n.each(["top","left"],function(a,b){n.cssHooks[b]=ya(k.pixelPosition,function(a,c){return c?(c=xa(a,b),va.test(c)?n(a).position()[b]+"px":c):void 0})}),n.each({Height:"height",Width:"width"},function(a,b){n.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){n.fn[d]=function(d,e){var f=arguments.length&&(c||"boolean"!=typeof d),g=c||(d===!0||e===!0?"margin":"border");return J(this,function(b,c,d){var e;return n.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(e=b.documentElement,Math.max(b.body["scroll"+a],e["scroll"+a],b.body["offset"+a],e["offset"+a],e["client"+a])):void 0===d?n.css(b,c,g):n.style(b,c,d,g)},b,f?d:void 0,f,null)}})}),n.fn.size=function(){return this.length},n.fn.andSelf=n.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return n});var Kb=a.jQuery,Lb=a.$;return n.noConflict=function(b){return a.$===n&&(a.$=Lb),b&&a.jQuery===n&&(a.jQuery=Kb),n},typeof b===U&&(a.jQuery=a.$=n),n});
js/admin.js DELETED
@@ -1,53 +0,0 @@
1
- jQuery(document).ready(function(){
2
- jQuery('.draft').hide();
3
- jQuery("#cf_type").val(jQuery(".btn.active").data("value"));
4
- jQuery(".cf_header .btn").click(function(){
5
- jQuery(".cf_header .btn").removeClass().addClass('btn');
6
- jQuery(this).addClass("active");
7
- jQuery("#cf_type").val(jQuery(this).data("value"));
8
- switch(jQuery(this).data("value")){
9
- case "p":
10
- jQuery(this).addClass("btn-selected");
11
-
12
- jQuery(".cf_uses_api").show();
13
- jQuery(".cf_no_api").hide();
14
- jQuery(".cf_url").show();
15
- jQuery('.pageSettings').removeClass('active btn-selected');
16
- break;
17
- case "hp":
18
- jQuery(this).addClass("btn-selected");
19
- jQuery(".cf_url").hide();
20
- jQuery(".cf_uses_api").show();
21
- jQuery(".cf_no_api").hide();
22
- jQuery('.pageSettings').removeClass('active btn-selected');
23
- break;
24
- case "np":
25
- jQuery(this).addClass("btn-selected");
26
- jQuery(".cf_url").hide();
27
- jQuery(".cf_no_api").hide();
28
- jQuery(".cf_uses_api").show();
29
- jQuery('.pageSettings').removeClass('active btn-selected');
30
- break;
31
-
32
- }
33
- })
34
- jQuery('.pageSettings').click(function() {
35
- jQuery(this).toggleClass("active btn-selected");
36
- jQuery(".cf_url").toggle();
37
- jQuery(".cf_uses_api").toggle();
38
- jQuery(".cf_no_api").toggle();
39
- });
40
- jQuery("#publish").click(function(e){
41
- if(jQuery("#cf_slug").val()=="" && jQuery(".btn.active").data("value")=="p")
42
- {
43
- e.preventDefault();
44
- jQuery("#cf_slug").css("border", "1px solid red");
45
- jQuery("#cf_invalid_slug").show();
46
- }
47
- else
48
- {
49
- jQuery("#cf_slug").css("border", "1px solid #cccccc");
50
- jQuery("#cf_invalid_slug").hide();
51
- }
52
- })
53
- })
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
js/hidedraft.js DELETED
@@ -1,3 +0,0 @@
1
- jQuery(document).ready(function(){
2
- jQuery('.draft').hide();
3
- });
 
 
 
post_shortcode.php ADDED
@@ -0,0 +1,501 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <style>.hndle {display: none !important}</style>
2
+ <link href="<?php echo plugins_url( 'css/admin.css', __FILE__ ); ?>" rel="stylesheet">
3
+ <link href="<?php echo plugins_url( 'css/font-awesome.css', __FILE__ ); ?>" rel="stylesheet">
4
+ <?php
5
+ if(!get_option( 'clickfunnels_api_email')) {
6
+ update_option( 'clickfunnels_api_email', '');
7
+ }
8
+ if(!get_option( 'clickfunnels_api_auth')) {
9
+ update_option( 'clickfunnels_api_auth', '');
10
+ }
11
+ if(!get_option( 'clickfunnels_siteURL')) {
12
+ update_option( 'clickfunnels_siteURL', '');
13
+ }
14
+ if(!get_option( 'clickfunnels_404Redirect')) {
15
+ update_option( 'clickfunnels_404Redirect', '');
16
+ }
17
+ if(!get_option( 'clickfunnels_agency_group_tag')) {
18
+ update_option( 'clickfunnels_agency_group_tag', '');
19
+ }
20
+ if(!get_option( 'clickfunnels_agency_api_details')) {
21
+ update_option( 'clickfunnels_agency_api_details', '');
22
+ }
23
+ if(!get_option( 'clickfunnels_agency_reset_data')) {
24
+ update_option( 'clickfunnels_agency_reset_data', '');
25
+ }
26
+ if(!get_option( 'clickfunnels_agency_hide_settings')) {
27
+ update_option( 'clickfunnels_agency_hide_settings', '');
28
+ }
29
+ $cf_thefunnel = get_post_meta( $_GET['post'], "cf_thefunnel", true );
30
+ $cf_thepage = get_post_meta( $_GET['post'], "cf_thepage", true );
31
+ $cf_iframe_check = get_post_meta( $_GET['post'], "cf_iframe_check", true );
32
+ $cf_iframe_url = get_post_meta( $_GET['post'], "cf_iframe_url", true );
33
+ $cf_seo_title = get_post_meta( $_GET['post'], "cf_seo_title", true );
34
+ $cf_seo_desc = get_post_meta( $_GET['post'], "cf_seo_desc", true );
35
+ $cf_seo_image = get_post_meta( $_GET['post'], "cf_seo_image", true );
36
+ $cf_page_url = get_post_meta( $_GET['post'], "cf_page_url", true );
37
+ $cf_favicon = get_post_meta( $_GET['post'], "cf_favicon", true );
38
+ $cf_author = get_post_meta( $_GET['post'], "cf_author", true );
39
+ $cf_keywords = get_post_meta( $_GET['post'], "cf_keywords", true );
40
+ $cf_head_tracking = get_post_meta( $_GET['post'], "cf_head_tracking", true );
41
+ $cf_footer_tracking = get_post_meta( $_GET['post'], "cf_footer_tracking", true );
42
+ $cf_wptracking_code = get_post_meta( $_GET['post'], "cf_wptracking_code", true );
43
+ if ( !isset( $cf_page['page_id'] ) || $cf_page['page_id'] < 10 ) {
44
+ $thepage = explode( "{#}", $cf_page );
45
+ $savedData = $cf_page;
46
+ }
47
+ else {
48
+ $thepage = explode( "{#}", $cf_page['page_id'] );
49
+ $savedData = $cf_page['page_id'];
50
+ }
51
+ $cf_options = get_option( "cf_options" );
52
+ ?>
53
+ <script type="text/javascript">
54
+ jQuery(document).ready(function(){
55
+ jQuery('.draft').hide();
56
+ console.log("%cClickFunnels WordPress Plugin", "background: #0166AE; color: white; font-size: 23px");
57
+ console.log("%cEditing anything inside the console is for developers only. Do not paste in any code given to you by anyone. Use with caution. Visit for support: https://support.clickfunnels.com/", "color: #888; font-size: 16px");
58
+ var allfunnels = 'https://api.clickfunnels.com/funnels.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
59
+
60
+ jQuery.getJSON(allfunnels, function(data) {
61
+ jQuery.each(data, function() {
62
+ // Check for Agency
63
+ if ("<?php echo get_option( 'clickfunnels_agency_group_tag'); ?>" != 'off') {
64
+ if (this.group_tag) {
65
+ group_tag = this.group_tag.replace(/(['"])/g, "{replace}");
66
+ if ("<?php echo get_option( 'clickfunnels_agency_group_tag'); ?>" == group_tag) {
67
+ jQuery('#cf_thefunnel').append('<option value="' + this.id + '">' + this.name + '</option>');
68
+ jQuery('#cf_thefunnel_clickpop').append('<option value="' + this.id + '">' + this.name + '</option>');
69
+ jQuery('#cf_thefunnel_clickoptin').append('<option value="' + this.id + '">' + this.name + '</option>');
70
+ }
71
+ } else {
72
+ if ("<?php echo get_option( 'clickfunnels_agency_group_tag'); ?>" == 'ungrouped') {
73
+ jQuery('#cf_thefunnel').append('<option value="' + this.id + '">' + this.name + '</option>');
74
+ jQuery('#cf_thefunnel_clickpop').append('<option value="' + this.id + '">' + this.name + '</option>');
75
+ jQuery('#cf_thefunnel_clickoptin').append('<option value="' + this.id + '">' + this.name + '</option>');
76
+ }
77
+ }
78
+ }
79
+ // Show All Funnels
80
+ else {
81
+ jQuery('#cf_thefunnel').append('<option value="' + this.id + '">' + this.name + '</option>');
82
+ jQuery('#cf_thefunnel_clickpop').append('<option value="' + this.id + '">' + this.name + '</option>');
83
+ jQuery('#cf_thefunnel_clickoptin').append('<option value="' + this.id + '">' + this.name + '</option>');
84
+ }
85
+ });
86
+ }).fail(function() {
87
+ jQuery('.badAPI').show();
88
+ });
89
+ // ****************************************************************************************************************************
90
+ // Blog Post
91
+ jQuery( '#cf_thefunnel' ).change(function() {
92
+ jQuery('.choosePageBox').fadeIn();
93
+ var thefunnel = jQuery(this).val();
94
+ var totalPages = 0;
95
+ var specificFunnel = 'https://api.clickfunnels.com/funnels/'+thefunnel+'.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
96
+ jQuery('#cf_thepage').find('option').remove().end();
97
+ jQuery.getJSON(specificFunnel, function(data) {
98
+ // Populate ClickFunnels Page
99
+ jQuery.each(data.funnel_steps, function() {
100
+ if( this.wp_friendly == true && this.pages != '' ) {
101
+ jQuery('#cf_thepage').append('<option value="' + this.pages[0].published_url+'">'+ this.name +'</option>');
102
+ }
103
+ jQuery('#cf_shortcode').val('[clickfunnels_embed height="650" url="'+this.pages[0].published_url+'"]');
104
+ jQuery('#cf_shortcode').select();
105
+ totalPages += 1;
106
+ });
107
+ }).done(function() {
108
+ jQuery('#loading').fadeOut();
109
+ jQuery('#cf_thepage').trigger('change');
110
+ if (totalPages == 0) {
111
+ jQuery('#cf_thepage').hide();
112
+ jQuery('#noPageWarning').fadeIn();
113
+ }
114
+ else {
115
+ jQuery('#noPageWarning').hide();
116
+ jQuery('#cf_thepage').fadeIn();
117
+ }
118
+ })
119
+ .fail(function() {
120
+ jQuery('#loading').fadeOut();
121
+ })
122
+ .always(function() {
123
+ jQuery('#loading').fadeOut();
124
+ });
125
+ });
126
+ jQuery( '#cf_thepage' ).change(function() {
127
+ jQuery('#loading').fadeOut();
128
+ height = jQuery('#cf_height').val();
129
+ theURL = jQuery('#cf_thepage').val();
130
+ scrollCheck = jQuery('#cf_scrolling').val();
131
+ jQuery('#cf_shortcode').val('[clickfunnels_embed height="'+height+'" url="'+theURL+'" scroll="'+scrollCheck+'"]');
132
+ jQuery('#cf_shortcode').select();
133
+ });
134
+ jQuery( '.cf_embedchange' ).change(function() {
135
+ jQuery('#loading').fadeOut();
136
+ height = jQuery('#cf_height').val();
137
+ theURL = jQuery('#cf_thepage').val();
138
+ scrollCheck = jQuery('#cf_scrolling').val();
139
+ jQuery('#cf_shortcode').val('[clickfunnels_embed height="'+height+'" url="'+theURL+'" scroll="'+scrollCheck+'"]');
140
+ jQuery('#cf_shortcode').select();
141
+ });
142
+ // ****************************************************************************************************************************
143
+ // ClickOptin
144
+ jQuery( '#cf_thefunnel_clickoptin' ).change(function() {
145
+ jQuery('.choosePageBox_clickoptin').fadeIn();
146
+ var thefunnel = jQuery(this).val();
147
+ var totalPages = 0;
148
+ var specificFunnel = 'https://api.clickfunnels.com/funnels/'+thefunnel+'.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
149
+ jQuery('#cf_thepage_clickoptin').find('option').remove().end();
150
+ jQuery.getJSON(specificFunnel, function(data) {
151
+ jQuery.each(data.funnel_steps, function() {
152
+ if( this.wp_friendly == true && this.pages != '' ) {
153
+ var parts = this.pages[0].published_url.split('.');
154
+ var subdomain = parts.shift().replace("https://", "");
155
+ jQuery('#cf_thepage_clickoptin').append('<option value="' + this.pages[0].key+'{#}'+subdomain+'">'+ this.name +'</option>');
156
+ }
157
+ placeholder = jQuery('#cf_placeholder').val();
158
+ button_text = jQuery('#cf_button_text').val();
159
+ button_color = jQuery('#cf_button_color').val();
160
+ redirect = jQuery('#cf_redirect').val();
161
+ input_icon = jQuery('#cf_input_icon').val();
162
+ jQuery('#cf_shortcode_clickoptin').val('[clickfunnels_clickoptin id="'+this.pages[0].key+'" subdomain="'+subdomain+'" placeholder="'+placeholder+'" button_text="'+button_text+'" button_color="'+button_color+'" redirect="'+redirect+'" input_icon="'+input_icon+'"]');
163
+ jQuery('#cf_shortcode_clickoptin').select();
164
+ totalPages += 1;
165
+ });
166
+ }).done(function() {
167
+ jQuery('#loading').fadeOut();
168
+ jQuery('#cf_thepage_clickoptin').trigger('change');
169
+ if (totalPages == 0) {
170
+ jQuery('#cf_thepage_clickoptin').hide();
171
+ jQuery('#noPageWarning_clickoptin').fadeIn();
172
+ }
173
+ else {
174
+ jQuery('#noPageWarning_clickoptin').hide();
175
+ jQuery('#cf_thepage_clickoptin').fadeIn();
176
+ }
177
+ })
178
+ .fail(function() {
179
+ jQuery('#loading').fadeOut();
180
+ })
181
+ .always(function() {
182
+ jQuery('#loading').fadeOut();
183
+ });
184
+ });
185
+ jQuery( '#cf_thepage_clickoptin' ).change(function() {
186
+ jQuery('#loading').fadeOut();
187
+ data = jQuery(this).val().split('{#}');
188
+ var parts = data[1].split('.');
189
+ var subdomain = parts.shift().replace("https://", "");
190
+ placeholder = jQuery('#cf_placeholder').val();
191
+ button_text = jQuery('#cf_button_text').val();
192
+ button_color = jQuery('#cf_button_color').val();
193
+ redirect = jQuery('#cf_redirect').val();
194
+ input_icon = jQuery('#cf_input_icon').val();
195
+ jQuery('#cf_shortcode_clickoptin').val('[clickfunnels_clickoptin id="'+data[0]+'" subdomain="'+subdomain+'" placeholder="'+placeholder+'" button_text="'+button_text+'" button_color="'+button_color+'" redirect="'+redirect+'" input_icon="'+input_icon+'"]');
196
+ jQuery('#cf_shortcode_clickoptin').select();
197
+ });
198
+ jQuery( '.cf_optinchange' ).change(function() {
199
+ jQuery('#loading').fadeOut();
200
+ data = jQuery('#cf_thepage_clickoptin').val().split('{#}');
201
+ var parts = data[1].split('.');
202
+ var subdomain = parts.shift().replace("https://", "");
203
+ placeholder = jQuery('#cf_placeholder').val();
204
+ button_text = jQuery('#cf_button_text').val();
205
+ button_color = jQuery('#cf_button_color').val();
206
+ redirect = jQuery('#cf_redirect').val();
207
+ input_icon = jQuery('#cf_input_icon').val();
208
+ jQuery('#cf_shortcode_clickoptin').val('[clickfunnels_clickoptin id="'+data[0]+'" subdomain="'+subdomain+'" placeholder="'+placeholder+'" button_text="'+button_text+'" button_color="'+button_color+'" redirect="'+redirect+'" input_icon="'+input_icon+'"]');
209
+ });
210
+ // ****************************************************************************************************************************
211
+ // ClickPops
212
+ jQuery( '#cf_thefunnel_clickpop' ).change(function() {
213
+ jQuery('#loading').fadeIn();
214
+ jQuery('.choosePageBox_clickpop').fadeIn();
215
+ var thefunnel = jQuery(this).val();
216
+ var totalPages = 0;
217
+ var specificFunnel = 'https://api.clickfunnels.com/funnels/'+thefunnel+'.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
218
+ jQuery('#cf_thepage_clickpop').find('option').remove().end();
219
+ jQuery.getJSON(specificFunnel, function(data) {
220
+ jQuery.each(data.funnel_steps, function() {
221
+ if( this.wp_friendly == true && this.pages != '' ) {
222
+ var parts = this.pages[0].published_url.split('.');
223
+ var subdomain = parts.shift().replace("https://", "");
224
+ jQuery('#cf_thepage_clickpop').append('<option value="' + this.pages[0].key+'{#}'+subdomain+'">'+ this.name +'</option>');
225
+ jQuery('#cf_shortcode_clickpop').val('[clickfunnels_clickpop id="'+this.pages[0].key+'" subdomain="'+subdomain+'"]Your Content[/clickfunnels_clickpop]');
226
+ jQuery('#cf_shortcode_clickpop').select();
227
+ totalPages += 1;
228
+ }
229
+ });
230
+ }).done(function() {
231
+ jQuery('#loading').fadeOut();
232
+ jQuery('#cf_thepage_clickpop').trigger('change');
233
+ if (totalPages == 0) {
234
+ jQuery('#cf_thepage_clickpop').hide();
235
+ jQuery('#noPageWarning_clickpop').fadeIn();
236
+ }
237
+ else {
238
+ jQuery('#noPageWarning_clickpop').hide();
239
+ jQuery('#cf_thepage_clickpop').fadeIn();
240
+ }
241
+ })
242
+ .fail(function() {
243
+ jQuery('#loading').fadeOut();
244
+ })
245
+ .always(function() {
246
+ jQuery('#loading').fadeOut();
247
+ });
248
+ });
249
+ jQuery( '#cf_thepage_clickpop' ).change(function() {
250
+ jQuery('#loading').fadeOut();
251
+ showOnExit = '';
252
+ if(jQuery('#cf_exit').val() == 'true') {
253
+ showOnExit = 'exit="true" ';
254
+ }
255
+ showDelay = '';
256
+ if(jQuery('#cf_delay').val() != '') {
257
+ showDelay = 'delay="'+jQuery('#cf_delay').val()+'" ';
258
+ }
259
+ data = jQuery(this).val().split('{#}');
260
+ var parts = data[1].split('.');
261
+ var subdomain = parts.shift().replace("https://", "");
262
+ jQuery('#cf_shortcode_clickpop').val('[clickfunnels_clickpop '+showOnExit+showDelay+'id="'+data[0]+'" subdomain="'+subdomain+'"]Your Content[/clickfunnels_clickpop]');
263
+ jQuery('#cf_shortcode_clickpop').select();
264
+ });
265
+ jQuery( '#cf_exit' ).change(function() {
266
+ jQuery('#loading').fadeOut();
267
+ showOnExit = '';
268
+ if(jQuery(this).val() == 'true') {
269
+ showOnExit = 'exit="true" ';
270
+ }
271
+ showDelay = '';
272
+ if(jQuery('#cf_delay').val() != '') {
273
+ showDelay = 'delay="'+jQuery('#cf_delay').val()+'" ';
274
+ }
275
+ data = jQuery('#cf_thepage_clickpop').val().split('{#}');
276
+ var parts = data[1].split('.');
277
+ var subdomain = parts.shift().replace("https://", "");
278
+ jQuery('#cf_shortcode_clickpop').val('[clickfunnels_clickpop '+showOnExit+showDelay+'id="'+data[0]+'" subdomain="'+subdomain+'"]Your Content[/clickfunnels_clickpop]');
279
+ jQuery('#cf_shortcode_clickpop').select();
280
+ });
281
+ jQuery( '#cf_delay' ).change(function() {
282
+ jQuery('#loading').fadeOut();
283
+ showOnExit = '';
284
+ if(jQuery('#cf_exit').val() == 'true') {
285
+ showOnExit = 'exit="true" ';
286
+ }
287
+ showDelay = '';
288
+ if(jQuery(this).val() != '') {
289
+ showDelay = 'delay="'+jQuery('#cf_delay').val()+'" ';
290
+ }
291
+ data = jQuery('#cf_thepage_clickpop').val().split('{#}');
292
+ var parts = data[1].split('.');
293
+ var subdomain = parts.shift().replace("https://", "");
294
+ jQuery('#cf_shortcode_clickpop').val('[clickfunnels_clickpop '+showOnExit+showDelay+'id="'+data[0]+'" subdomain="'+subdomain+'"]Your Content[/clickfunnels_clickpop]');
295
+ jQuery('#cf_shortcode_clickpop').select();
296
+ });
297
+ // ****************************************************************************************************************************
298
+ // Tabs
299
+ jQuery('.cftablink').click(function() {
300
+ if (jQuery(this).hasClass('disabledLink')=== true) {
301
+ }
302
+ else {
303
+ jQuery('.cftabs').hide();
304
+ jQuery('.cftablink').removeClass('active');
305
+ jQuery(this).addClass('active');
306
+ var tab = jQuery(this).attr('data-tab');
307
+ jQuery('#'+tab).show();
308
+ }
309
+ });
310
+ });
311
+ </script>
312
+ <?php
313
+ if ( get_option( 'clickfunnels_api_email' ) == "" || get_option( 'clickfunnels_api_auth' ) == "" ) {
314
+ }
315
+ else {
316
+ if ( $cf_page != "" && is_readable('https://api.clickfunnels.com/funnels.json?email='.get_option( 'clickfunnels_api_email' ).'&auth_token='.get_option( 'clickfunnels_api_auth'))) {
317
+ $response = wp_remote_get( 'https://api.clickfunnels.com/funnels/'.$cf_thefunnel.'.json?email='.get_option( 'clickfunnels_api_email' ).'&auth_token='.get_option( 'clickfunnels_api_auth' ));
318
+ if( is_array($response) ) {
319
+ $json = $response['body']; // use the content
320
+ }
321
+ $cf_funnels_pages = json_decode( $json );
322
+ }
323
+ }
324
+ ?>
325
+ <div id="message" class="badAPI error notice" style="display: none; width: 733px;padding: 10px 12px;font-weight: bold"><i class="fa fa-times" style="margin-right: 5px;"></i> Failed API Connection with ClickFunnels. Check <a href="edit.php?post_type=clickfunnels&page=cf_api&error=compatibility">Settings > Compatibility Check</a> for details.</div>
326
+ <div class="api postbox" style="width: 780px;margin-top: 20px;">
327
+ <!-- Header -->
328
+ <?php include('header.php'); ?>
329
+ <div class="apiSubHeader" style="padding: 18px 16px;">
330
+ <h2 style="font-size: 1.5em"><i class="fa fa-code" style="margin-right: 5px"></i> Shortcode Generator</h2>
331
+ </div>
332
+ <!-- Sidebar Navigation -->
333
+ <div class="bootstrap-wp">
334
+ <div id="app_sidebar">
335
+ <a href="#" data-tab="tab1" class="cftablink <?php if(!$_GET['error']) { echo 'active';} ?>">Embed Code</a>
336
+ <a href="#" data-tab="tab2" class="cftablink">ClickPop</a>
337
+ <a href="#" data-tab="tab3" class="cftablink">ClickForms</a>
338
+ </div>
339
+ <div id="app_main">
340
+ <div id="tab4" class="cftabs" style="display: none">
341
+ <h2>Shortcode Settings</h2>
342
+ </div>
343
+ <!-- ClickOptin -->
344
+ <div id="tab3" class="cftabs" style="display: none">
345
+ <h2>Collect Leads with ClickForm</h2>
346
+ <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> Generate a email optin form with a simple Email Input and Submit Button on any of your blog posts or pages. Select a funnel and customize settings to your needs. The thank you page will be the next page in your funnel after the one you choose below.</p>
347
+ <div class="control-group cf_uses_api clearfix" style="">
348
+ <label class="control-label" for="cf_thefunnel_clickoptin"> Choose Funnel </label>
349
+ <div class="controls">
350
+ <select class="input-xlarge" id="cf_thefunnel_clickoptin" style="width: 450px !important;margin-left: 26px !important;" name="cf_thefunnel_backup">
351
+ <option value="0">Select a Funnel</option>
352
+ </select>
353
+ </div>
354
+ </div>
355
+ <div class="control-group choosePageBox_clickoptin clearfix" style="display: none">
356
+ <label class="control-label" for="cf_thepage_clickoptin"> Choose Page <i class="fa fa-spinner fa-spin" id="loading"></i></label>
357
+ <div class="controls">
358
+ <select class="input-xlarge " id="cf_thepage_clickoptin" style="width: 450px !important;margin-left: 26px !important;" name="cf_thepage">
359
+ <option value="0">No Pages Found</option>
360
+ </select>
361
+ </div>
362
+ <div id="noPageWarning_clickoptin" style="font-size: 11px; margin-left: 26px !important; margin-top: -13px;float: left;padding-top: 10px;display: none;width: 100%; clear: both">
363
+ <strong style="font-size: 13px;display: block;">No compatible pages found. </strong>
364
+ <em style="display: block">Membership pages and order pages are not available through plugin.</em>
365
+ </div>
366
+ </div>
367
+ <div class="control-group choosePageBox_clickoptin cf_uses_api clearfix" style="display: none">
368
+ <label class="control-label" for="" style="width: 450px !important;"> Placeholder Text</label>
369
+ <div class="controls">
370
+ <input type="text" class="input-xlarge cf_optinchange" id="cf_placeholder" style="width: 450px !important;margin-left: 26px" value="" placeholder="Text to display for placeholder on email input..." >
371
+ </div>
372
+ </div>
373
+ <div class="control-group choosePageBox_clickoptin cf_uses_api clearfix" style="display: none">
374
+ <label class="control-label" for="" style="width: 450px !important;"> Button Text</label>
375
+ <div class="controls">
376
+ <input type="text" class="input-xlarge cf_optinchange" id="cf_button_text" style="width: 450px !important;margin-left: 26px" value="" placeholder="Text to display on subscribe button..." >
377
+ </div>
378
+ </div>
379
+ <div class="control-group choosePageBox_clickoptin cf_uses_api clearfix" style="display: none">
380
+ <label class="control-label" for=""> Button Color</label>
381
+ <select class="input-xlarge cf_optinchange" id="cf_button_color" style="width: 450px !important;margin-left: 26px" name="">
382
+ <option value="blue">Blue</option>
383
+ <option value="red">Red</option>
384
+ <option value="grey">Grey</option>
385
+ <option value="green">Green</option>
386
+ <option value="black">Black</option>
387
+ </select>
388
+ </div>
389
+ <div class="control-group choosePageBox_clickoptin cf_uses_api clearfix" style="display: none">
390
+ <label class="control-label" for=""> Redirect on Submit</label>
391
+ <select class="input-xlarge cf_optinchange" id="cf_redirect" style="width: 450px !important;margin-left: 26px" name="">
392
+ <option value="">Submit Form in Same Page</option>
393
+ <option value="newtab">Submit Form in New Tab</option>
394
+ </select>
395
+ </div>
396
+ <div class="control-group choosePageBox_clickoptin cf_uses_api clearfix" style="display: none">
397
+ <label class="control-label" for=""> Input Icon</label>
398
+ <select class="input-xlarge cf_optinchange" id="cf_input_icon" style="width: 450px !important;margin-left: 26px" name="">
399
+ <option value="show">Show Envelope Icon</option>
400
+ <option value="emailiimage">Hide Envelope Icon</option>
401
+ </select>
402
+ </div>
403
+ <div class="control-group choosePageBox_clickoptin" style="display: none">
404
+ <label class="control-label" for="cf_iframe_check"> ClickOptin Shortcode </label>
405
+ <div class="controls">
406
+ <textarea class="input-xlarge " id="cf_shortcode_clickoptin" style="width: 450px !important;height: 80px;margin-left: 26px" placeholder="Shortcode embed code here..."></textarea>
407
+ </div>
408
+ </div>
409
+ </div>
410
+ <!-- ClickPop Shortcode -->
411
+ <div id="tab2" class="cftabs" style="display: none">
412
+ <h2>Show ClickPop Link or Automated Popup</h2>
413
+ <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> Copy and paste the shortcode onto any blog post you want the ClickPop link to appear on. If you have show on exit you can leave the content blank. You can also surround the shortcode with any content in your blog such as images, everything inside the [] code will be a ClickPop link.</p>
414
+ <div class="control-group cf_uses_api clearfix" style="">
415
+ <label class="control-label" for="cf_thefunnel_clickpop"> Choose Funnel </label>
416
+ <div class="controls">
417
+ <select class="input-xlarge" id="cf_thefunnel_clickpop" style="width: 450px !important;margin-left: 26px !important;" name="cf_thefunnel_backup">
418
+ <option value="0">Select a Funnel</option>
419
+ </select>
420
+ </div>
421
+ </div>
422
+ <div class="control-group choosePageBox_clickpop clearfix" style="display: none">
423
+ <label class="control-label" for="cf_thepage_clickpop"> Choose Page <i class="fa fa-spinner fa-spin" id="loading"></i></label>
424
+ <div class="controls">
425
+ <select class="input-xlarge" id="cf_thepage_clickpop" style="width: 450px !important;margin-left: 26px !important;" name="cf_thepage">
426
+ <option value="0">No Pages Found</option>
427
+ </select>
428
+ </div>
429
+ <div id="noPageWarning_clickpop" style="font-size: 11px; margin-left: 26px !important; margin-top: -13px;float: left;padding-top: 10px;display: none;width: 100%; clear: both">
430
+ <strong style="font-size: 13px;display: block;">No compatible pages found. </strong>
431
+ <em style="display: block">Membership pages and order pages are not available through plugin.</em>
432
+ </div>
433
+ </div>
434
+ <div class="control-group choosePageBox_clickpop cf_uses_api clearfix" style="display: none">
435
+ <label class="control-label" for="cf_thefunnel"> Show on Mouse Exit <small style="margin-right: 32px">(optional)</small></label>
436
+ <select class="input-xlarge" id="cf_exit" style="width: 450px !important;margin-left: 26px" name="">
437
+ <option value="false">Disabled</option>
438
+ <option value="true">Enable Popup on Mouse Leave</option>
439
+ </select>
440
+ </div>
441
+ <div class="control-group choosePageBox_clickpop cf_uses_api clearfix" style="display: none">
442
+ <label class="control-label" for="cf_thefunnel" style="width: 450px !important;"> Timed Popup Delay <small style="margin-right: 0;">(optional)</small> </label>
443
+ <div class="controls">
444
+ <input type="text" class="input-xlarge " id="cf_delay" style="width: 450px !important;margin-left: 26px" value="" placeholder="Number of seconds for automatic popup." >
445
+ </div>
446
+ </div>
447
+ <div class="control-group choosePageBox_clickpop" style="display: none">
448
+ <label class="control-label" for="cf_iframe_check_clickpop"> ClickPop Shortcode </label>
449
+ <div class="controls">
450
+ <textarea class="input-xlarge " id="cf_shortcode_clickpop" style="height: 80px;width: 450px !important;margin-left: 26px" placeholder="Shortcode embed code here..."></textarea>
451
+ </div>
452
+ </div>
453
+ </div>
454
+ <!-- Blog Post Shortcode -->
455
+ <div id="tab1" class="cftabs">
456
+ <h2>Embed ClickFunnels Page on a Blog Post</h2>
457
+ <p class="infoHelp"><i class="fa fa-question-circle" style="margin-right: 3px"></i> Copy and paste the shortcode onto any blog post you want the ClickFunnels page to appear on. <strong>Adjust the height number to make sure you page is fully displayed.</strong> Pages such as Order Pages and Membership pages are excluded.</p>
458
+ <div class="control-group cf_uses_api clearfix" style="">
459
+ <label class="control-label" for="cf_thefunnel"> Choose Funnel </label>
460
+ <div class="controls">
461
+ <select class="input-xlarge" id="cf_thefunnel" style="width: 450px !important;margin-left: 26px" name="cf_thefunnel_backup">
462
+ <option value="0">Select a Funnel</option>
463
+ </select>
464
+ </div>
465
+ </div>
466
+ <div class="control-group choosePageBox clearfix" style="<?php if ( empty( $_GET['action'] ) ) { echo "display: none"; } ?>">
467
+ <label class="control-label" for="cf_thepage"> Choose Page <i class="fa fa-spinner fa-spin" id="loading"></i></label>
468
+ <div class="controls">
469
+ <select class="input-xlarge" id="cf_thepage" style="width: 450px !important;margin-left: 26px" name="cf_thepage">
470
+ <option value="0">No Pages Found</option>
471
+ </select>
472
+ </div>
473
+ <div id="noPageWarning" style="font-size: 11px; margin-left: 26px !important; margin-top: -13px;float: left;padding-top: 10px;display: none;width: 100%; clear: both">
474
+ <strong style="font-size: 13px;display: block;">No compatible pages found. </strong>
475
+ <em style="display: block">Membership pages and order pages are not available through plugin.</em>
476
+ </div>
477
+ </div>
478
+ <div class="control-group choosePageBox clearfix" style="display: none">
479
+ <label class="control-label" for="cf_height" style="width: 450px !important;"> Height of Iframe</label>
480
+ <div class="controls">
481
+ <input type="text" class="input-xlarge cf_embedchange" id="cf_height" style="width: 450px !important;margin-left: 26px" placeholder="Number for height in px." value="650" >
482
+ </div>
483
+ </div>
484
+ <div class="control-group choosePageBox clearfix" style="display: none">
485
+ <label class="control-label" for="cf_scrolling"> Allow Page Scrolling <small style="margin-right: 32px">(optional)</small></label>
486
+ <select class="input-xlarge cf_embedchange" id="cf_scrolling" style="width: 450px !important;margin-left: 26px" name="">
487
+ <option value="yes">Enable Scrolling</option>
488
+ <option value="no">Disable Scrolling</option>
489
+ </select>
490
+ </div>
491
+ <div class="control-group choosePageBox" style="display: none">
492
+ <label class="control-label" for="cf_iframe_check" > Blog Embed Shortcode </label>
493
+ <div class="controls">
494
+ <textarea class="input-xlarge " id="cf_shortcode" style="width: 450px !important;height: 80px;margin-left: 26px" placeholder="Shortcode embed code here..."></textarea>
495
+ </div>
496
+ </div>
497
+ </div>
498
+ </div>
499
+ </div>
500
+ <?php include('footer.php'); ?>
501
+ </div>
readme.md ADDED
@@ -0,0 +1,178 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ClickFunnels WordPress Plugin
2
+ ====================
3
+
4
+ Contributors: Wynter Jones
5
+ Plugin URI: http://clickfunnels.com/
6
+ Author URI: https://profiles.wordpress.org/clickfunnelscom
7
+ Tags: landing pages, clickfunnels, funnels, sales funnel, optin, internet marketing
8
+ Requires at least: 3.0
9
+ Tested up to: 4.3.1
10
+ Stable tag: 1.1.2
11
+
12
+ Connect your ClickFunnels pages to your WordPress blog. Create custom pages, set as homepage or 404 page with easy setup.
13
+
14
+ Description
15
+ -----------
16
+
17
+ Connect to your ClickFunnels account to show your funnel pages within your blog without any coding. Create clean URLs to your pages with ease and much more.
18
+
19
+ First, you install the plugin in your WordPress dashboard. (check Installation
20
+ for more info) and connect to ClickFunnels using the *Authentication Key*
21
+ provided for you.
22
+
23
+ You can now connect unlimited pages using custom URLs to truly get the most out of your ClickFunnels account.
24
+
25
+ **With the ClickFunnels plugin you can...**
26
+
27
+ * Create custom URLs for your pages
28
+ * Set any page as homepage
29
+ * Set any page as 404 page
30
+ * Edit / Manage your pages
31
+
32
+ Want to show an order page of one of your Webinar funnels? Easy, just select the
33
+ funnel and choose the order page and create a custom URL.
34
+
35
+ Example: "http://yourblog.com/ordernow" can be connected to your order page from any funnel within your ClickFunnels account.
36
+
37
+ **Don't have a ClickFunnels account?** You can sign up now to transform the way you run your business online. The WordPress plugin is free to all members.
38
+
39
+ **Need more help?** Check out the installation, FAQ and screenshots for more information or check out the Support Desk.
40
+
41
+ <https://support.clickfunnels.com/>
42
+
43
+ ClickFunnels.com is the premier service for building complete funnels for any marketing campaign. High converting email optin funnels or complex membership funnels.
44
+
45
+ The power is in your hands with the **Editor** allows you to design and change your pages in your web browser. Choose from a huge array of templates and edit on the fly.
46
+
47
+ *Complete with hosting and free WordPress plugin.*
48
+
49
+ **Sign up for ClickFunnels Now:**
50
+ <https://clickfunnels.com/>
51
+
52
+
53
+ Installation
54
+ ------------
55
+
56
+ **Turn off Minify for JavaScript when using CloudFlare on Your Blog **
57
+
58
+ **Easy Installation**: In your WordPress dashboard go to Plugins > Add New and search for "clickfunnels" and you will be able to quickly install the latest version of the plugin.
59
+
60
+ *Updates will be ready automatically and you will be notified in your dashboard.*
61
+
62
+ **Manual Installation**: Download the ClickFunnels WordPress plugin .zip file. Extract the zip file and just drop the contents in the wp-content/plugins/ directory of your WordPress installation via a FTP and then activate the Plugin from Plugins page.
63
+
64
+ **How to Setup Authenication Key**
65
+
66
+ Login to your ClickFunnels account and go to your Settings to get the
67
+ authentication key, which is unique to your account.
68
+
69
+ You will also need the email address you signed up with. From there you can use the email and key to connect the plugin to your account.
70
+
71
+ See more in Screenshots or visit the Support Desk.
72
+
73
+ <https://support.clickfunnels.com/>
74
+
75
+ == Frequently Asked Questions ==
76
+
77
+ Here are some of the most frequently asked questions:
78
+
79
+ = Where do I get Authentication Key? =
80
+
81
+ To access your Authentication Token go to your ClickFunnels Members area and choose My Account > Settings and you will find your unique authenication key.
82
+
83
+ = What is a Custom URL? =
84
+
85
+ A custom URL is the web address that will point to your ClickFunnels page. For example, "www.mydomain.com/signup" could point to any of your ClickFunnels pages such as an opt-in page.
86
+
87
+ = How do I Set Homepage or 404 Page? =
88
+
89
+ To set a page to show as the home page just select any of your ClickFunnels pages (within the plugin) and select "Home Page" and hit save. You can only have one page set to Home page or 404 page at a time.
90
+
91
+ = Do I Need a ClickFunnels Account? =
92
+
93
+ **Yes.** A clickfunnels account is required to use this plugin. If you are not already a member you can sign up for your account and transform the way you run your online business.
94
+
95
+ = Special Characters Displaying Incorrectly? =
96
+
97
+ The error for displaying special characters incorrectly has been fixed for all newly created pages.
98
+
99
+ For older pages you will need to open the page in the editor and hit save. Or you can re-select your page in the WordPress plugin. Screenshot here: http://cl.ly/0n2H0v220e1U
100
+
101
+ By re-selecting the page it will ping the server which should refresh your page.
102
+
103
+ Changelog
104
+ ---------
105
+
106
+ Stay current with the latest version of the plugin:
107
+
108
+ ### Version 2.0
109
+
110
+ ( change log coming soon )
111
+
112
+ ### Version 1.1.2
113
+
114
+ * Error caused by array improperly formatted.
115
+ (to update meta tag for URL when sharing on Facebook, please save and update old pages to get proper WordPress page url)
116
+
117
+ ### Version 1.1.1
118
+
119
+ * Added WordPress URL to social meta data (facebook open graph)
120
+ * Fix split tests and cookies
121
+ * New function for curl, file_get_contents fallback
122
+
123
+ ### Version 1.1.0
124
+
125
+ * Added mini preview of chosen page
126
+ * Added 'publish' status for for ClickFunnels pages
127
+ * Added meta data status check
128
+ * Added ClickFunnels URL and editable meta data
129
+ * Enable split tests & custom code option
130
+
131
+
132
+ ### Version 1.0.8
133
+
134
+ * Fixed bug for 'no template selected' causing certain pages not show
135
+
136
+ ### Version 1.0.7
137
+
138
+ * Excluded only pages with no template chosen
139
+ * Better page management screen
140
+ * Small copy changes.
141
+ * Now display the chosen Funnel with Page name
142
+
143
+ ### Version 1.0.6
144
+
145
+ * Auto save if page id = null (fixes some blank page issues)
146
+ * 404 No Page Found Error fixed to 200 OK
147
+
148
+ ### Version 1.0.5
149
+
150
+ * Fixed funnels showing no pages (caused by pages with template selected)
151
+
152
+ ### Version: 1.0.4
153
+
154
+ * Added CURL as a backup to flie_get_contents
155
+ * Added developer testing for easier error reporting
156
+
157
+ ### Version: 1.0.3
158
+
159
+ * Fix Blank Homepage (caused by template_include)
160
+ * Special Character Fix (see FAQ)
161
+
162
+ ### Version: 1.0.2
163
+
164
+ * Ping Page to Fix "Blank Pages"
165
+ * Excluded Special Pages (OTO/Order)
166
+ * Notification for Empty Funnels
167
+
168
+ ### Version: 1.0.1
169
+
170
+ * Meta UTF-8
171
+
172
+ ### Version: 1.0.0
173
+
174
+ * Launch Plugin to Repository
175
+ * Added Support FAQ Tab
176
+ * API Connection
177
+ * Set as Home / 404 Page
178
+ * Edit Funnel / Launch Editor
readme.txt CHANGED
@@ -49,6 +49,8 @@ The power is in your hands with the **Editor** allows you to design and change y
49
 
50
  == Installation ==
51
 
 
 
52
  **Easy Installation**: In your WordPress dashboard go to Plugins > Add New and search for "clickfunnels" and you will be able to quickly install the latest version of the plugin.
53
 
54
  *Updates will be ready automatically and you will be notified in your dashboard.*
@@ -98,6 +100,10 @@ By re-selecting the page it will ping the server which should refresh your page.
98
 
99
  Stay current with the latest version of the plugin:
100
 
 
 
 
 
101
  = Version 1.1.2 =
102
 
103
  * Error caused by array improperly formatted.
49
 
50
  == Installation ==
51
 
52
+ **Turn off Minify for JavaScript when using CloudFlare on Your Blog **
53
+
54
  **Easy Installation**: In your WordPress dashboard go to Plugins > Add New and search for "clickfunnels" and you will be able to quickly install the latest version of the plugin.
55
 
56
  *Updates will be ready automatically and you will be notified in your dashboard.*
100
 
101
  Stay current with the latest version of the plugin:
102
 
103
+ = Version 2.0 =
104
+
105
+ ( change log coming soon )
106
+
107
  = Version 1.1.2 =
108
 
109
  * Error caused by array improperly formatted.
reset_data.php ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <link href="<?php echo plugins_url( 'css/font-awesome.css', __FILE__ ); ?>" rel="stylesheet">
2
+ <link href="<?php echo plugins_url( 'css/admin.css', __FILE__ ); ?>" rel="stylesheet">
3
+ <span style="margin: 15px 0;width: 650px" class="compatCheck compatwarning">
4
+ Deleting ClickFunnels Pages &amp; API Settings...
5
+ <strong><i class="fa fa-spinner fa-spin"></i> Please wait just a moment.</strong>
6
+ </span>
7
+ <div id="progress" style="width:670px;margin-bottom: 10px;height: 10px;border-bottom:4px solid #D04738;background: #E54F3F;"></div>
8
+ <?php echo 'Deleting <strong>'.wp_count_posts( 'clickfunnels' )->publish.'</strong> pages...'; ?>
9
+ <div id="information" style="width"></div>
10
+ <?php
11
+ $args = array(
12
+ 'numberposts' => 50,
13
+ 'post_type' =>'clickfunnels'
14
+ );
15
+ $posts = get_posts( $args );
16
+ $total = wp_count_posts( 'clickfunnels' )->publish;
17
+ $current = 0;
18
+ if (is_array($posts)) {
19
+ foreach ($posts as $post) {
20
+ wp_delete_post( $post->ID, true);
21
+ $i += 1;
22
+ $percent = intval($i/$total * 100)."%";
23
+ echo '<script language="javascript">
24
+ document.getElementById("progress").innerHTML="<div style=\"width:'.$percent.';background-color:#1C69A9;border-bottom: 4px solid #135184;height: 10px\">&nbsp;</div>";
25
+ document.getElementById("information").innerHTML="<strong>'.$i.'</strong> pages(s) deleted.";
26
+ </script>';
27
+ echo str_repeat(' ',1024*64);
28
+ flush();
29
+ sleep(1);
30
+ echo '<script language="javascript">document.getElementById("information").innerHTML="<strong>Success</strong> all ClickFunnels pages removed..."</script>';
31
+ flush();
32
+ sleep(1);
33
+ echo 'Removed Plugin Settings...';
34
+ update_option( 'clickfunnels_api_email', '' );
35
+ update_option( 'clickfunnels_api_auth', '' );
36
+ update_option( 'clickfunnels_siteURL', '' );
37
+ update_option( 'clickfunnels_404Redirect', '' );
38
+ update_option( 'clickfunnels_agency_group_tag', '' );
39
+ update_option( 'clickfunnels_agency_api_details', '' );
40
+ update_option( 'clickfunnels_agency_reset_data', '' );
41
+ update_option( 'clickfunnels_agency_hide_settings', '' );
42
+ echo '<br />Redirecting to Plugins Page...';
43
+ echo '<script language="javascript">setTimeout(function(){window.location = "edit.php?post_type=clickfunnels&page=cf_api";}, 1800);</script>';
44
+ }
45
+ }
46
+ ?>
support.php DELETED
@@ -1,280 +0,0 @@
1
- <style>
2
- .api {
3
- width: 780px;
4
- margin-top: 20px;
5
- border-radius: 5px;
6
- }
7
- .api form {
8
- padding: 0;
9
- }
10
- .api form h3 {
11
- padding: 0;
12
- padding-bottom: 10px;
13
- margin: 0;
14
- font-size: 17px;
15
- margin-top: 10px;
16
- color: #39464E;
17
- font-weight: 400;
18
- }
19
- .api form input {
20
- width: 100%;
21
- font-size: 15px;
22
- padding: 7px;
23
- margin-bottom: 17px;
24
- }
25
- .apiHeader {
26
- background: #39464E ;
27
- border-bottom: 3px solid rgba(0,0,0,0.25);
28
- padding: 10px;
29
- padding-top: 15px;
30
- border-top-right-radius: 5px;
31
- border-top-left-radius: 5px;
32
- }
33
- .apiHeader img {
34
- float: left;
35
- margin-left: 10px;
36
- }
37
- .apiHeader a {
38
- float: right;
39
- display: block;
40
- margin-top: 8px !important;
41
- margin-right: 1px !important;
42
- margin-top: 7px !important;
43
- }
44
- .apiSubHeader {
45
- background-color: #0166AE;
46
- border-bottom: 3px solid rgba(0,0,0,0.25);
47
- color: #fff;
48
- padding: 20px;
49
- }
50
- .apiSubHeader h2 {
51
- margin: 0 !important;
52
- padding: 0 !important;
53
- color: #fff;
54
- font-weight: bold;
55
- font-size: 17px;
56
- text-shadow: 1px 1px 0 #0367AE;
57
- }
58
- .leftSide {
59
- width: 380px;
60
- float: left;
61
- }
62
- .leftSide h3 {
63
- font-weight: 900;
64
- font-size: 13px !important;
65
- }
66
- .rightSide {
67
- width: 280px;
68
- float: left;
69
- padding: 20px;
70
- opacity: .7;
71
- padding-left: 30px;
72
- }
73
- .rightSide p {
74
- font-size: 12px;
75
- line-height: 18px;
76
- }
77
- #errorMessage {
78
- clear: both;
79
- padding: 8px;
80
- background: #fafafa;
81
- border: 2px solid #ddd;
82
- }
83
- #errorMessage.success {
84
- border: 2px solid #49BB85;
85
- background: #49BB85;
86
- color: #fff;
87
- }
88
- #errorMessage.error {
89
- border: 2px solid #B72D1C;
90
- background: #B72D1C;
91
- color: #fff;
92
- }
93
- .successGreen {
94
- color: #49BB85;
95
- }
96
- .errorRed {
97
- color: #B72D1C;
98
- }
99
- #errorMessage.badAPI {
100
- border: 2px solid #B72D1C;
101
- background: #B72D1C;
102
- color: #fff;
103
- display: none;
104
- }
105
- .copyrightInfo {
106
- width: 780px;
107
- padding: 0 10px;
108
- float: left;
109
- color: #999;
110
- font-size: 11px;
111
- }
112
- .copyrightInfo p {
113
- font-size: 11px;
114
- }
115
- .apiHeader a {
116
- float: right;
117
- display: block;
118
- color: #fff;
119
- font-size: 13px;
120
- text-decoration: none;
121
- margin-right: 4px !important;
122
- background-color: rgba(0, 0, 0, .3);
123
- border: 2px solid #2b2e30;
124
- color: #afbbc8 !important;
125
- font-weight: 700;
126
- margin-top: 0px !important;
127
- -webkit-border-radius: 4px;
128
- -moz-border-radius: 4px;
129
- border-radius: 4px;
130
- padding: 7px;
131
- padding-left: 12px;
132
- padding-right: 12px;
133
- text-transform: uppercase;
134
- text-decoration: none;
135
- font-size: 14px;
136
- margin-top: 5px !important;
137
- }
138
- .apiHeader a:hover {
139
- border: 2px solid #1D81C8;
140
- background-color: rgba(0, 0, 0, .6);
141
- color: #fff !important;
142
- }
143
- #side-sortables {
144
- display: none !important;
145
- }
146
-
147
- #apiFooter {
148
- background: #F1F1F1;
149
-
150
- padding: 10px 14px;
151
- border-bottom-left-radius: 5px;
152
- border-bottom-right-radius: 5px;
153
- }
154
- #apiFooter a:hover {
155
- text-decoration: none;
156
- }
157
- #apiSettings {
158
- padding: 10px 25px;
159
- padding-top: 20px;
160
- border: 10px solid #F1F1F1;
161
- }
162
- #faq h4 {
163
- font-size: 15px;
164
- margin-bottom: 0;
165
- font-weight: 500;
166
- color: #3E474F;
167
- }
168
- #faq h4 i {
169
- margin-right: 5px;
170
- }
171
- #faq p {
172
- font-size: 13px;
173
- line-height: 18px;
174
- display: block;
175
- padding-left: 23px;
176
- padding-bottom: 20px;
177
- opacity: .7
178
- }
179
-
180
- #apiFooter {
181
- background: #fafafa;
182
- border-radius: 4px;
183
- border: 1px solid #ddd;
184
- margin-right: 120px;
185
- border-bottom: 2px solid #ddd;
186
- padding: 10px 10px;
187
- margin: 0 auto;
188
- width: 735px;
189
- }
190
- #apiFooter a:hover {
191
- text-decoration: none;
192
- }
193
-
194
- #apiSettings {
195
- padding: 10px 25px;
196
- padding-top: 20px;
197
- border: 10px solid #fff;
198
- }
199
- .faqInner {
200
- background: #fff;
201
- padding: 10px;
202
- padding-bottom: 0;
203
- border: 1px solid #fafafa;
204
- }
205
- .faqInner:nth-child(even) {
206
- background: #fafafa;
207
- border: 1px solid #eee;
208
- }
209
- </style>
210
- <link href="<?php echo plugins_url( 'css/font-awesome.css', __FILE__ ); ?>" rel="stylesheet">
211
- <div class="api postbox">
212
- <div class="apiHeader">
213
- <img src="<?php echo plugins_url( 'logo.png', __FILE__ ); ?>" alt="">
214
- <a href="https://www.clickfunnels.com/users/sign_in" target="_blank" class=""><i class="fa fa-bars"></i> My Account</a>
215
- <br clear="all">
216
- </div>
217
- <div class="apiSubHeader">
218
- <h2>ClickFunnels Plugin Support</h2>
219
- </div>
220
- <div id="apiSettings">
221
- <h2 style="margin-top: 10px"><strong>Frequently Asked Questions</strong></h2>
222
- <p style="opacity: .7">Quickly find out about all the features to get the most out of using WordPress to show your ClickFunnels pages. You can also go to the <a href="https://support.clickfunnels.com/support/home" target="_blank">knowledge base</a> to learn more about ClickFunnels.</p>
223
- <hr style="border: none; border-bottom: 1px solid #ECEEEF; margin: 20px 0">
224
- <div id="faq">
225
- <div class="faqInner">
226
- <h4><i class="fa fa-question-circle"></i> How and where do I get Authentication Key?</h4>
227
- <p>To access your Authentication Token go to your ClickFunnels Members area and choose <a href="https://app.clickfunnels.com/users/edit" target="_blank">My Account > Settings</a> and you will find your <em>unique</em> authenication key. </p>
228
- </div>
229
- <div class="faqInner">
230
- <h4><i class="fa fa-question-circle"></i> Why Do I Enable Split Tests and Custom Code?</h4>
231
- <p>By enabling the split tests and custom code dropdown you are showing your page inside of an iframe to work with custom code such as EasyVideoPlayer or display split tests inside your page. </p>
232
- </div>
233
- <div class="faqInner">
234
- <h4><i class="fa fa-question-circle"></i> What Pages Work with Wordpress Plugin?</h4>
235
- <p>Optin Pages, Sales Pages, Webinar Pages, Thank You Pages and Miscellaenus Pages Work. </p>
236
- </div>
237
- <div class="faqInner">
238
- <h4><i class="fa fa-question-circle"></i> What Pages <strong>Do Not</strong> Work with Wordpress Plugin?</h4>
239
- <p>Pages containing sensitive data such as Membership Pages or Order Pages.</p>
240
- </div>
241
- <div class="faqInner">
242
- <h4><i class="fa fa-question-circle"></i> What is a Custom URL?</h4>
243
- <p>A custom URL is the web address that will point to your ClickFunnels page. For example, "www.mydomain.com/signup" could point to any of your ClickFunnels pages such as an opt-in page.</p>
244
- </div>
245
- <div class="faqInner">
246
- <h4><i class="fa fa-question-circle"></i> How do I Set Homepage or 404 Page?</h4>
247
- <p>To set a page to show as the home page just select any of your ClickFunnels pages (within the plugin) and select "Home Page" and hit save. <em>You can only have one page set to Home page or 404 page at a time.</em></p>
248
- </div>
249
- <div class="faqInner">
250
- <h4><i class="fa fa-question-circle"></i> Do I Need a ClickFunnels Account?</h4>
251
- <p><strong>Yes.</strong> A clickfunnels account is required to use this plugin. If you are not already a member you can <a href="https://clickfunnels.com/" target="_blank">sign up for your account</a> and transform the way you run your online business.</p>
252
- </div>
253
- </div>
254
- </div>
255
- <div id="apiFooter">
256
- <a class="button button-secondary" style="float: left; margin-right: 10px" type="submit" href="<?php echo admin_url( 'edit.php?post_type=clickfunnels' );?>"><i class="fa fa-file-text-o"></i> Pages</a>
257
- <a class="button button-secondary" style="float: left; margin-right: 10px" type="submit" href="<?php echo admin_url( 'post-new.php?post_type=clickfunnels' );?>"><i class="fa fa-plus-circle"></i> Add New</a>
258
- <a href="edit.php?post_type=clickfunnels&page=cf_api" class="button button-default" style="float: left"><i class="fa fa-cog"></i> Settings</a>
259
- <a href="https://support.clickfunnels.com/support/home" target="_blank" class="button button-primary" style="float: right"><i class="fa fa-life-ring"></i> Visit Knowledge Base</a>
260
- <br clear="both" />
261
-
262
- </div>
263
- <br clear="both" />
264
- <?php include('footer.php'); ?>
265
- </div>
266
-
267
- <script>
268
- (function($) {
269
- setTimeout(function() {
270
- $('#errorMessage').fadeOut();
271
- }, 1500);
272
- var specificFunnel = 'https://api.clickfunnels.com/funnels.json?email=<?php echo get_option( "clickfunnels_api_email" ); ?>&auth_token=<?php echo get_option( "clickfunnels_api_auth" ); ?>';
273
- $.getJSON(specificFunnel, function(data) {
274
- $('.checkSuccess').html('<i class="fa fa-check successGreen"></i>');
275
- }).fail(function(jqXHR) {
276
- $('.checkSuccess').html('<i class="fa fa-times errorRed"></i>');
277
- $('.badAPI').show();
278
- });
279
- })(jQuery);
280
- </script>