| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 | 
							- <?php
 
- /**
 
-  * CKEditor - The text editor for the Internet - http://ckeditor.com
 
-  * Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved.
 
-  *
 
-  * == BEGIN LICENSE ==
 
-  *
 
-  * Licensed under the terms of any of the following licenses of your
 
-  * choice:
 
-  *
 
-  *  - GNU General Public License Version 2 or later (the "GPL")
 
-  *    http://www.gnu.org/licenses/gpl.html
 
-  *
 
-  *  - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
 
-  *    http://www.gnu.org/licenses/lgpl.html
 
-  *
 
-  *  - Mozilla Public License Version 1.1 or later (the "MPL")
 
-  *    http://www.mozilla.org/MPL/MPL-1.1.html
 
-  *
 
-  * == END LICENSE ==
 
-  *
 
-  * @file
 
-  * CKEditor Module for Drupal 7.x
 
-  *
 
-  * This module allows Drupal to replace textarea fields with CKEditor.
 
-  *
 
-  * CKEditor is an online rich text editor that can be embedded inside web pages.
 
-  * It is a WYSIWYG (What You See Is What You Get) editor which means that the
 
-  * text edited in it looks as similar as possible to the results end users will
 
-  * see after the document gets published. It brings to the Web popular editing
 
-  * features found in desktop word processors such as Microsoft Word and
 
-  * OpenOffice.org Writer. CKEditor is truly lightweight and does not require any
 
-  * kind of installation on the client computer.
 
-  */
 
- /**
 
-  * Implementation of hook_features_export_options()
 
-  */
 
- function ckeditor_profile_features_export_options() {
 
-   $options = array();
 
-   $profiles = (array) ckeditor_profile_load();
 
-   foreach ($profiles as $name => $profile) {
 
-     $options[$name] = $profile->name;
 
-   }
 
-   return $options;
 
- }
 
- /**
 
-  * Implementation of hook_features_export()
 
-  */
 
- function ckeditor_profile_features_export($data, &$export, $module_name = '') {
 
-   $pipe = array();
 
-   foreach ((array) $data as $name) {
 
-     $profile = ckeditor_profile_load($name);
 
-     if ($profile) {
 
-       $export['features']['ckeditor_profile'][$name] = $name;
 
-       // Write dependencies on all the roles referenced by this profile
 
-       foreach ((array) $profile->input_formats as $input_format => $input_format_name) {
 
-         $pipe['input_formats'][] = $input_format;
 
-       }
 
-     }
 
-   }
 
-   $export['dependencies'][] = 'ckeditor';
 
-   return $pipe;
 
- }
 
- /**
 
-  * Implementation of hook_features_export_render()
 
-  */
 
- function ckeditor_profile_features_export_render($module_name, $data) {
 
-   $profiles = array();
 
-   $roles = user_roles();
 
-   foreach ($data as $name) {
 
-     $profile = (array) ckeditor_profile_load($name, TRUE, FALSE);
 
-     $profiles[$name] = $profile;
 
-   }
 
-   $code = '  $data = ' . features_var_export($profiles, '  ') . ';' . PHP_EOL;
 
-   $code .= '  return $data;';
 
-   return array('ckeditor_profile_defaults' => $code);
 
- }
 
- /**
 
-  * Implementation of hook_features_rebuild()
 
-  */
 
- function ckeditor_profile_features_rebuild($module) {
 
-   ckeditor_profile_features_revert($module);
 
- }
 
- /**
 
-  * Implementation of hook_features_revert()
 
-  */
 
- function ckeditor_profile_features_revert($module) {
 
-   if ($data = features_get_default('ckeditor_profile', $module)) {
 
-     $input_formats = filter_formats();
 
-     foreach ($data as $name => $profile) {
 
-       // Restore the profile settings
 
-       db_query("DELETE FROM {ckeditor_settings} WHERE name = :name", array(':name' => $name));
 
-       db_query("INSERT INTO {ckeditor_settings} (name, settings) VALUES(:name, :settings)", array(':name' => $name, ':settings' => serialize($profile['settings'])));
 
-       if (empty($profile["input_formats"])) {
 
-         // Remove input format if none is specified
 
-         db_query("DELETE FROM {ckeditor_input_format} WHERE name = :name", array(':name' => $name));
 
-       }
 
-       else {
 
-         // Restore the profile roles
 
-         foreach ($profile["input_formats"] as $input_format => $input_format_name) {
 
-           if (!db_query("SELECT name FROM {ckeditor_input_format} WHERE format = :format AND name = :name", array(':name' => $name, ':format' => $input_format))->fetchField()) {
 
-             db_query("INSERT INTO {ckeditor_input_format} (name, format) VALUES(:name, :format)", array(':name' => $name, ':format' => $input_format));
 
-           }
 
-         }
 
-       }
 
-     }
 
-   }
 
- }
 
 
  |