Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • rklusman2/UNL-CMS
  • yzha1/UNL-CMS
  • pear/UNL-CMS
  • bbieber2/UNL-CMS
  • tsteiner2/UNL-CMS
  • erasmussen2/UNL-CMS
  • UNL-Information-Services/UNL-CMS
7 results
Show changes
Commits on Source (908)
.htaccess
.htaccess-subsite-map.txt
sites/sites.php
sites/*/
!sites/all/
!sites/default/
sites/all/settings.php
sites/default/files
sites/default/settings.php
.buildpath
.project
.settings
.settings/*
/sites/all/themes/explore_center
/resetunlcms.sh
/UNL_CMS.sublime-project
/UNL_CMS.sublime-workspace
\ No newline at end of file
[submodule "vendor/WDN-TinyMCE"]
path = vendor/WDN-TinyMCE
url = git@github.unl.edu:iim/TinyMCE.git
[submodule "vendor/NmcFramework"]
path = vendor/NmcFramework
url = git@github.unl.edu:UNL-Information-Services/NMC-PHP-Framework.git
[submodule "sites/all/modules/diff"]
path = sites/all/modules/diff
url = http://git.drupal.org/project/diff.git
[submodule "sites/all/modules/tims"]
path = sites/all/modules/tims
url = https://github.com/unlcms/tims.git
[submodule "vendor/Twig"]
path = vendor/Twig
url = https://github.com/fabpot/Twig.git
[submodule "sites/all/themes/unl_og"]
path = sites/all/themes/unl_og
url = git@github.com:unlcms/unl_og.git
# This file is automatically generated.
# Do not edit it unless you know what you are doing!
# %UNL_CREATION_TOOL_STUB%
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
# #
# Protect files and directories from prying eyes. # Protect files and directories from prying eyes.
<FilesMatch "\.(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(\..*|Entries.*|Repository|Root|Tag|Template)$"> <FilesMatch "\.(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)(|~|\.sw[op]|\.bak|\.orig|\.save)?$|^(\..*|Entries.*|Repository|Root|Tag|Template)$|^#.*#$|\.php(~|\.sw[op]|\.bak|\.orig\.save)$">
Order allow,deny Order allow,deny
</FilesMatch> </FilesMatch>
...@@ -16,12 +16,6 @@ Options +FollowSymLinks ...@@ -16,12 +16,6 @@ Options +FollowSymLinks
# Make Drupal handle any 404 errors. # Make Drupal handle any 404 errors.
ErrorDocument 404 /index.php ErrorDocument 404 /index.php
# Force simple error message for requests for non-existent favicon.ico.
<Files favicon.ico>
# There is no end quote below, for compatibility with Apache 1.3.
ErrorDocument 404 "The requested file favicon.ico was not found.
</Files>
# Set the default handler. # Set the default handler.
DirectoryIndex index.php index.html index.htm DirectoryIndex index.php index.html index.htm
...@@ -62,16 +56,30 @@ DirectoryIndex index.php index.html index.htm ...@@ -62,16 +56,30 @@ DirectoryIndex index.php index.html index.htm
<IfModule mod_rewrite.c> <IfModule mod_rewrite.c>
RewriteEngine on RewriteEngine on
# THIS SECTION IS AUTOMATICALY GENERATED. # Set "protossl" to "s" if we were accessed via https://. This is used later
# if you enable "www." stripping or enforcement, in order to ensure that
# you don't bounce between http and https.
RewriteRule ^ - [E=protossl]
RewriteCond %{HTTPS} on
RewriteRule ^ - [E=protossl:s]
# THIS SECTION IS FOR UNL SUBSITES
# DO NOT EDIT!!!! # DO NOT EDIT!!!!
RewriteRule .*/cron cron.php # Add the following line to your httpd.conf
# RewriteMap drupal_subsites txt:<DRUPAL_ROOT>/.htaccess-subsite-map.txt
# Do not uncomment the previous line.
RewriteRule .*/cron.php cron.php
RewriteRule .*/update.php update.php RewriteRule .*/update.php update.php
RewriteRule ^(.*?/(misc|modules|sites|themes))(.*) ${drupal_subsites:$1|$1}$3
# %UNL_CREATION_TOOL_STUB%
RewriteCond ${drupal_subsites://%{HTTP_HOST}%{REQUEST_URI}|NOT_FOUND} !^NOT_FOUND$
# END AUTOMATICALLY GENERATED AREA. RewriteRule (.*) ${drupal_subsites://%{HTTP_HOST}%{REQUEST_URI}|$1} [R,L]
# END SUBSITE AREA.
# Block access to "hidden" directories whose names begin with a period. This # Block access to "hidden" directories whose names begin with a period. This
# includes directories used by version control systems such as Subversion or # includes directories used by version control systems such as Subversion or
# Git to store control files. Files whose names begin with a period, as well # Git to store control files. Files whose names begin with a period, as well
...@@ -94,14 +102,15 @@ DirectoryIndex index.php index.html index.htm ...@@ -94,14 +102,15 @@ DirectoryIndex index.php index.html index.htm
# To redirect all users to access the site WITH the 'www.' prefix, # To redirect all users to access the site WITH the 'www.' prefix,
# (http://example.com/... will be redirected to http://www.example.com/...) # (http://example.com/... will be redirected to http://www.example.com/...)
# uncomment the following: # uncomment the following:
# RewriteCond %{HTTP_HOST} .
# RewriteCond %{HTTP_HOST} !^www\. [NC] # RewriteCond %{HTTP_HOST} !^www\. [NC]
# RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] # RewriteRule ^ http%{ENV:protossl}://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# #
# To redirect all users to access the site WITHOUT the 'www.' prefix, # To redirect all users to access the site WITHOUT the 'www.' prefix,
# (http://www.example.com/... will be redirected to http://example.com/...) # (http://www.example.com/... will be redirected to http://example.com/...)
# uncomment the following: # uncomment the following:
# RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] # RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
# RewriteRule ^ http://%1%{REQUEST_URI} [L,R=301] # RewriteRule ^ http%{ENV:protossl}://%1%{REQUEST_URI} [L,R=301]
# Modify the RewriteBase if you are using Drupal in a subdirectory or in a # Modify the RewriteBase if you are using Drupal in a subdirectory or in a
# VirtualDocumentRoot and the rewrite rules are not working properly. # VirtualDocumentRoot and the rewrite rules are not working properly.
...@@ -113,12 +122,42 @@ DirectoryIndex index.php index.html index.htm ...@@ -113,12 +122,42 @@ DirectoryIndex index.php index.html index.htm
# uncomment the following line: # uncomment the following line:
# RewriteBase / # RewriteBase /
# Allow public files to be accessed without the sites/<site_dir>/files prefix
# The following line must be added to your apache configuration for this context:
# RewriteMap drupal prg:<DRUPAL_ROOT>/rewrite.php
# Do not uncomment the previous line. Only the next two.
# RewriteCond %{REQUEST_FILENAME} !-f
# RewriteRule (.*) ${drupal:%{HTTP_HOST};delim;%{REQUEST_URI};delim;$1}
# Pass all requests not referring directly to files in the filesystem to # Pass all requests not referring directly to files in the filesystem to
# index.php. Clean URLs are handled in drupal_environment_initialize(). # index.php. Clean URLs are handled in drupal_environment_initialize().
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^ index.php [L] RewriteRule ^ index.php [L]
</IfModule>
# $Id: .htaccess,v 1.109 2010/05/05 06:15:59 webchick Exp $ # Rules to correctly serve gzip compressed CSS and JS files.
# Requires both mod_rewrite and mod_headers to be enabled.
<IfModule mod_headers.c>
# Serve gzip compressed CSS files if they exist and the client accepts gzip.
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}\.gz -s
RewriteRule ^(.*)\.css $1\.css\.gz [QSA]
# Serve gzip compressed JS files if they exist and the client accepts gzip.
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}\.gz -s
RewriteRule ^(.*)\.js $1\.js\.gz [QSA]
# Serve correct content types, and prevent mod_deflate double gzip.
RewriteRule \.css\.gz$ - [T=text/css,E=no-gzip:1]
RewriteRule \.js\.gz$ - [T=text/javascript,E=no-gzip:1]
<FilesMatch "(\.js\.gz|\.css\.gz)$">
# Serve correct encoding type.
Header set Content-Encoding gzip
# Force proxies to cache gzipped & non-gzipped css/js files separately.
Header append Vary Accept-Encoding
</FilesMatch>
</IfModule>
</IfModule>
This diff is collapsed.
// $Id: COPYRIGHT.txt,v 1.6 2010/01/02 10:20:21 dries Exp $ All Drupal code is Copyright 2001 - 2012 by the original authors.
All Drupal code is Copyright 2001 - 2010 by the original authors.
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
the Free Software Foundation. the Free Software Foundation; either version 2 of the License, or (at
your option) any later version.
This program is distributed in the hope that it will be useful, but This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
...@@ -21,5 +20,25 @@ Drupal includes works under other copyright notices and distributed ...@@ -21,5 +20,25 @@ Drupal includes works under other copyright notices and distributed
according to the terms of the GNU General Public License or a compatible according to the terms of the GNU General Public License or a compatible
license, including: license, including:
jQuery - Copyright (c) 2008 - 2009 John Resig Javascript
Farbtastic - Copyright (c) 2010 Matt Farina
jQuery - Copyright (c) 2010 John Resig
jQuery BBQ - Copyright (c) 2010 "Cowboy" Ben Alman
jQuery Cookie - Copyright (c) 2006 Klaus Hartl
jQuery Form - Copyright (c) 2010 Mike Alsup
jQuery Once - Copyright (c) 2009 Konstantin K�fer
jQuery UI - Copyright (c) 2010 by the original authors
(http://jqueryui.com/about)
Sizzle.js - Copyright (c) 2010 The Dojo Foundation (http://sizzlejs.com/)
PHP
ArchiveTar - Copyright (c) 1997 - 2008 Vincent Blavet
// $Id: INSTALL.mysql.txt,v 1.12 2010/01/11 16:25:15 webchick Exp $
CREATE THE MySQL DATABASE CREATE THE MySQL DATABASE
-------------------------- --------------------------
This step is only necessary if you don't already have a database set-up (e.g. by This step is only necessary if you don't already have a database set up (e.g.,
your host). In the following examples, 'username' is an example MySQL user which by your host). In the following examples, 'username' is an example MySQL user
has the CREATE and GRANT privileges. Use the appropriate user name for your which has the CREATE and GRANT privileges. Use the appropriate user name for
system. your system.
First, you must create a new database for your Drupal site (here, 'databasename' First, you must create a new database for your Drupal site (here, 'databasename'
is the name of the new database): is the name of the new database):
...@@ -19,7 +18,7 @@ initial database files. Next you must log in and set the access database rights: ...@@ -19,7 +18,7 @@ initial database files. Next you must log in and set the access database rights:
mysql -u username -p mysql -u username -p
Again, you will be asked for the 'username' database password. At the MySQL Again, you will be asked for the 'username' database password. At the MySQL
prompt, enter following command: prompt, enter the following command:
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER
ON databasename.* ON databasename.*
......
// $Id: INSTALL.pgsql.txt,v 1.9 2010/04/07 15:07:58 dries Exp $
CREATE THE PostgreSQL DATABASE CREATE THE PostgreSQL DATABASE
------------------------------ ------------------------------
...@@ -7,38 +6,39 @@ Note that the database must be created with UTF-8 (Unicode) encoding. ...@@ -7,38 +6,39 @@ Note that the database must be created with UTF-8 (Unicode) encoding.
1. CREATE DATABASE USER 1. CREATE DATABASE USER
This step is only necessary if you don't already have a user set up (e.g. This step is only necessary if you don't already have a user set up (e.g., by
by your host) or you want to create new user for use with Drupal only. The your host), or want to create a new user for use with Drupal only. The
following command creates a new user named "username" and asks for a following command creates a new user named 'username' and asks for a password
password for that user: for that user:
createuser --pwprompt --encrypted --no-createrole --no-createdb username createuser --pwprompt --encrypted --no-createrole --no-createdb username
If there are no errors then the command was successful If there are no errors, then the command was successful.
2. CREATE THE DRUPAL DATABASE 2. CREATE DRUPAL DATABASE
This step is only necessary if you don't already have a database set up (e.g. This step is only necessary if you don't already have a database set up
by your host) or you want to create new database for use with Drupal only. (e.g., by your host) or want to create a new database for use with Drupal
The following command creates a new database named "databasename", which is only. The following command creates a new database named 'databasename',
owned by previously created "username": which is owned by the previously created 'username':
createdb --encoding=UTF8 --owner=username databasename createdb --encoding=UTF8 --owner=username databasename
If there are no errors then the command was successful If there are no errors, then the command was successful.
3. CREATE A SCHEMA OR SCHEMAS (Optional advanced) 3. CREATE SCHEMA OR SCHEMAS (Optional advanced step)
Drupal will run across different schemas within your database if you so wish. Drupal will run across different schemas within your database if you so wish.
By default, Drupal runs inside the 'public' schema but you can use $db_prefix By default, Drupal runs inside the 'public' schema but you can use $db_prefix
inside settings.php to define a schema for Drupal to inside of or specify tables inside settings.php to define a schema for Drupal to run inside of, or
that are shared inside of a separate schema. Drupal will not create schemas for specify tables that are shared inside of a separate schema. Drupal will not
you, infact the user that Drupal runs as should not be allowed to. You'll need create schemas for you. In fact, the user that Drupal runs as should not be
execute the SQL below as a superuser (such as a postgres user) and replace allowed to do this. You'll need to execute the SQL below as a superuser,
'drupaluser' with the username that Drupal uses to connect to PostgreSQL with replace 'username' with the username that Drupal uses to connect to
and replace schema_name with a schema name you wish to use such as 'shared': PostgreSQL, and replace 'schema_name' with a schema name you wish to use,
such as 'shared':
CREATE SCHEMA schema_name AUTHORIZATION drupaluser; CREATE SCHEMA schema_name AUTHORIZATION username;
Do this for as many schemas as you need. See default.settings.php for how to Do this for as many schemas as you need. See default.settings.php for
set which tables use which schemas. instructions on how to set which tables use which schemas.
// $Id: INSTALL.sqlite.txt,v 1.3 2010/09/01 02:39:57 dries Exp $
SQLITE REQUIREMENTS SQLITE REQUIREMENTS
------------------- -------------------
To use SQLite with your Drupal installation, the following requirements must To use SQLite with your Drupal installation, the following requirements must be
be met: server has PHP 5.2 or later with PDO, and the PDO SQLite driver must met: Server has PHP 5.2 or later with PDO, and the PDO SQLite driver must be
be enabled. enabled.
SQLITE DATABASE CREATION SQLITE DATABASE CREATION
------------------------ ------------------------
The Drupal installer will create the SQLite database for you. The only The Drupal installer will create the SQLite database for you. The only
requirement is the installer must have write permissions the directory where requirement is that the installer must have write permissions to the directory
the database file resides. This directory (not just the database file) also has where the database file resides. This directory (not just the database file) also
to remain writeable by the web server going forward for SQLite to continue to be has to remain writeable by the web server going forward for SQLite to continue to
able to operate. be able to operate.
On the "Database configuration" form in the "Database name" field, you must On the "Database configuration" form in the "Database file" field, you must
supply the exact path to where you wish your database file to reside. It is supply the exact path to where you wish your database file to reside. It is
strongly suggested that you choose a path that is outside of the webroot, yet strongly suggested that you choose a path that is outside of the webroot, yet
ensure that the directory is writeable by the web server. ensure that the directory is writeable by the web server.
If you must place your database file in your webroot, you could try using the If you must place your database file in your webroot, you could try using the
following in your "Database name" field: following in your "Database file" field:
sites/default/files/.ht.sqlite sites/default/files/.ht.sqlite
...@@ -30,8 +29,3 @@ Note: The .ht in the name will tell Apache to prevent the database from being ...@@ -30,8 +29,3 @@ Note: The .ht in the name will tell Apache to prevent the database from being
downloaded. Please check that the file is, indeed, protected by your webserver. downloaded. Please check that the file is, indeed, protected by your webserver.
If not, please consult the documentation of your webserver on how to protect a If not, please consult the documentation of your webserver on how to protect a
file from downloading. file from downloading.
USERNAME, PASSWORD, and ADVANCED OPTIONS
----------------------------------------
No username, password, or advanced options are necessary, and they should not be
used.
This diff is collapsed.
// $Id: LICENSE.txt,v 1.7 2009/01/26 14:08:40 dries Exp $ GNU GENERAL PUBLIC LICENSE
GNU GENERAL PUBLIC LICENSE Version 2, June 1991
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc., Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed. of this license document, but changing it is not allowed.
Preamble Preamble
The licenses for most software are designed to take away your The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public freedom to share and change it. By contrast, the GNU General Public
...@@ -57,7 +56,7 @@ patent must be licensed for everyone's free use or not licensed at all. ...@@ -57,7 +56,7 @@ patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and The precise terms and conditions for copying, distribution and
modification follow. modification follow.
GNU GENERAL PUBLIC LICENSE GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains 0. This License applies to any program or other work which contains
...@@ -256,7 +255,7 @@ make exceptions for this. Our decision will be guided by the two goals ...@@ -256,7 +255,7 @@ make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally. of promoting the sharing and reuse of software generally.
NO WARRANTY NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
...@@ -278,9 +277,9 @@ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER ...@@ -278,9 +277,9 @@ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES. POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it possible use to the public, the best way to achieve this is to make it
......
// $Id: MAINTAINERS.txt,v 1.48 2010/09/30 13:28:08 dries Exp $
Drupal core is maintained by the community. To participate, go to
http://drupal.org/contribute
The people listed here have agreed to do more quality assurance work for
particular areas of Drupal. All of them are subject to change.
Drupal core is built and maintained by the Drupal project community. Everyone is
encouraged to submit issues and changes (patches) to improve Drupal, and to
contribute in other ways -- see http://drupal.org/contribute to find out how.
Branch maintainers Branch maintainers
------------------ ------------------
Drupal 7 The Drupal Core branch maintainers oversee the development of Drupal as a whole.
- Dries Buytaert 'dries' <http://drupal.org/user/1> The branch maintainers for Drupal 7 are:
- Angela Byron 'webchick' <http://drupal.org/user/24967>
- Dries Buytaert 'dries' http://drupal.org/user/1
- Angela Byron 'webchick' http://drupal.org/user/24967
- David Rothstein 'David_Rothstein' http://drupal.org/user/124982
Component maintainers Component maintainers
--------------------- ---------------------
AJAX system The Drupal Core component maintainers oversee the development of Drupal
- Alex Bronstein 'effulgentsia' <http://drupal.org/user/78040> subsystems. See http://drupal.org/contribute/core-maintainers for more
- Randy Fay 'rfay' <http://drupal.org/user/30906> information on their responsibilities, and to find out how to become a component
- Earl Miles 'merlinofchaos' <http://drupal.org/user/26979> maintainer. Current component maintainers for Drupal 7:
Ajax system
- Alex Bronstein 'effulgentsia' http://drupal.org/user/78040
- Earl Miles 'merlinofchaos' http://drupal.org/user/26979
Base system Base system
- Károly Négyesi 'chx' <http://drupal.org/user/9446> - Károly Négyesi 'chx' http://drupal.org/user/9446
- Damien Tournoud 'DamZ' <http://drupal.org/user/22211> - Damien Tournoud 'DamZ' http://drupal.org/user/22211
- Moshe Weitzman 'moshe weitzman' <http://drupal.org/user/23> - Moshe Weitzman 'moshe weitzman' http://drupal.org/user/23
Batch system Batch system
- Yves Chedemois 'yched' <http://drupal.org/user/39567> - Yves Chedemois 'yched' http://drupal.org/user/39567
Cache system Cache system
- Damien Tournoud 'DamZ' <http://drupal.org/user/22211> - Damien Tournoud 'DamZ' http://drupal.org/user/22211
- Nathaniel Catchpole 'catch' http://drupal.org/user/35733
Cron system Cron system
- Károly Négyesi 'chx' <http://drupal.org/user/9446> - Károly Négyesi 'chx' http://drupal.org/user/9446
- Derek Wright 'dww' <http://drupal.org/user/46549> - Derek Wright 'dww' http://drupal.org/user/46549
Database system Database system
- Larry Garfield 'Crell' <http://drupal.org/user/26398> - Larry Garfield 'Crell' http://drupal.org/user/26398
- MySQL driver - MySQL driver
- Larry Garfield 'Crell' <http://drupal.org/user/26398> - Larry Garfield 'Crell' http://drupal.org/user/26398
- David Strauss 'David Strauss' <hhttp://drupal.org/user/93254> - David Strauss 'David Strauss' http://drupal.org/user/93254
- PostgreSQL driver - PostgreSQL driver
- Damien Tournoud 'DamZ' <http://drupal.org/user/22211> - Damien Tournoud 'DamZ' http://drupal.org/user/22211
- Josh Waihi 'fiasco' <http://drupal.org/user/188162> - Josh Waihi 'fiasco' http://drupal.org/user/188162
- Sqlite driver - Sqlite driver
- Damien Tournoud 'DamZ' <http://drupal.org/user/22211> - Damien Tournoud 'DamZ' http://drupal.org/user/22211
- Károly Négyesi 'chx' <http://drupal.org/user/9446> - Károly Négyesi 'chx' http://drupal.org/user/9446
Database update system
- Károly Négyesi 'chx' http://drupal.org/user/9446
- Ashok Modi 'BTMash' http://drupal.org/user/60422
Entity system Entity system
- Nathaniel Catchpole 'catch' <http://drupal.org/user/35733> - Wolfgang Ziegler 'fago' http://drupal.org/user/16747
- Franz Heinzmann 'Frando' <http://drupal.org/user/21850> - Nathaniel Catchpole 'catch' http://drupal.org/user/35733
- Franz Heinzmann 'Frando' http://drupal.org/user/21850
File system File system
- Andrew Morton 'drewish' <http://drupal.org/user/34869> - Andrew Morton 'drewish' http://drupal.org/user/34869
- Aaron Winborn 'aaron' <http://drupal.org/user/33420> - Aaron Winborn 'aaron' http://drupal.org/user/33420
Form system Form system
- Károly Négyesi 'chx' <http://drupal.org/user/9446> - Károly Négyesi 'chx' http://drupal.org/user/9446
- Alex Bronstein 'effulgentsia' <http://drupal.org/user/78040> - Alex Bronstein 'effulgentsia' http://drupal.org/user/78040
- Wolfgang Ziegler 'fago' <http://drupal.org/user/16747> - Wolfgang Ziegler 'fago' http://drupal.org/user/16747
- Daniel F. Kudwien 'sun' <http://drupal.org/user/54136> - Daniel F. Kudwien 'sun' http://drupal.org/user/54136
- Franz Heinzmann 'Frando' <http://drupal.org/user/21850> - Franz Heinzmann 'Frando' http://drupal.org/user/21850
Image system Image system
- Andrew Morton 'drewish' <http://drupal.org/user/34869> - Andrew Morton 'drewish' http://drupal.org/user/34869
- Nathan Haug 'quicksketch' <http://drupal.org/user/35821> - Nathan Haug 'quicksketch' http://drupal.org/user/35821
Install system Install system
- David Rothstein 'David_Rothstein' <http://drupal.org/user/124982> - David Rothstein 'David_Rothstein' http://drupal.org/user/124982
JavaScript JavaScript
- ? - Théodore Biadala 'nod_' http://drupal.org/user/598310
- Steve De Jonghe 'seutje' http://drupal.org/user/264148
- Jesse Renée Beach 'jessebeach' http://drupal.org/user/748566
Language system Language system
- Francesco Placella 'plach' <http://drupal.org/user/183211> - Francesco Placella 'plach' http://drupal.org/user/183211
- Daniel F. Kudwien 'sun' <http://drupal.org/user/54136> - Daniel F. Kudwien 'sun' http://drupal.org/user/54136
Lock system Lock system
- Damien Tournoud 'DamZ' <http://drupal.org/user/22211> - Damien Tournoud 'DamZ' http://drupal.org/user/22211
Mail system Mail system
- ? - ?
Markup Markup
- Jacine Rodriguez 'Jacine' <http://drupal.org/user/88931> - Jacine Luisi 'Jacine' http://drupal.org/user/88931
- Daniel F. Kudwien 'sun' <http://drupal.org/user/54136> - Daniel F. Kudwien 'sun' http://drupal.org/user/54136
Menu system Menu system
- Peter Wolanin 'pwolanin' <http://drupal.org/user/49851> - Peter Wolanin 'pwolanin' http://drupal.org/user/49851
- Károly Négyesi 'chx' <http://drupal.org/user/9446> - Károly Négyesi 'chx' http://drupal.org/user/9446
Path system Path system
- Dave Reid 'davereid' <http://drupal.org/user/53892> - Dave Reid 'davereid' http://drupal.org/user/53892
- Nathaniel Catchpole 'catch' <http://drupal.org/user/35733> - Nathaniel Catchpole 'catch' http://drupal.org/user/35733
Render system Render system
- Moshe Weitzman 'moshe weitzman' <http://drupal.org/user/23> - Moshe Weitzman 'moshe weitzman' http://drupal.org/user/23
- Alex Bronstein 'effulgentsia' <http://drupal.org/user/78040> - Alex Bronstein 'effulgentsia' http://drupal.org/user/78040
- Franz Heinzmann 'Frando' <http://drupal.org/user/21850> - Franz Heinzmann 'Frando' http://drupal.org/user/21850
Theme system Theme system
- Earl Miles 'merlinofchaos' <http://drupal.org/user/26979> - Earl Miles 'merlinofchaos' http://drupal.org/user/26979
- Alex Bronstein 'effulgentsia' <http://drupal.org/user/78040> - Alex Bronstein 'effulgentsia' http://drupal.org/user/78040
- Joon Park 'dvessel' <http://drupal.org/user/56782> - Joon Park 'dvessel' http://drupal.org/user/56782
- John Albin Wilkins 'JohnAlbin' http://drupal.org/user/32095
Token system Token system
- Dave Reid 'davereid' <http://drupal.org/user/53892> - Dave Reid 'davereid' http://drupal.org/user/53892
Update system
- ?
XML-RPC system XML-RPC system
- Frederic G. Marand 'fgm' <http://drupal.org/user/27985> - Frederic G. Marand 'fgm' http://drupal.org/user/27985
Topic coordinators Topic coordinators
------------------ ------------------
Accessibility Accessibility
- Everett Zufelt 'Everett Zufelt' <http://drupal.org/user/406552> - Everett Zufelt 'Everett Zufelt' http://drupal.org/user/406552
- Brandon Bowersox 'brandonojc' <http://drupal.org/user/186415> - Brandon Bowersox-Johnson 'bowersox' http://drupal.org/user/186415
Documentation Documentation
- Addison Berry 'add1sun' <http://drupal.org/user/65088> - Jennifer Hodgdon 'jhodgdon' http://drupal.org/user/155601
- Jennifer Hodgdon 'jhodgdon' <http://drupal.org/user/155601>
Security Security
- Heine Deelstra 'Heine' <http://drupal.org/user/17943> - Greg Knaddison 'greggles' http://drupal.org/user/36762
Translations Translations
- Gerhard Killesreiter 'killes' <http://drupal.org/user/83> - Gerhard Killesreiter 'killes' http://drupal.org/user/83
User experience and usability User experience and usability
- Roy Scholten 'yoroy' <http://drupal.org/user/41502> - Roy Scholten 'yoroy' http://drupal.org/user/41502
- Bojhan Somers 'Bojhan' <http://drupal.org/user/87969> - Bojhan Somers 'Bojhan' http://drupal.org/user/87969
Node Access
- Moshe Weitzman 'moshe weitzman' http://drupal.org/user/23
- Ken Rickard 'agentrickard' http://drupal.org/user/20975
- Jess Myrbo 'xjm' http://drupal.org/user/65776
Module maintainers Module maintainers
------------------ ------------------
...@@ -150,144 +161,143 @@ Aggregator module ...@@ -150,144 +161,143 @@ Aggregator module
- ? - ?
Block module Block module
- ? - John Albin Wilkins 'JohnAlbin' http://drupal.org/user/32095
Blog module Blog module
- ? - ?
Book module Book module
- Peter Wolanin 'pwolanin' <http://drupal.org/user/49851> - Peter Wolanin 'pwolanin' http://drupal.org/user/49851
Color module Color module
- ? - ?
Comment module Comment module
- Nathaniel Catchpole 'catch' <http://drupal.org/user/35733> - Nathaniel Catchpole 'catch' http://drupal.org/user/35733
Contact module Contact module
- Dave Reid 'davereid' <http://drupal.org/user/53892> - Dave Reid 'davereid' http://drupal.org/user/53892
Contextual module Contextual module
- Daniel F. Kudwien 'sun' <http://drupal.org/user/54136> - Daniel F. Kudwien 'sun' http://drupal.org/user/54136
Dashboard module Dashboard module
- ? - ?
Database logging module Database logging module
- Khalid Baheyeldin 'kbahey' <http://drupal.org/user/4063> - Khalid Baheyeldin 'kbahey' http://drupal.org/user/4063
Field module Field module
- Yves Chedemois 'yched' <http://drupal.org/user/39567> - Yves Chedemois 'yched' http://drupal.org/user/39567
- Barry Jaspan 'bjaspan' <http://drupal.org/user/46413> - Barry Jaspan 'bjaspan' http://drupal.org/user/46413
Field UI module Field UI module
- Yves Chedemois 'yched' <http://drupal.org/user/39567> - Yves Chedemois 'yched' http://drupal.org/user/39567
File module File module
- Aaron Winborn 'aaron' <http://drupal.org/user/33420> - Aaron Winborn 'aaron' http://drupal.org/user/33420
Filter module Filter module
- Daniel F. Kudwien 'sun' <http://drupal.org/user/54136> - Daniel F. Kudwien 'sun' http://drupal.org/user/54136
Forum module Forum module
- ? - Lee Rowlands 'larowlan' http://drupal.org/user/395439
Help module Help module
- ? - ?
Image module Image module
- Nathan Haug 'quicksketch' <http://drupal.org/user/35821> - Nathan Haug 'quicksketch' http://drupal.org/user/35821
Locale module Locale module
- Gábor Hojtsy 'Gábor Hojtsy' <http://drupal.org/user/4166> - Gábor Hojtsy 'Gábor Hojtsy' http://drupal.org/user/4166
Menu module Menu module
- ? - ?
Node module Node module
- Moshe Weitzman 'moshe weitzman' <http://drupal.org/user/23> - Moshe Weitzman 'moshe weitzman' http://drupal.org/user/23
- David Strauss 'David Strauss' <http://drupal.org/user/93254> - David Strauss 'David Strauss' http://drupal.org/user/93254
OpenID module OpenID module
- Heine Deelstra 'Heine' <http://drupal.org/user/17943> - Vojtech Kusy 'wojtha' http://drupal.org/user/56154
- Christian Schmidt 'c960657' <http://drupal.org/user/216078> - Christian Schmidt 'c960657' http://drupal.org/user/216078
- Damien Tournoud 'DamZ' <http://drupal.org/user/22211> - Damien Tournoud 'DamZ' http://drupal.org/user/22211
Overlay module Overlay module
- Katherine Senzee 'ksenzee' <http://drupal.org/user/139855> - Katherine Senzee 'ksenzee' http://drupal.org/user/139855
Path module Path module
- Dave Reid 'davereid' <http://drupal.org/user/53892> - Dave Reid 'davereid' http://drupal.org/user/53892
PHP module PHP module
- ? - ?
Poll module Poll module
- ? - Andrei Mateescu 'amateescu' http://drupal.org/user/729614
Profile module Profile module
- ? - ?
RDF module RDF module
- Stéphane Corlosquet 'scor' <http://drupal.org/user/52142> - Stéphane Corlosquet 'scor' http://drupal.org/user/52142
Search module Search module
- Doug Green 'douggreen' <http://drupal.org/user/29191> - Doug Green 'douggreen' http://drupal.org/user/29191
Shortcut module Shortcut module
- David Rothstein 'David_Rothstein' <http://drupal.org/user/124982> - David Rothstein 'David_Rothstein' http://drupal.org/user/124982
Simpletest module Simpletest module
- Jimmy Berry 'boombatower' <http://drupal.org/user/214218> - Jimmy Berry 'boombatower' http://drupal.org/user/214218
- Károly Négyesi 'chx' <http://drupal.org/user/9446> - Károly Négyesi 'chx' http://drupal.org/user/9446
Statistics module Statistics module
- Dave Reid 'davereid' <http://drupal.org/user/53892> - Tim Millwood 'timmillwood' http://drupal.org/user/227849
Syslog module Syslog module
- Khalid Baheyeldin 'kbahey' <http://drupal.org/user/4063> - Khalid Baheyeldin 'kbahey' http://drupal.org/user/4063
System module System module
- ? - ?
Taxonomy module Taxonomy module
- Nathaniel Catchpole 'catch' <http://drupal.org/user/35733> - Jess Myrbo 'xjm' http://drupal.org/user/65776
- Benjamin Doherty 'bangpound' <http://drupal.org/user/100456> - Nathaniel Catchpole 'catch' http://drupal.org/user/35733
- Benjamin Doherty 'bangpound' http://drupal.org/user/100456
Toolbar module Toolbar module
- ? - ?
Tracker module Tracker module
- David Strauss 'David Strauss' <http://drupal.org/user/93254> - David Strauss 'David Strauss' http://drupal.org/user/93254
Translation module Translation module
- Francesco Placella 'plach' <http://drupal.org/user/183211> - Francesco Placella 'plach' http://drupal.org/user/183211
Trigger module Trigger module
- ? - ?
Update module Update module
- Derek Wright 'dww' <http://drupal.org/user/46549> - Derek Wright 'dww' http://drupal.org/user/46549
- Dave Reid 'davereid' <http://drupal.org/user/53892>
User module User module
- Moshe Weitzman 'moshe weitzman' <http://drupal.org/user/23> - Moshe Weitzman 'moshe weitzman' http://drupal.org/user/23
- David Strauss 'David Strauss' <http://drupal.org/user/93254> - David Strauss 'David Strauss' http://drupal.org/user/93254
Theme maintainers Theme maintainers
----------------- -----------------
Bartik theme Bartik theme
- Jen Simmons 'jensimmons' <http://drupal.org/user/140882> - Jen Simmons 'jensimmons' http://drupal.org/user/140882
- Jeff Burns 'Jeff Burnz' <http://drupal.org/user/61393> - Jeff Burns 'Jeff Burnz' http://drupal.org/user/61393
Garland theme Garland theme
- ? - John Albin Wilkins 'JohnAlbin' http://drupal.org/user/32095
Seven theme Seven theme
- Jeff Burns 'Jeff Burnz' <http://drupal.org/user/61393> - Jeff Burns 'Jeff Burnz' http://drupal.org/user/61393
Stark theme Stark theme
- John Wilkins 'JohnAlbin' <http://drupal.org/user/32095> - John Albin Wilkins 'JohnAlbin' http://drupal.org/user/32095
## Requirements:
* [Core drupal requirements](http://drupal.org/requirements)
* PHP LDAP Extension
* PHP Tidy Extension (for migration tool)
## Get Started:
In this example the web root is /Library/WebServer/Documents and Apache runs as _www - modify the instructions below according to your setup
* Fork UNL-Information-Services/UNL-CMS and clone your fork into /Library/WebServer/Documents/workspace/UNL-CMS
* Create a local database (example name: unlcms)
* From /Library/WebServer/Documents/workspace/UNL-CMS run:
git submodule init
git submodule update
* Create this file in your home directory with a name like resetunlcms.sh
echo 'Resetting UNL-CMS... Get ready for action!'
mysqldump -uYOURUSERNAME -pYOURPASS --add-drop-table --no-data unlcms | grep ^DROP | mysql -uYOURUSERNAME -pYOURPASS unlcms
echo 'unlcms database emptied....'
cd /Library/WebServer/Documents/workspace/UNL-CMS/sites/default
rm -rf files
rm settings.php
mkdir files
chown _www files
cp default.settings.php settings.php
chown _www settings.php
cd /Library/WebServer/Documents/workspace/UNL-CMS/sites
sudo rm -rf localhost.*
sudo rm -rf MYDEVMACHINE.unl.edu.*
sudo rm -rf unl.edu.*
sudo rm sites.php
cp example.sites.php sites.php
echo 'Resetting .htaccess'
cd /Library/WebServer/Documents/workspace/UNL-CMS
sudo rm .htaccess
sudo rm .htaccess-subsite-map.txt
cp .htaccess.sample .htaccess
cp .htaccess-subsite-map.txt.sample .htaccess-subsite-map.txt
sudo chown YOURUSER .htaccess
sudo chown YOURUSER .htaccess-subsite-map.txt
sed -i "" 's/# RewriteBase \/drupal\//RewriteBase \/workspace\/UNL-CMS\//' ".htaccess"
echo 'Done.'
echo 'Note: If you want clean urls you need to look at the .htaccess file where it says "Allow public files to be accessed without the sites/<site_dir>/files prefix"';
* Run that script. (Can also be run whenever you want to reset your dev environment.)
sudo sh ~/resetunlcms.sh
* Go to http://localhost/workspace/UNL-CMS and go through the install process
## Install Issues:
* Can't create a new site with Drush/UNL Cron if pdo_pgsql is enabled
If pdo_pgsql is enabled on the php install that is running drush/unl cron then it will fail without modification.
Adding the following junk values for pgsql solves the problem at line 414 (D7.10) of install_run_task inside install.core.inc
$form_state['values']['pgsql']['username'] = 'xxxx'; //add this
$form_state['values']['pgsql']['database'] = 'xxxx'; //add this
drupal_form_submit($function, $form_state); //existing code
$errors = form_get_errors(); //existing code
## Hacks of Core:
* includes/bootstrap.inc
- function drupal_settings_initialize(). UNL change: include a "global" settings file that applies to all sites.
- function conf_path(). UNL change: Add $default_domains array support for sites.php to list which domains are ok to use with 'unl.edu.*' site_dirs.
If no $default_domains array is defined in sites.php, this code will do nothing.
- Fix so that drupal_serve_page_from_cache() won't override a cached Vary header. http://drupal.org/node/1321086
* rewrite.php
This custom file is used to allow public files to be accessed without the sites/<site_dir>/files prefix.
* sites/sites.php
Added support for $default_domains array. See conf_path() in includes/bootstrap.inc
* sites/example.sites.php
Added an example of the $default_domains array. Added the stub record needed for creating site aliases.
* modules/field/modules/text/text.module
- Add nl2br() on Plain Text processor. See http://drupal.org/node/1152216#comment-7174876
## Hacks of Contrib modules:
* drush/commands/core/drupal/site_install.inc
- function drush_core_site_install_version(). UNL change: Setting this to FALSE because we don't want them and they're hard coded.
* drush/commands/core/site_install.drush.inc
- function drush_core_pre_site_install(). UNL change: Inserted a return before code that would otherwise drop the entire database.
* drush/includes/environment.inc
- Fix so that drush pulls in the correct uri parameter. See http://drupal.org/node/1331106
* entity/entity.module, entity/modules/callbacks.inc
- Add 'uri callback' for file entities. See http://drupal.org/node/1481372#comment-6529650
* media/includes/media.variables.inc
- Convert FILE_ENTITY_DEFAULT_ALLOWED_EXTENSIONS to the new variable. See http://drupal.org/node/1846674#comment-6760286
* og_menu
- Applied og_menu-jquery_selector.patch. See:http://drupal.org/node/1051542
* redirect
- Merge global redirect functions into Redirect module. See http://drupal.org/node/905914
* upload_replace.module
- Drupal 7 bug fixes. See http://drupal.org/node/1115484#comment-5646558
* webform.module
- Make Safe Key values accessible via tokens. See http://drupal.org/node/1340010#comment-6709520 Patch applied: http://drupal.org/files/webform-1340010-19.patch
* workbench_moderation.module
- Fix broken books in workbench_moderation_node_presave(). See http://drupal.org/node/1505060
* wysiwyg/editors/js/tinymce-3.js
- Comment out the part that switches wrappers from table-based to div. We need the original TinyMCE code for the PDW toggle plugin to work
## How to Contribute
Development is handled through GitHub
All code changes must be committed via git to a local fork and contributed back to the project via a pull request.
Ideally each developer should have a fork of the project on GitHub where they can push changes.
In your local clone:
* git pull origin develop
* git checkout -b topics/whatever-you-work-on (or bugfix/NUM — for bugs)
* write code and commit
* git push origin topics/whatever-you-work-on
* on github open a pull request from your branch to develop
* have someone else review
Another developer will review your changes and merge in to the develop branch.
CONTENTS OF THIS FILE
---------------------
* About Drupal
* Configuration and features
* Installation profiles
* Appearance
* Developing for Drupal
ABOUT DRUPAL
------------
Drupal is an open source content management platform supporting a variety of
websites ranging from personal weblogs to large community-driven websites. For
more information, see the Drupal website at http://drupal.org/, and join the
Drupal community at http://drupal.org/community.
Legal information about Drupal:
* Know your rights when using Drupal:
See LICENSE.txt in the same directory as this document.
* Learn about the Drupal trademark and logo policy:
http://drupal.com/trademark
CONFIGURATION AND FEATURES
--------------------------
Drupal core (what you get when you download and extract a drupal-x.y.tar.gz or
drupal-x.y.zip file from http://drupal.org/project/drupal) has what you need to
get started with your website. It includes several modules (extensions that add
functionality) for common website features, such as managing content, user
accounts, image uploading, and search. Core comes with many options that allow
site-specific configuration. In addition to the core modules, there are
thousands of contributed modules (for functionality not included with Drupal
core) available for download.
More about configuration:
* Install, upgrade, and maintain Drupal:
See INSTALL.txt and UPGRADE.txt in the same directory as this document.
* Learn about how to use Drupal to create your site:
http://drupal.org/documentation
* Download contributed modules to sites/all/modules to extend Drupal's
functionality:
http://drupal.org/project/modules
* See also: "Developing for Drupal" for writing your own modules, below.
INSTALLATION PROFILES
---------------------
Installation profiles define additional steps (such as enabling modules,
defining content types, etc.) that run after the base installation provided
by core when Drupal is first installed. There are two basic installation
profiles provided with Drupal core.
Installation profiles from the Drupal community modify the installation process
to provide a website for a specific use case, such as a CMS for media
publishers, a web-based project tracking tool, or a full-fledged CRM for
non-profit organizations raising money and accepting donations. They can be
distributed as bare installation profiles or as "distributions". Distributions
include Drupal core, the installation profile, and all other required
extensions, such as contributed and custom modules, themes, and third-party
libraries. Bare installation profiles require you to download Drupal Core and
the required extensions separately; place the downloaded profile in the
/profiles directory before you start the installation process. Note that the
contents of this directory may be overwritten during updates of Drupal core;
it is advised to keep code backups or use a version control system.
Additionally, modules and themes may be placed inside subdirectories in a
specific installation profile such as profiles/your_site_profile/modules and
profiles/your_site_profile/themes respectively to restrict their usage to only
sites that were installed with that specific profile.
More about installation profiles and distributions:
* Read about the difference between installation profiles and distributions:
http://drupal.org/node/1089736
* Download contributed installation profiles and distributions:
http://drupal.org/project/distributions
* Develop your own installation profile or distribution:
http://drupal.org/developing/distributions
APPEARANCE
----------
In Drupal, the appearance of your site is set by the theme (themes are
extensions that set fonts, colors, and layout). Drupal core comes with several
themes. More themes are available for download, and you can also create your own
custom theme.
More about themes:
* Download contributed themes to sites/all/themes to modify Drupal's
appearance:
http://drupal.org/project/themes
* Develop your own theme:
http://drupal.org/documentation/theme
DEVELOPING FOR DRUPAL
---------------------
Drupal contains an extensive API that allows you to add to and modify the
functionality of your site. The API consists of "hooks", which allow modules to
react to system events and customize Drupal's behavior, and functions that
standardize common operations such as database queries and form generation. The
flexible hook architecture means that you should never need to directly modify
the files that come with Drupal core to achieve the functionality you want;
instead, functionality modifications take the form of modules.
When you need new functionality for your Drupal site, search for existing
contributed modules. If you find a module that matches except for a bug or an
additional needed feature, change the module and contribute your improvements
back to the project in the form of a "patch". Create new custom modules only
when nothing existing comes close to what you need.
More about developing:
* Search for existing contributed modules:
http://drupal.org/project/modules
* Contribute a patch:
http://drupal.org/patch/submit
* Develop your own module:
http://drupal.org/developing/modules
* Follow best practices:
http://drupal.org/best-practices
* Refer to the API documentation:
http://api.drupal.org/api/drupal/7
// $Id: UPGRADE.txt,v 1.25 2010/10/04 07:20:38 webchick Exp $ INTRODUCTION
------------
This document describes how to:
UPGRADING * Update your Drupal site from one minor 7.x version to another minor 7.x
--------- version; for example, from 7.8 to 7.9, or from 7.6 to 7.10.
Prior to upgrading, you should ensure that: * Upgrade your Drupal site's major version from 6.x to 7.x.
* Your system meets or exceeds Drupal's minimum requirements as shown at First steps and definitions:
http://drupal.org/requirements.
* You have a backup of all your relevant data (#1).
* Custom and contributed modules have been checked for compatibility (#11).
* Custom and contributed themes have been checked for compatibility (#11).
* You have read through this entire document.
If you are upgrading from one major version to another (i.e., 6.x to 7.x), * If you are upgrading to Drupal version x.y, then x is known as the major
you must first upgrade to the latest version of your current release. version number, and y is known as the minor version number. The download
file will be named drupal-x.y.tar.gz (or drupal-x.y.zip).
Let's begin! * All directories mentioned in this document are relative to the directory of
your Drupal installation.
1. Back up your Drupal database and site root directory. Be especially sure * Make a full backup of all files, directories, and your database(s) before
to back up your "sites" directory which contains your configuration file, starting, and save it outside your Drupal installation directory.
added modules and themes, and your site's uploaded files. If other files Instructions may be found at http://drupal.org/upgrade/backing-up-the-db
have modifications, such as .htaccess or robots.txt, back those up as well.
Note: for a single site setup, the configuration file is the "settings.php" * It is wise to try an update or upgrade on a test copy of your site before
file located at sites/default/settings.php. The default.settings.php file applying it to your live site. Even minor updates can cause your site's
contains a clean copy for restoration purposes, if required. behavior to change.
For multisite configurations, the configuration file is located in a * Each new release of Drupal has release notes, which explain the changes made
structure like the following: since the previous version and any special instructions needed to update or
upgrade to the new version. You can find a link to the release notes for the
version you are upgrading or updating to on the Drupal project page
(http://drupal.org/project/drupal).
sites/default/settings.php UPGRADE PROBLEMS
sites/example.com/settings.php ----------------
sites/sub.example.com/settings.php If you encounter errors during this process,
sites/sub.example.com.path/settings.php
More information on multisite configuration is located in INSTALL.txt. * Note any error messages you see.
2. If possible, log on either as a user with the "Administer software updates" * Restore your site to its previous state, using the file and database backups
permission or as the user with user ID 1, which is the first account you created before you started the upgrade process. Do not attempt to do
created (also known as the site maintenance account). Only these accounts further upgrades on a site that had update problems.
will be able to automatically access update.php in step #10. There are
special instructions in step #10 if you are unable to log on as one of
these users. Do not close your browser until the final step is complete.
3. Place the site in "Offline" mode, to let the database updates run without * Consult one of the support options listed on http://drupal.org/support
interruption and avoid displaying errors to end users of the site. This
option is at http://www.example.com/?q=admin/config/development/maintenance
(replace www.example.com with your installation's domain name and path).
4. If using a custom or contributed theme, switch to a core theme such as More in-depth information on upgrading can be found at http://drupal.org/upgrade
Bartik or Garland.
5. Disable all custom and contributed modules. This includes any modules that MINOR VERSION UPDATES
are not listed under 'Core - required' or 'Core - optional' on ---------------------
http://www.example.com/?q=admin/build/modules (replace www.example.com with To update from one minor 7.x version of Drupal to any later 7.x version, after
your installation's domain name and path). following the instructions in the INTRODUCTION section at the top of this file:
6. Remove all old files and directories from the Drupal installation directory. 1. Log in as a user with the permission "Administer software updates".
7. Unpack the new files and directories into the Drupal installation directory. 2. Go to Administration > Configuration > Development > Maintenance mode.
Enable the "Put site into maintenance mode" checkbox and save the
configuration.
8. Copy your backed up "files" and "sites" directories to the Drupal 3. Remove all old core files and directories, except for the 'sites' directory
installation directory. If other system files such as .htaccess or and any custom files you added elsewhere.
robots.txt were customized, re-create the modifications in the new
versions of the files using the backups taken in step #1.
9. Verify the new configuration file to make sure it has correct information. If you made modifications to files like .htaccess or robots.txt, you will
need to re-apply them from your backup, after the new files are in place.
10. Run update.php by visiting http://www.example.com/update.php (replace Sometimes an update includes changes to default.settings.php (this will be
www.example.com with your Drupal installation's domain name and path). This noted in the release notes). If that's the case, follow these steps:
step will update the core database tables to the new Drupal installation.
Note: if you are unable to access update.php do the following: - Make a backup copy of your settings.php file, with a different file name.
- Open your settings.php file with a text editor. - Make a copy of the new default.settings.php file, and name the copy
settings.php (overwriting your previous settings.php file).
- There is a line that says $update_free_access = FALSE; - Copy the custom and site-specific entries from the backup you made into the
Change it to $update_free_access = TRUE; new settings.php file. You will definitely need the lines giving the
database information, and you will also want to copy in any other
customizations you have added.
- Once update.php is done, you must change the settings.php file 4. Download the latest Drupal 7.x release from http://drupal.org to a
back to its original form with $update_free_access = FALSE; directory outside of your web root. Extract the archive and copy the files
into your Drupal directory.
11. Ensure that the versions of all custom and contributed modules match the On a typical Unix/Linux command line, use the following commands to download
new Drupal version to which you have updated. For a major update, such as and extract:
from 6.x to 7.x, modules from previous versions will not be compatible
and updated versions will be required.
- For contributed modules, check http://drupal.org/project/modules wget http://drupal.org/files/projects/drupal-x.y.tar.gz
for the version of a module matching your version of Drupal. tar -zxvf drupal-x.y.tar.gz
- For custom modules, review http://drupal.org/update/modules to This creates a new directory drupal-x.y/ containing all Drupal files and
ensure that a custom module is compatible with the current version. directories. Copy the files into your Drupal installation directory:
12. Re-enable custom and contributed modules and re-run update.php cp -R drupal-x.y/* drupal-x.y/.htaccess /path/to/your/installation
to update custom and contributed database tables.
13. Return the site to its original theme (if you switched to a core theme in If you do not have command line access to your server, download the archive
step #4). If your site uses a custom or contributed theme, make sure it is from http://drupal.org using your web browser, extract it, and then use an
compatible with your version of Drupal. FTP client to upload the files to your web root.
- For contributed themes, check http://drupal.org/project/themes 5. Re-apply any modifications to files such as .htaccess or robots.txt.
for the version of a theme matching your version of Drupal.
- For custom themes, review http://drupal.org/update/theme to ensure 6. Run update.php by visiting http://www.example.com/update.php (replace
that a custom theme is compatible with the current version. www.example.com with your domain name). This will update the core database
tables.
14. Finally, return your site to "Online" mode so your visitors may resume If you are unable to access update.php do the following:
browsing. As in step #3, this option is available in your administration
screens at http://www.example.com/?q=admin/config/development/maintenance
(replace www.example.com with your installation's domain name and path).
For more information on upgrading, visit - Open settings.php with a text editor.
the Drupal handbook at http://drupal.org/upgrade
- Find the line that says:
$update_free_access = FALSE;
- Change it into:
$update_free_access = TRUE;
- Once the upgrade is done, $update_free_access must be reverted to FALSE.
7. Go to Administration > Reports > Status report. Verify that everything is
working as expected.
8. Ensure that $update_free_access is FALSE in settings.php.
9. Go to Administration > Configuration > Development > Maintenance mode.
Disable the "Put site into maintenance mode" checkbox and save the
configuration.
MAJOR VERSION UPGRADE
---------------------
To upgrade from a previous major version of Drupal to Drupal 7.x, after
following the instructions in the INTRODUCTION section at the top of this file:
1. Check on the Drupal 7 status of your contributed and custom modules and
themes. See http://drupal.org/node/948216 for information on upgrading
contributed modules and themes. See http://drupal.org/node/895314 for a list
of modules that have been moved into core for Drupal 7, and instructions on
how to update them. See http://drupal.org/update/modules for information on
how to update your custom modules, and http://drupal.org/update/theme for
custom themes.
You may decide at this point that you cannot upgrade your site, because
needed modules or themes are not ready for Drupal 7.
2. Update to the latest available version of Drupal 6.x (if your current version
is Drupal 5.x, you have to upgrade to 6.x first). If you need to update,
download Drupal 6.x and follow the instructions in its UPGRADE.txt. This
document only applies for upgrades from 6.x to 7.x.
3. In addition to updating to the latest available version of Drupal 6.x core,
you must also upgrade all of your contributed modules for Drupal to their
latest Drupal 6.x versions.
4. Log in as user ID 1 (the site maintenance user).
5. Go to Administer > Site configuration > Site maintenance. Select
"Off-line" and save the configuration.
6. Go to Administer > Site building > Themes. Enable "Garland" and select it as
the default theme.
7. Go to Administer > Site building > Modules. Disable all modules that are not
listed under "Core - required" or "Core - optional". It is possible that some
modules cannot be disabled, because others depend on them. Repeat this step
until all non-core modules are disabled.
If you know that you will not re-enable some modules for Drupal 7.x and you
no longer need their data, then you can uninstall them under the Uninstall
tab after disabling them.
8. On the command line or in your FTP client, remove the file
sites/default/default.settings.php
9. Remove all old core files and directories, except for the 'sites' directory
and any custom files you added elsewhere.
If you made modifications to files like .htaccess or robots.txt, you will
need to re-apply them from your backup, after the new files are in place.
10. If you uninstalled any modules, remove them from the sites/all/modules and
other sites/*/modules directories. Leave other modules in place, even though
they are incompatible with Drupal 7.x.
11. Download the latest Drupal 7.x release from http://drupal.org to a
directory outside of your web root. Extract the archive and copy the files
into your Drupal directory.
On a typical Unix/Linux command line, use the following commands to download
and extract:
wget http://drupal.org/files/projects/drupal-x.y.tar.gz
tar -zxvf drupal-x.y.tar.gz
This creates a new directory drupal-x.y/ containing all Drupal files and
directories. Copy the files into your Drupal installation directory:
cp -R drupal-x.y/* drupal-x.y/.htaccess /path/to/your/installation
If you do not have command line access to your server, download the archive
from http://drupal.org using your web browser, extract it, and then use an
FTP client to upload the files to your web root.
12. Re-apply any modifications to files such as .htaccess or robots.txt.
13. Make your settings.php file writeable, so that the update process can
convert it to the format of Drupal 7.x. settings.php is usually located in
sites/default/settings.php
14. Run update.php by visiting http://www.example.com/update.php (replace
www.example.com with your domain name). This will update the core database
tables.
If you are unable to access update.php do the following:
- Open settings.php with a text editor.
- Find the line that says:
$update_free_access = FALSE;
- Change it into:
$update_free_access = TRUE;
- Once the upgrade is done, $update_free_access must be reverted to FALSE.
15. Backup your database after the core upgrade has run.
16. Replace and update your non-core modules and themes, following the
procedures at http://drupal.org/node/948216
17. Go to Administration > Reports > Status report. Verify that everything is
working as expected.
18. Ensure that $update_free_access is FALSE in settings.php.
19. Go to Administration > Configuration > Development > Maintenance mode.
Disable the "Put site into maintenance mode" checkbox and save the
configuration.
To get started with Drupal 7 administration, visit
http://drupal.org/getting-started/7/admin
<?php <?php
// $Id: authorize.php,v 1.8 2010/04/22 10:16:24 webchick Exp $
/** /**
* @file * @file
* Administrative script for running authorized file operations. * Administrative script for running authorized file operations.
* *
* Using this script, the site owner (the user actually owning the files on * Using this script, the site owner (the user actually owning the files on the
* the webserver) can authorize certain file-related operations to proceed * webserver) can authorize certain file-related operations to proceed with
* with elevated privileges, for example to deploy and upgrade modules or * elevated privileges, for example to deploy and upgrade modules or themes.
* themes. Users should not visit this page directly, but instead use an * Users should not visit this page directly, but instead use an administrative
* administrative user interface which knows how to redirect the user to this * user interface which knows how to redirect the user to this script as part of
* script as part of a multistep process. This script actually performs the * a multistep process. This script actually performs the selected operations
* selected operations without loading all of Drupal, to be able to more * without loading all of Drupal, to be able to more gracefully recover from
* gracefully recover from errors. Access to the script is controlled by a * errors. Access to the script is controlled by a global killswitch in
* global killswitch in settings.php ('allow_authorize_operations') and via * settings.php ('allow_authorize_operations') and via the 'administer software
* the 'administer software updates' permission. * updates' permission.
* *
* There are helper functions for setting up an operation to run via this * There are helper functions for setting up an operation to run via this
* system in modules/system/system.module. For more information, see: * system in modules/system/system.module. For more information, see:
...@@ -22,21 +21,22 @@ ...@@ -22,21 +21,22 @@
*/ */
/** /**
* Root directory of Drupal installation. * Defines the root directory of the Drupal installation.
*/ */
define('DRUPAL_ROOT', getcwd()); define('DRUPAL_ROOT', getcwd());
/** /**
* Global flag to identify update.php and authorize.php runs, and so * Global flag to identify update.php and authorize.php runs.
* avoid various unwanted operations, such as hook_init() and *
* hook_exit() invokes, css/js preprocessing and translation, and * Identifies update.php and authorize.php runs, avoiding unwanted operations
* solve some theming issues. This flag is checked on several places * such as hook_init() and hook_exit() invokes, css/js preprocessing and
* in Drupal code (not just authorize.php). * translation, and solves some theming issues. The flag is checked in other
* places in Drupal code (not just authorize.php).
*/ */
define('MAINTENANCE_MODE', 'update'); define('MAINTENANCE_MODE', 'update');
/** /**
* Render a 403 access denied page for authorize.php * Renders a 403 access denied page for authorize.php.
*/ */
function authorize_access_denied_page() { function authorize_access_denied_page() {
drupal_add_http_header('Status', '403 Forbidden'); drupal_add_http_header('Status', '403 Forbidden');
...@@ -46,13 +46,13 @@ function authorize_access_denied_page() { ...@@ -46,13 +46,13 @@ function authorize_access_denied_page() {
} }
/** /**
* Determine if the current user is allowed to run authorize.php. * Determines if the current user is allowed to run authorize.php.
* *
* The killswitch in settings.php overrides all else, otherwise, the user must * The killswitch in settings.php overrides all else, otherwise, the user must
* have access to the 'administer software updates' permission. * have access to the 'administer software updates' permission.
* *
* @return * @return
* TRUE if the current user can run authorize.php, otherwise FALSE. * TRUE if the current user can run authorize.php, and FALSE if not.
*/ */
function authorize_access_allowed() { function authorize_access_allowed() {
return variable_get('allow_authorize_operations', TRUE) && user_access('administer software updates'); return variable_get('allow_authorize_operations', TRUE) && user_access('administer software updates');
...@@ -61,7 +61,6 @@ function authorize_access_allowed() { ...@@ -61,7 +61,6 @@ function authorize_access_allowed() {
// *** Real work of the script begins here. *** // *** Real work of the script begins here. ***
require_once DRUPAL_ROOT . '/includes/bootstrap.inc'; require_once DRUPAL_ROOT . '/includes/bootstrap.inc';
require_once DRUPAL_ROOT . '/includes/session.inc';
require_once DRUPAL_ROOT . '/includes/common.inc'; require_once DRUPAL_ROOT . '/includes/common.inc';
require_once DRUPAL_ROOT . '/includes/file.inc'; require_once DRUPAL_ROOT . '/includes/file.inc';
require_once DRUPAL_ROOT . '/includes/module.inc'; require_once DRUPAL_ROOT . '/includes/module.inc';
...@@ -75,7 +74,7 @@ drupal_bootstrap(DRUPAL_BOOTSTRAP_SESSION); ...@@ -75,7 +74,7 @@ drupal_bootstrap(DRUPAL_BOOTSTRAP_SESSION);
global $conf; global $conf;
// We have to enable the user and system modules, even to check access and // We have to enable the user and system modules, even to check access and
// display errors via the maintainence theme. // display errors via the maintenance theme.
$module_list['system']['filename'] = 'modules/system/system.module'; $module_list['system']['filename'] = 'modules/system/system.module';
$module_list['user']['filename'] = 'modules/user/user.module'; $module_list['user']['filename'] = 'modules/user/user.module';
module_list(TRUE, FALSE, FALSE, $module_list); module_list(TRUE, FALSE, FALSE, $module_list);
...@@ -113,7 +112,7 @@ if (authorize_access_allowed()) { ...@@ -113,7 +112,7 @@ if (authorize_access_allowed()) {
} }
if (isset($_SESSION['authorize_operation']['page_title'])) { if (isset($_SESSION['authorize_operation']['page_title'])) {
drupal_set_title(check_plain($_SESSION['authorize_operation']['page_title'])); drupal_set_title($_SESSION['authorize_operation']['page_title']);
} }
else { else {
drupal_set_title(t('Authorize file system changes')); drupal_set_title(t('Authorize file system changes'));
...@@ -125,10 +124,10 @@ if (authorize_access_allowed()) { ...@@ -125,10 +124,10 @@ if (authorize_access_allowed()) {
// Clear the session out. // Clear the session out.
unset($_SESSION['authorize_results']); unset($_SESSION['authorize_results']);
unset($_SESSION['authorize_operation']); unset($_SESSION['authorize_operation']);
unset($_SESSION['authorize_filetransfer_backends']); unset($_SESSION['authorize_filetransfer_info']);
if (!empty($results['page_title'])) { if (!empty($results['page_title'])) {
drupal_set_title(check_plain($results['page_title'])); drupal_set_title($results['page_title']);
} }
if (!empty($results['page_message'])) { if (!empty($results['page_message'])) {
drupal_set_message($results['page_message']['message'], $results['page_message']['type']); drupal_set_message($results['page_message']['message'], $results['page_message']['type']);
...@@ -140,20 +139,21 @@ if (authorize_access_allowed()) { ...@@ -140,20 +139,21 @@ if (authorize_access_allowed()) {
if (is_array($results['tasks'])) { if (is_array($results['tasks'])) {
$links += $results['tasks']; $links += $results['tasks'];
} }
else {
$links = array_merge($links, array(
l(t('Administration pages'), 'admin'),
l(t('Front page'), '<front>'),
));
}
$links = array_merge($links, array( $output .= theme('item_list', array('items' => $links, 'title' => t('Next steps')));
l(t('Administration pages'), 'admin'),
l(t('Front page'), '<front>'),
));
$output .= theme('item_list', array('items' => $links));
} }
// If a batch is running, let it run. // If a batch is running, let it run.
elseif (isset($_GET['batch'])) { elseif (isset($_GET['batch'])) {
$output = _batch_page(); $output = _batch_page();
} }
else { else {
if (empty($_SESSION['authorize_operation']) || empty($_SESSION['authorize_filetransfer_backends'])) { if (empty($_SESSION['authorize_operation']) || empty($_SESSION['authorize_filetransfer_info'])) {
$output = t('It appears you have reached this page in error.'); $output = t('It appears you have reached this page in error.');
} }
elseif (!$batch = batch_get()) { elseif (!$batch = batch_get()) {
...@@ -172,4 +172,3 @@ else { ...@@ -172,4 +172,3 @@ else {
if (!empty($output)) { if (!empty($output)) {
print theme('update_page', array('content' => $output, 'show_messages' => $show_messages)); print theme('update_page', array('content' => $output, 'show_messages' => $show_messages));
} }
<?php <?php
// $Id: cron.php,v 1.43 2009/11/02 03:30:49 webchick Exp $
/** /**
* @file * @file
......
<?php <?php
// $Id: actions.inc,v 1.39 2010/08/22 11:04:09 dries Exp $
/** /**
* @file * @file
...@@ -23,7 +22,7 @@ ...@@ -23,7 +22,7 @@
* - $a1, $a2: Optional additional information, which can be passed into * - $a1, $a2: Optional additional information, which can be passed into
* actions_do() and will be passed along to the action function. * actions_do() and will be passed along to the action function.
* *
* @} End of "defgroup actions". * @}
*/ */
/** /**
...@@ -49,6 +48,7 @@ ...@@ -49,6 +48,7 @@
* Passed along to the callback. * Passed along to the callback.
* @param $a2 * @param $a2
* Passed along to the callback. * Passed along to the callback.
*
* @return * @return
* An associative array containing the results of the functions that * An associative array containing the results of the functions that
* perform the actions, keyed on action ID. * perform the actions, keyed on action ID.
...@@ -150,6 +150,7 @@ function actions_do($action_ids, $object = NULL, $context = NULL, $a1 = NULL, $a ...@@ -150,6 +150,7 @@ function actions_do($action_ids, $object = NULL, $context = NULL, $a1 = NULL, $a
* *
* @param $reset * @param $reset
* Reset the action info static cache. * Reset the action info static cache.
*
* @return * @return
* An associative array keyed on action function name, with the same format * An associative array keyed on action function name, with the same format
* as the return value of hook_action_info(), containing all * as the return value of hook_action_info(), containing all
...@@ -177,9 +178,9 @@ function actions_list($reset = FALSE) { ...@@ -177,9 +178,9 @@ function actions_list($reset = FALSE) {
* function and the actions returned by actions_list() are partially * function and the actions returned by actions_list() are partially
* synchronized. Non-configurable actions from hook_action_info() * synchronized. Non-configurable actions from hook_action_info()
* implementations are put into the database when actions_synchronize() is * implementations are put into the database when actions_synchronize() is
* called, which happens when admin/config/system/actions is visited. Configurable * called, which happens when admin/config/system/actions is visited.
* actions are not added to the database until they are configured in the * Configurable actions are not added to the database until they are configured
* user interface, in which case a database row is created for each * in the user interface, in which case a database row is created for each
* configuration of each action. * configuration of each action.
* *
* @return * @return
...@@ -206,6 +207,7 @@ function actions_get_all_actions() { ...@@ -206,6 +207,7 @@ function actions_get_all_actions() {
* An associative array with function names or action IDs as keys * An associative array with function names or action IDs as keys
* and associative arrays with keys 'label', 'type', etc. as values. * and associative arrays with keys 'label', 'type', etc. as values.
* This is usually the output of actions_list() or actions_get_all_actions(). * This is usually the output of actions_list() or actions_get_all_actions().
*
* @return * @return
* An associative array whose keys are hashes of the input array keys, and * An associative array whose keys are hashes of the input array keys, and
* whose corresponding values are associative arrays with components * whose corresponding values are associative arrays with components
...@@ -224,7 +226,7 @@ function actions_actions_map($actions) { ...@@ -224,7 +226,7 @@ function actions_actions_map($actions) {
} }
/** /**
* Given a hash of an action array key, returns the key (function or ID). * Returns an action array key (function or ID), given its hash.
* *
* Faster than actions_actions_map() when you only need the function name or ID. * Faster than actions_actions_map() when you only need the function name or ID.
* *
...@@ -232,6 +234,7 @@ function actions_actions_map($actions) { ...@@ -232,6 +234,7 @@ function actions_actions_map($actions) {
* Hash of a function name or action ID array key. The array key * Hash of a function name or action ID array key. The array key
* is a key into the return value of actions_list() (array key is the action * is a key into the return value of actions_list() (array key is the action
* function name) or actions_get_all_actions() (array key is the action ID). * function name) or actions_get_all_actions() (array key is the action ID).
*
* @return * @return
* The corresponding array key, or FALSE if no match is found. * The corresponding array key, or FALSE if no match is found.
*/ */
...@@ -278,7 +281,7 @@ function actions_synchronize($delete_orphans = FALSE) { ...@@ -278,7 +281,7 @@ function actions_synchronize($delete_orphans = FALSE) {
// user adds the action. // user adds the action.
if (!$array['configurable']) { if (!$array['configurable']) {
// If we already have an action ID for this action, no need to assign aid. // If we already have an action ID for this action, no need to assign aid.
if (array_key_exists($callback, $actions_in_db)) { if (isset($actions_in_db[$callback])) {
unset($actions_in_db[$callback]); unset($actions_in_db[$callback]);
} }
else { else {
...@@ -312,7 +315,7 @@ function actions_synchronize($delete_orphans = FALSE) { ...@@ -312,7 +315,7 @@ function actions_synchronize($delete_orphans = FALSE) {
$link = l(t('Remove orphaned actions'), 'admin/config/system/actions/orphan'); $link = l(t('Remove orphaned actions'), 'admin/config/system/actions/orphan');
$count = count($actions_in_db); $count = count($actions_in_db);
$orphans = implode(', ', $orphaned); $orphans = implode(', ', $orphaned);
watchdog('actions', format_plural($count, 'One orphaned action (%orphans) exists in the actions table. !link', '@count orphaned actions (%orphans) exist in the actions table. !link'), array('@count' => $count, '%orphans' => $orphans, '!link' => $link), WATCHDOG_WARNING); watchdog('actions', '@count orphaned actions (%orphans) exist in the actions table. !link', array('@count' => $count, '%orphans' => $orphans, '!link' => $link), WATCHDOG_INFO);
} }
} }
} }
...@@ -333,6 +336,7 @@ function actions_synchronize($delete_orphans = FALSE) { ...@@ -333,6 +336,7 @@ function actions_synchronize($delete_orphans = FALSE) {
* to Jim'. * to Jim'.
* @param $aid * @param $aid
* The ID of this action. If omitted, a new action is created. * The ID of this action. If omitted, a new action is created.
*
* @return * @return
* The ID of the action. * The ID of the action.
*/ */
...@@ -362,6 +366,7 @@ function actions_save($function, $type, $params, $label, $aid = NULL) { ...@@ -362,6 +366,7 @@ function actions_save($function, $type, $params, $label, $aid = NULL) {
* *
* @param $aid * @param $aid
* The ID of the action to retrieve. * The ID of the action to retrieve.
*
* @return * @return
* The appropriate action row from the database as an object. * The appropriate action row from the database as an object.
*/ */
...@@ -381,4 +386,3 @@ function actions_delete($aid) { ...@@ -381,4 +386,3 @@ function actions_delete($aid) {
->execute(); ->execute();
module_invoke_all('actions_delete', $aid); module_invoke_all('actions_delete', $aid);
} }
This diff is collapsed.
<?php <?php
// $Id: archiver.inc,v 1.5 2010/02/01 07:17:59 webchick Exp $
/** /**
* @file * @file
...@@ -7,61 +6,63 @@ ...@@ -7,61 +6,63 @@
*/ */
/** /**
* Common interface for all Archiver classes. * Defines the common interface for all Archiver classes.
*/ */
interface ArchiverInterface { interface ArchiverInterface {
/** /**
* Constructor for a new archiver instance. * Constructs a new archiver instance.
* *
* @param $file_path * @param $file_path
* The full system path of the archive to manipulate. Only local files * The full system path of the archive to manipulate. Only local files
* are supported. If the file does not yet exist, it will be created if * are supported. If the file does not yet exist, it will be created if
* appropriate. * appropriate.
*/ */
public function __construct($file_path); public function __construct($file_path);
/** /**
* Add the specified file or directory to the archive. * Adds the specified file or directory to the archive.
* *
* @param $file_path * @param $file_path
* The full system path of the file or directory to add. Only local files * The full system path of the file or directory to add. Only local files
* and directories are supported. * and directories are supported.
*
* @return ArchiverInterface * @return ArchiverInterface
* The called object. * The called object.
*/ */
public function add($file_path); public function add($file_path);
/** /**
* Remove the specified file from the archive. * Removes the specified file from the archive.
* *
* @param $path * @param $path
* The file name relative to the root of the archive to remove. * The file name relative to the root of the archive to remove.
*
* @return ArchiverInterface * @return ArchiverInterface
* The called object. * The called object.
*/ */
public function remove($path); public function remove($path);
/** /**
* Extract multiple files in the archive to the specified path. * Extracts multiple files in the archive to the specified path.
* *
* @param $path * @param $path
* A full system path of the directory to which to extract files. * A full system path of the directory to which to extract files.
* @param $files * @param $files
* Optionally specify a list of files to be extracted. Files are * Optionally specify a list of files to be extracted. Files are
* relative to the root of the archive. If not specified, all files * relative to the root of the archive. If not specified, all files
* in the archive will be extracted * in the archive will be extracted.
*
* @return ArchiverInterface * @return ArchiverInterface
* The called object. * The called object.
*/ */
public function extract($path, Array $files = array()); public function extract($path, array $files = array());
/** /**
* List all files in the archive. * Lists all files in the archive.
* *
* @return * @return
* An array of file names relative to the root of the archive. * An array of file names relative to the root of the archive.
*/ */
public function listContents(); public function listContents();
} }