| 1 |
<?php |
<?php |
| 2 |
// $Id: fckeditor.admin.inc,v 1.1.2.44 2009/10/22 20:35:18 jorrit Exp $ |
// $Id: fckeditor.admin.inc,v 1.1.2.45 2009/10/24 09:48:27 jorrit Exp $ |
| 3 |
/** |
/** |
| 4 |
* FCKeditor - The text editor for Internet - http://www.fckeditor.net |
* FCKeditor - The text editor for Internet - http://www.fckeditor.net |
| 5 |
* Copyright (C) 2003-2008 Frederico Caldeira Knabben |
* Copyright (C) 2003-2008 Frederico Caldeira Knabben |
| 62 |
)), 'warning'); |
)), 'warning'); |
| 63 |
} |
} |
| 64 |
else { |
else { |
| 65 |
$result = db_query_range('SELECT name FROM {fckeditor_settings} WHERE name <> "FCKeditor Global Profile"', 0, 1); |
$result = db_query_range("SELECT name FROM {fckeditor_settings} WHERE name <> 'FCKeditor Global Profile'", 0, 1); |
| 66 |
$has_profiles = FALSE; |
$has_profiles = FALSE; |
| 67 |
//find profile other than Global |
//find profile other than Global |
| 68 |
if (($obj = db_fetch_object($result))) { |
if (($obj = db_fetch_object($result))) { |
| 70 |
} |
} |
| 71 |
|
|
| 72 |
//find roles with profiles |
//find roles with profiles |
| 73 |
$result = db_query('SELECT rid FROM {fckeditor_role}'); |
$result = db_query("SELECT rid FROM {fckeditor_role}"); |
| 74 |
$rids = array(); |
$rids = array(); |
| 75 |
while (($obj = db_fetch_object($result))) { |
while (($obj = db_fetch_object($result))) { |
| 76 |
$rids[] = $obj->rid; |
$rids[] = $obj->rid; |
| 174 |
$edit =& $form_state['values']; |
$edit =& $form_state['values']; |
| 175 |
drupal_set_message(t('Your FCKeditor profile has been created.')); |
drupal_set_message(t('Your FCKeditor profile has been created.')); |
| 176 |
$settings = fckeditor_admin_values_to_settings($edit); |
$settings = fckeditor_admin_values_to_settings($edit); |
| 177 |
db_query('INSERT INTO {fckeditor_settings} (name, settings) VALUES ("%s", "%s")', $edit['name'], $settings); |
db_query("INSERT INTO {fckeditor_settings} (name, settings) VALUES ('%s', '%s')", $edit['name'], $settings); |
| 178 |
fckeditor_rebuild_selectors($edit['name']); |
fckeditor_rebuild_selectors($edit['name']); |
| 179 |
if (!empty($edit['rids'])) { |
if (!empty($edit['rids'])) { |
| 180 |
foreach (array_keys($edit['rids']) as $rid) { |
foreach (array_keys($edit['rids']) as $rid) { |
| 181 |
if ($edit['rids'][$rid]!=0) { |
if ($edit['rids'][$rid]!=0) { |
| 182 |
db_query('INSERT INTO {fckeditor_role} (name, rid) VALUES ("%s", %d)', $edit['name'], $rid); |
db_query("INSERT INTO {fckeditor_role} (name, rid) VALUES ('%s', %d)", $edit['name'], $rid); |
| 183 |
} |
} |
| 184 |
} |
} |
| 185 |
} |
} |
| 220 |
} |
} |
| 221 |
|
|
| 222 |
if (empty($profile->name)) { |
if (empty($profile->name)) { |
| 223 |
$result = db_query('SELECT DISTINCT(rid) FROM {fckeditor_role}'); |
$result = db_query("SELECT DISTINCT(rid) FROM {fckeditor_role}"); |
| 224 |
while (($data = db_fetch_object($result))) { |
while (($data = db_fetch_object($result))) { |
| 225 |
if ((empty($profile->rids) || !in_array($data->rid, array_keys((array) $profile->rids))) && !form_get_errors()) { |
if ((empty($profile->rids) || !in_array($data->rid, array_keys((array) $profile->rids))) && !form_get_errors()) { |
| 226 |
unset($roles[$data->rid]); |
unset($roles[$data->rid]); |
| 959 |
$edit =& $form_state['values']; |
$edit =& $form_state['values']; |
| 960 |
|
|
| 961 |
if (isset($edit['_profile'])) { |
if (isset($edit['_profile'])) { |
| 962 |
db_query('DELETE FROM {fckeditor_settings} WHERE name = "%s"', $edit['_profile']->name); |
db_query("DELETE FROM {fckeditor_settings} WHERE name = '%s'", $edit['_profile']->name); |
| 963 |
db_query('DELETE FROM {fckeditor_role} WHERE name = "%s"', $edit['_profile']->name); |
db_query("DELETE FROM {fckeditor_role} WHERE name = '%s'", $edit['_profile']->name); |
| 964 |
drupal_set_message(t('Your FCKeditor profile has been updated.')); |
drupal_set_message(t('Your FCKeditor profile has been updated.')); |
| 965 |
} |
} |
| 966 |
else { |
else { |
| 968 |
} |
} |
| 969 |
|
|
| 970 |
$settings = fckeditor_admin_values_to_settings($edit); |
$settings = fckeditor_admin_values_to_settings($edit); |
| 971 |
db_query('INSERT INTO {fckeditor_settings} (name, settings) VALUES ("%s", "%s")', $edit['name'], $settings); |
db_query("INSERT INTO {fckeditor_settings} (name, settings) VALUES ('%s', '%s')", $edit['name'], $settings); |
| 972 |
fckeditor_rebuild_selectors($edit['name']); |
fckeditor_rebuild_selectors($edit['name']); |
| 973 |
if (!empty($edit['rids'])) { |
if (!empty($edit['rids'])) { |
| 974 |
foreach (array_keys($edit['rids']) as $rid) { |
foreach (array_keys($edit['rids']) as $rid) { |
| 975 |
if ($edit['rids'][$rid]!=0) { |
if ($edit['rids'][$rid]!=0) { |
| 976 |
db_query('INSERT INTO {fckeditor_role} (name, rid) VALUES ("%s", %d)', $edit['name'], $rid); |
db_query("INSERT INTO {fckeditor_role} (name, rid) VALUES ('%s', %d)", $edit['name'], $rid); |
| 977 |
} |
} |
| 978 |
} |
} |
| 979 |
} |
} |
| 1204 |
} |
} |
| 1205 |
|
|
| 1206 |
if (isset($edit['_profile'])) { |
if (isset($edit['_profile'])) { |
| 1207 |
db_query('DELETE FROM {fckeditor_settings} WHERE name = "%s"', $edit['_profile']->name); |
db_query("DELETE FROM {fckeditor_settings} WHERE name = '%s'", $edit['_profile']->name); |
| 1208 |
db_query('DELETE FROM {fckeditor_role} WHERE name = "%s"', $edit['_profile']->name); |
db_query("DELETE FROM {fckeditor_role} WHERE name = '%s'", $edit['_profile']->name); |
| 1209 |
} |
} |
| 1210 |
|
|
| 1211 |
//strip whitespaces |
//strip whitespaces |
| 1229 |
$edit['fckeditor_local_path'] = trim(rtrim($edit['fckeditor_local_path'], '/')); |
$edit['fckeditor_local_path'] = trim(rtrim($edit['fckeditor_local_path'], '/')); |
| 1230 |
|
|
| 1231 |
$settings = fckeditor_admin_values_to_settings($edit); |
$settings = fckeditor_admin_values_to_settings($edit); |
| 1232 |
db_query('INSERT INTO {fckeditor_settings} (name, settings) VALUES ("%s", "%s")', $edit['name'], $settings); |
db_query("INSERT INTO {fckeditor_settings} (name, settings) VALUES ('%s', '%s')", $edit['name'], $settings); |
| 1233 |
fckeditor_rebuild_selectors($edit['name']); |
fckeditor_rebuild_selectors($edit['name']); |
| 1234 |
|
|
| 1235 |
drupal_set_message(t('FCKeditor global profile has been saved.')); |
drupal_set_message(t('FCKeditor global profile has been saved.')); |
| 1309 |
*/ |
*/ |
| 1310 |
function fckeditor_rebuild_selectors($name = NULL) { |
function fckeditor_rebuild_selectors($name = NULL) { |
| 1311 |
if ($name == NULL) { |
if ($name == NULL) { |
| 1312 |
$result = db_query('SELECT * FROM {fckeditor_settings}'); |
$result = db_query("SELECT * FROM {fckeditor_settings}"); |
| 1313 |
} |
} |
| 1314 |
else { |
else { |
| 1315 |
$result = db_query('SELECT * FROM {fckeditor_settings} WHERE name = "%s"', $name); |
$result = db_query("SELECT * FROM {fckeditor_settings} WHERE name = '%s'", $name); |
| 1316 |
} |
} |
| 1317 |
|
|
| 1318 |
while (($data = db_fetch_object($result))) { |
while (($data = db_fetch_object($result))) { |
| 1338 |
} |
} |
| 1339 |
} |
} |
| 1340 |
|
|
| 1341 |
db_query('UPDATE {fckeditor_settings} SET settings="%s" WHERE name="%s"', serialize($settings), $data->name); |
db_query("UPDATE {fckeditor_settings} SET settings='%s' WHERE name='%s'", serialize($settings), $data->name); |
| 1342 |
} |
} |
| 1343 |
} |
} |
| 1344 |
} |
} |
| 1411 |
* Remove a profile from the database. |
* Remove a profile from the database. |
| 1412 |
*/ |
*/ |
| 1413 |
function fckeditor_profile_delete($name) { |
function fckeditor_profile_delete($name) { |
| 1414 |
db_query('DELETE FROM {fckeditor_settings} WHERE name = "%s"', $name); |
db_query("DELETE FROM {fckeditor_settings} WHERE name = '%s'", $name); |
| 1415 |
db_query('DELETE FROM {fckeditor_role} WHERE name = "%s"', $name); |
db_query("DELETE FROM {fckeditor_role} WHERE name = '%s'", $name); |
| 1416 |
} |
} |