Changeset 1587657
- Timestamp:
- 02/02/2017 08:33:13 PM (9 years ago)
- Location:
- chatwee/trunk
- Files:
-
- 4 edited
-
chatwee-admin.php (modified) (6 diffs)
-
chatwee.php (modified) (3 diffs)
-
lib/ChatweeV2_SDK/Chatwee/SsoManager.php (modified) (2 diffs)
-
lib/ChatweeV2_SDK/Chatwee/SsoUser.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
chatwee/trunk/chatwee-admin.php
r1564521 r1587657 11 11 save_sso_settings(); 12 12 } 13 } 13 if(isSet($_POST["chatwee_display_properties_submit"])) { 14 save_display_properties_settings(); 15 } 16 17 } 18 19 20 function save_display_properties_settings() { 21 $chatwee_settings = get_option("chatwee_settings"); 22 23 $chatwee_settings["pages_and_posts_to_display"] = $_POST["pages_and_posts_to_display"]; 24 $chatwee_settings["categories_to_display"] = $_POST["categories_to_display"]; 25 26 update_option("chatwee_settings", $chatwee_settings); 27 } 28 29 14 30 15 31 function save_general_settings() { … … 19 35 $chatwee_settings["chatwee_script"] = $_POST["chatwee_script"]; 20 36 $chatwee_settings["disable_offline_users"] = isSet($_POST["disable_offline_users"]) ? true : false; 21 $chatwee_settings["display_properties"] = $_POST["display_properties"];22 37 23 38 update_option("chatwee_settings", $chatwee_settings); … … 89 104 <div class="nav-tab-wrapper"> 90 105 <label class="nav-tab tab-switch" data-tab-key="general">General settings</label> 106 <label class="nav-tab tab-switch" data-tab-key="display_properties">Display properties</label> 91 107 <label class="nav-tab tab-switch" data-tab-key="sso">Single Sign-On</label> 92 108 <label class="nav-tab tab-switch" data-tab-key="moderators">Moderators</label> … … 128 144 </tr> 129 145 <tr> 130 <th> 131 <label>Display on the following page categories</label> 146 <th></th> 147 <td> 148 <input type="submit" name="chatwee_general_submit" class="button-primary" value="Save changes" /> 149 </td> 150 </tr> 151 </table> 152 </form> 153 </div> 154 </div> 155 156 <div class="chatwee-options-section" data-tab-key="display_properties"> 157 <div class="chatwee-options-section-content"> 158 <form method="post"> 159 <p class="chatwee-option-info">This section allows you to determine the page categories, where you want to display the chat. You may also choose to display the chat on particular pages and posts.</p> 160 <table class="form-table chatwee-options-table"> 161 <tr> 162 <th> 163 <label>Display on the following page categories:</label> 132 164 </th> 133 165 <td> 134 166 <div class="chatwee-option-wrapper"> 135 <input type="checkbox" id="display_ properties_main_page" name="display_properties[]" value="main_page" <?php if (is_array($chatwee_settings["display_properties"]) && in_array("main_page", $chatwee_settings["display_properties"])) echo "checked"; ?> />136 <label for="display_ properties_main_page">Main page</label>167 <input type="checkbox" id="display_categories_main_page" name="categories_to_display[]" value="main_page" <?php if (is_array($chatwee_settings["categories_to_display"]) && in_array("main_page", $chatwee_settings["categories_to_display"])) echo "checked"; ?> /> 168 <label for="display_categories_main_page">Main page</label> 137 169 </div> 138 170 <div class="chatwee-option-wrapper"> 139 <input type="checkbox" id="display_ properties_search_page" name="display_properties[]" value="search_page" <?php if (is_array($chatwee_settings["display_properties"]) && in_array("search_page", $chatwee_settings["display_properties"])) echo "checked"; ?> />140 <label for="display_ properties_search_page">Search page</label>171 <input type="checkbox" id="display_categories_search_page" name="categories_to_display[]" value="search_page" <?php if (is_array($chatwee_settings["categories_to_display"]) && in_array("search_page", $chatwee_settings["categories_to_display"])) echo "checked"; ?> /> 172 <label for="display_categories_search_page">Search page</label> 141 173 </div> 142 174 <div class="chatwee-option-wrapper"> 143 <input type="checkbox" id="display_ properties_archive_page" name="display_properties[]" value="archive_page" <?php if (is_array($chatwee_settings["display_properties"]) && in_array("archive_page", $chatwee_settings["display_properties"])) echo "checked"; ?> />144 <label for="display_ properties_archive_page">Archive page</label>175 <input type="checkbox" id="display_categories_archive_page" name="categories_to_display[]" value="archive_page" <?php if (is_array($chatwee_settings["categories_to_display"]) && in_array("archive_page", $chatwee_settings["categories_to_display"])) echo "checked"; ?> /> 176 <label for="display_categories_archive_page">Archive page</label> 145 177 </div> 146 178 <div class="chatwee-option-wrapper"> 147 <input type="checkbox" id="display_ properties_post_page" name="display_properties[]" value="post_page" <?php if (is_array($chatwee_settings["display_properties"]) && in_array("post_page", $chatwee_settings["display_properties"])) echo "checked"; ?> />148 <label for="display_ properties_post_page">Post page</label>179 <input type="checkbox" id="display_categories_post_page" name="categories_to_display[]" value="post_page" <?php if (is_array($chatwee_settings["categories_to_display"]) && in_array("post_page", $chatwee_settings["categories_to_display"])) echo "checked"; ?> /> 180 <label for="display_categories_post_page">Post page</label> 149 181 </div> 150 182 <div class="chatwee-option-wrapper"> 151 <input type="checkbox" id="display_ properties_single_page" name="display_properties[]" value="single_page" <?php if (is_array($chatwee_settings["display_properties"]) && in_array("single_page", $chatwee_settings["display_properties"])) echo "checked"; ?> />152 <label for="display_ properties_single_page">Single page</label>183 <input type="checkbox" id="display_categories_single_page" name="categories_to_display[]" value="single_page" <?php if (is_array($chatwee_settings["categories_to_display"]) && in_array("single_page", $chatwee_settings["categories_to_display"])) echo "checked"; ?> /> 184 <label for="display_categories_single_page">Single page</label> 153 185 </div> 154 <p class="chatwee-option-info">This section allows you to determine the page categories, where you want to display the chat.</p> 186 </td> 187 </tr> 188 <tr> 189 <th> 190 <label for="enable_sso">Display on the following pages:</label> 191 </th> 192 <td> 193 <?php 194 $pages = get_pages(); 195 if ($pages) { 196 foreach($pages as $page) { 197 $checkedClause = is_array($chatwee_settings["pages_and_posts_to_display"]) && in_array($page->ID, $chatwee_settings["pages_and_posts_to_display"]) ? "checked" : ""; 198 $page_link = get_page_link($page->ID); 199 $page_date = get_the_date(null, $page->ID); 200 echo "<div class='chatwee-option-wrapper'>"; 201 echo "<input type='checkbox' value='$page->ID' name='pages_and_posts_to_display[]' id='page_ID_$page->ID' $checkedClause/>"; 202 if (!$page->post_title) { 203 echo "<a href='$page_link' target='_blank'>#$page->ID (no title)</a>"; 204 echo " - published on $page_date"; 205 } else { 206 echo "<a href='$page_link' target='_blank'>$page->post_title</a>"; 207 echo " - published on $page_date"; 208 } 209 echo "</div>"; 210 } 211 } else { 212 echo "<p class='chatwee-option-info'>You don't have any pages published yet.</>"; 213 } 214 ?> 215 </td> 216 </tr> 217 <tr> 218 <th> 219 <label for="enable_sso">Display on the following posts:</label> 220 </th> 221 <td> 222 <?php 223 $posts = get_posts(); 224 if ($posts) { 225 foreach($posts as $post) { 226 $checkedClause = is_array($chatwee_settings["pages_and_posts_to_display"]) && in_array($post->ID, $chatwee_settings["pages_and_posts_to_display"]) ? "checked" : ""; 227 $post_link = get_page_link($post->ID); 228 $post_date = get_the_date(null, $post->ID); 229 echo "<div class='chatwee-option-wrapper'>"; 230 echo "<input type='checkbox' value='$post->ID' name='pages_and_posts_to_display[]' id='post_ID_$post->ID' $checkedClause/>"; 231 if (!$post->post_title) { 232 echo "<a href='$post_link' target='_blank'>#$post->ID (no title)</a>"; 233 echo " - published on $post_date"; 234 } else { 235 echo "<a href='$post_link' target='_blank'>$post->post_title</a>"; 236 echo " - published on $post_date"; 237 } 238 echo "</div>"; 239 } 240 } else { 241 echo "<p class='chatwee-option-info'>You don't have any posts published yet.</>"; 242 } 243 ?> 155 244 </td> 156 245 </tr> … … 158 247 <th></th> 159 248 <td> 160 <input type="submit" name="chatwee_ general_submit" class="button-primary" value="Save changes" />249 <input type="submit" name="chatwee_display_properties_submit" class="button-primary" value="Save changes" /> 161 250 </td> 162 251 </tr> … … 288 377 </div> 289 378 379 380 290 381 <div class="chatwee-content-box chatwee-side-box"> 291 382 <h2>How to get Chatwee installation code?</h2> -
chatwee/trunk/chatwee.php
r1564521 r1587657 40 40 "chatwee_script" => "", 41 41 "disable_offline_users" => false, 42 "display_properties" => ["main_page", "search_page", "archive_page", "post_page", "single_page"], 42 "categories_to_display" => ["main_page", "search_page", "archive_page", "post_page", "single_page"], 43 "pages_and_posts_to_display" => [], //contains IDs of user-selected pages and posts 43 44 "enable_sso" => false, 44 45 "chat_id" => "", … … 75 76 $chatwee_settings = get_option("chatwee_settings"); 76 77 77 $display_properties = $chatwee_settings["display_properties"]; 78 79 $main_page_matched = in_array("main_page", $display_properties) && is_home() === true; 80 $search_page_matched = in_array("search_page", $display_properties) && is_search() === true; 81 $archive_page_matched = in_array("archive_page", $display_properties) && is_archive() === true; 82 $post_page_matched = in_array("post_page", $display_properties) && is_page() === true; 83 $single_page_matched = in_array("single_page", $display_properties) && is_single() === true; 84 85 return $main_page_matched || $search_page_matched || $archive_page_matched || $post_page_matched || $single_page_matched; 78 $id = get_the_ID(); 79 80 $categories_to_display = $chatwee_settings["categories_to_display"]; 81 $pages_and_posts_to_display = $chatwee_settings["pages_and_posts_to_display"]; 82 83 84 $main_page_matched = is_array($categories_to_display) && in_array("main_page", $categories_to_display) && is_home() === true; 85 $search_page_matched = is_array($categories_to_display) && in_array("search_page", $categories_to_display) && is_search() === true; 86 $archive_page_matched = is_array($categories_to_display) && in_array("archive_page", $categories_to_display) && is_archive() === true; 87 $post_page_matched = is_array($categories_to_display) && in_array("post_page", $categories_to_display) && is_single() === true; 88 $single_page_matched = is_array($categories_to_display) && in_array("single_page", $categories_to_display) && is_page() === true; 89 90 $page_or_post_matched = is_array($pages_and_posts_to_display) && in_array($id, $pages_and_posts_to_display) && is_singular() === true; 91 92 return $main_page_matched || $search_page_matched || $archive_page_matched || $post_page_matched || $single_page_matched || $page_or_post_matched; 86 93 } 87 94 … … 162 169 163 170 $wpdb->insert($table_name, Array("log_message" => $message)); 164 165 echo json_encode(true);166 171 } 167 172 -
chatwee/trunk/lib/ChatweeV2_SDK/Chatwee/SsoManager.php
r1564521 r1587657 10 10 $userId = ChatweeV2_SsoUser::register(Array( 11 11 "login" => $parameters["login"], 12 "isAdmin" => isSet($parameters["isAdmin"]) === true ? $parameters["isAdmin"] : false, 12 13 "avatar" => isSet($parameters["avatar"]) === true ? $parameters["avatar"] : "" 13 14 )); … … 54 55 } 55 56 56 ChatweeV2_SsoUser::edit(Array(57 $editParameters = Array( 57 58 "userId" => $parameters["userId"], 58 59 "login" => $parameters["login"], 59 60 "avatar" => isSet($parameters["avatar"]) === true ? $parameters["avatar"] : "" 60 )); 61 ); 62 63 if(isSet($parameters["isAdmin"]) === true) { 64 $editParameters["isAdmin"] = $parameters["isAdmin"]; 65 } 66 67 ChatweeV2_SsoUser::edit($editParameters); 61 68 } 62 69 -
chatwee/trunk/lib/ChatweeV2_SDK/Chatwee/SsoUser.php
r1564521 r1587657 6 6 $requestParameters = Array( 7 7 "login" => $parameters["login"], 8 "isAdmin" => $parameters["isAdmin"] === true ? 1 : 0, 8 9 "avatar" => $parameters["avatar"] 9 10 ); … … 55 56 ); 56 57 58 if(isSet($parameters["isAdmin"]) === true) { 59 $requestParameters["isAdmin"] === true ? 1 : 0; 60 } 61 57 62 $httpClient = new ChatweeV2_HttpClient(); 58 63 $httpClient->get("sso-user/edit", $requestParameters);
Note: See TracChangeset
for help on using the changeset viewer.