first import
339
sites/all/modules/panels_extra_layouts/LICENSE.txt
Normal file
@@ -0,0 +1,339 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Lesser General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
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 promoting the sharing and reuse of software generally.
|
||||
|
||||
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
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
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
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
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
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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
|
||||
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 WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License.
|
153
sites/all/modules/panels_extra_layouts/README.md
Normal file
@@ -0,0 +1,153 @@
|
||||
# Extra Layouts for the Panels Module
|
||||
|
||||
[Panels](http://drupal.org/project/panels) is one of the most, if not
|
||||
the most, **powerful** modules for laying out a page in
|
||||
[Drupal](http://drupal.org/project/drupal).
|
||||
|
||||
Panels builds on [CTools](http://drupal.org/project/ctools) which is
|
||||
a swiss army knife for doing all sorts of elaborated things in Drupal
|
||||
without having to hack the drupal core.
|
||||
|
||||
## The Bottom Line
|
||||
|
||||
This module provides a set of **fixed** and **adaptive** layouts for
|
||||
Panels.
|
||||
|
||||
**Fixed layouts** are those that have a **fixed** geometry. Meaning
|
||||
that no matter whatever is the content of each pane it will always use
|
||||
the defined layout.
|
||||
|
||||
**Adaptive layouts** are layouts that **adapt** to the
|
||||
content. Meaning that if a pane is empty then the pane that has
|
||||
content closer uses up that space. This idea is stolen from the
|
||||
[Panels Three Four](http://drupal.org/project/panels_three_four_layout)
|
||||
project. This idea has been developed so that the behaviour is
|
||||
consistent and allows for the creation of **153664** different
|
||||
layouts from a single template.
|
||||
|
||||
Note that adaptive layouts differ from the the flexible layouts
|
||||
created via the Panels UI. Adaptive layouts are basically fixed
|
||||
layouts that adapt when rendering to the way the content is
|
||||
distributed throughout the various regions. While flexible layouts are
|
||||
layouts that are built via the UI in which the template is generated
|
||||
on the fly when using the Panels layout designer.
|
||||
|
||||
This module provides **5** [two column layouts](#twocol-fixed), **4**
|
||||
[three column layouts](#threecol-fixed) and **2** [adaptive layouts](#adaptive).
|
||||
|
||||
## Installation
|
||||
|
||||
1. Download and install the module as usual.
|
||||
|
||||
2. Now when defining a new variant or redefining the layout of an
|
||||
existing one you should see the new layouts in the dropdown, under
|
||||
the `Columns: 2`, `Columns: 3` and a new item `Adaptive`.
|
||||
|
||||
3. Select one of the above layouts.
|
||||
|
||||
4. Proceed to add content to your liking.
|
||||
|
||||
5. Done.
|
||||
|
||||
|
||||
<h2 id="adaptive">Adaptive layouts</h2>
|
||||
|
||||
Adaptive layouts are sort of a *big deal*. This module provides the
|
||||
following adaptive layouts:
|
||||
|
||||
1. Adaptive 3x3 - 4x4
|
||||
|
||||
It's a grid (matrix) with 25 elements. The top three rows are
|
||||
have 3 columns and the bottom 4 rows have 4 columns. Hence 25 (3x3
|
||||
\+ 4x4) elements.
|
||||
|
||||

|
||||
|
||||
In each row any region/pane **expands to the right** until it finds
|
||||
another occupied region/pane. If the pane region is on the most
|
||||
to the right pane/region in a given column it **wraps** around,
|
||||
i.e., it uses the available space starting from the left. Consider
|
||||
an example where we use the center and right regions in row with 3
|
||||
elements the resulting layout will be 33/66.
|
||||
|
||||
On a **3 column row** the 4 possible **layouts** are:
|
||||
|
||||
100%, 33/66%, 66/33% and 33/33/33%
|
||||
|
||||
Since there are 3 rows with 3 columns we have 4x4x4 = 64 possible
|
||||
layouts on the 3x3 submatrix of the template.
|
||||
|
||||
On a **4 column row** the 7 possible **layouts** are:
|
||||
|
||||
100%, 25/75%, 75/25%, 50/50%, 25/50/25%, 50/25/25%, 25/25/50% and 25/25/25/25%.
|
||||
|
||||
There are 4 rows with 4 columns hence 7x7x7x7 = 2401 possible
|
||||
layouts on the 4x4 submatrix of the template.
|
||||
|
||||
2. Adaptive 4x4 - 3x3
|
||||
|
||||

|
||||
|
||||
This is the converse of the above layout, i.e., the 4x4 submatrix
|
||||
is on top and the 3x3 submatrix is below. The reasoning behind the
|
||||
architechture and usage is the same. Is just that now we have top
|
||||
part of the template on fourths the bottom part in thirds.
|
||||
|
||||
## Fixed layouts
|
||||
|
||||
<h3 id="twocol-fixed">Two columns</h3>
|
||||
|
||||
1. 63% 37% stacked
|
||||
|
||||

|
||||
|
||||
2. 77% 23% stacked
|
||||
|
||||

|
||||
|
||||
3. Bricks 25% 75% stacked
|
||||
|
||||

|
||||
|
||||
4. 70% 30% stacked
|
||||
|
||||

|
||||
|
||||
5. 30% 70% stacked
|
||||
|
||||

|
||||
|
||||
<h3 id="threecol-fixed">Three columns</h3>
|
||||
|
||||
|
||||
1. 42% 29% 29% stacked
|
||||
|
||||

|
||||
|
||||
2. 44% 37% 19% stacked
|
||||
|
||||

|
||||
|
||||
3. 44% 35% 21% stacked
|
||||
|
||||

|
||||
|
||||
4. 15% 70% 15% stacked
|
||||
|
||||

|
||||
|
||||
5. 7% 62% 31%
|
||||
|
||||

|
||||
|
||||
## Using this module as an example and contributing back
|
||||
|
||||
You can use this module as an example of a CTools layout
|
||||
plugin. Imagine that we can create a central repository of layout
|
||||
plugins. Albeit being true that creating a layout plugin is not
|
||||
terribly hard, time can be saved if there's a plethora of available
|
||||
layouts to choose from.
|
||||
|
||||
Please contribute back to this project by providing your
|
||||
layouts. Place a
|
||||
[pull request](http://help.github.com/pull-requests/).
|
40
sites/all/modules/panels_extra_layouts/css/base-grid.css
Normal file
@@ -0,0 +1,40 @@
|
||||
/* base-grid.css ---
|
||||
Copyright (C) 2010 António P. P. Almeida <appa@perusio.net>
|
||||
|
||||
Author: António P. P. Almeida <appa@perusio.net>
|
||||
|
||||
This program is free software, you can redistribute it and/or
|
||||
modify it under the terms of the new-style BSD license.
|
||||
You should have received a copy of the BSD license along with this
|
||||
program. If not, see <http://www.debian.org/misc/bsd.license>.
|
||||
|
||||
Inspired & stolen from Nicole Sullivan's OOCSS http://oocss.org
|
||||
This file is the base grid for the tinycss framework. */
|
||||
|
||||
@media screen and (max-width: 319px) {
|
||||
.unit {
|
||||
float: none !important;
|
||||
width: auto !important;
|
||||
}
|
||||
}
|
||||
|
||||
.line:after, .lastUnit:after {
|
||||
clear: both;
|
||||
display: block;
|
||||
visibility: hidden;
|
||||
overflow:hidden;
|
||||
height:0 !important;
|
||||
line-height: 0;
|
||||
font-size: xx-large;
|
||||
content: " x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x ";
|
||||
}
|
||||
|
||||
.unit {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.lastUnit {
|
||||
display: table-cell;
|
||||
float: none;
|
||||
width: auto;
|
||||
}
|
@@ -0,0 +1,18 @@
|
||||
name = Panels Extra Layouts
|
||||
description = Additional layouts for the Panels module.
|
||||
package = Panels
|
||||
php = 5.2
|
||||
core = 7.x
|
||||
dependencies[] = panels
|
||||
files[] = panels_extra_layouts.module
|
||||
;;; Local Variables:
|
||||
;;; mode: conf
|
||||
;;; coding: utf-8
|
||||
;;; End:
|
||||
|
||||
; Information added by drupal.org packaging script on 2011-10-22
|
||||
version = "7.x-1.5"
|
||||
core = "7.x"
|
||||
project = "panels_extra_layouts"
|
||||
datestamp = "1319324739"
|
||||
|
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
/**
|
||||
* @file panels_extra_layouts.module
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Wed Aug 3 04:36:20 2011
|
||||
*
|
||||
* @brief A module providing a series of extra layouts for Panels. Namely two
|
||||
* adaptive layouts.
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of hook_ctools_plugin_directory().
|
||||
*
|
||||
* It simply tells panels where to find the .inc files that define various
|
||||
* types of plugins: layouts, styles, args, contexts, content_types.
|
||||
*
|
||||
*/
|
||||
function panels_extra_layouts_ctools_plugin_directory($owner, $plugin_type) {
|
||||
// We're just providing layout plugins.
|
||||
if ($owner == 'panels' && $plugin_type == 'layouts') {
|
||||
return "plugins/$plugin_type";
|
||||
}
|
||||
} // panels_extra_layouts_ctools_plugin_directory
|
||||
|
||||
/**
|
||||
* The mapper function for computing the hash.
|
||||
*
|
||||
* @param $x integer
|
||||
* The index of the content array.
|
||||
* @return integer
|
||||
* The sum of all the 2nd digits in a given row of the content array.
|
||||
*/
|
||||
function panels_extra_layouts_adaptive_get_digit($x) {
|
||||
// array_pop requires a variable. Doh no love for FP on PHP :(.
|
||||
$last_digit = sscanf($x, "%*1d%d");
|
||||
return empty($x) ? 0 : array_pop($last_digit);
|
||||
} // panels_extra_layouts_adaptive_get_digit
|
||||
|
||||
/**
|
||||
* The hashing function is quite simple, hence imperfect. There are some
|
||||
* exceptions that are handled below to make the way the grid is filled
|
||||
* consistent.
|
||||
*
|
||||
* h(i) = \sum_{i}_{j = 1,n} get_digit(c(i,j))
|
||||
*
|
||||
* where i is the row number, j is the column number, c(i,j) is the content of
|
||||
* entry (i,j) of the content matrix and get_digit is a function that
|
||||
* returns m given a number nm, e.g., 41, returns 1.
|
||||
*
|
||||
* @param $indexes array
|
||||
* The indexes of a given row of the content array.
|
||||
* @param $columns integer
|
||||
* The number of columns in the current 'submatrix'.
|
||||
* @param $mapper_f string
|
||||
* The mapper function name.
|
||||
*
|
||||
* @return integer
|
||||
* The hash of a given row.
|
||||
*/
|
||||
function panels_extra_layouts_adaptive_hash($indexes = array(), $columns = 3, $mapper_f) {
|
||||
// Bail out if there are no elements.
|
||||
if (empty($indexes)) return 0;
|
||||
// Count the number of elements in the given row.
|
||||
$n = count($indexes);
|
||||
// Compute the hash.
|
||||
$h = $n == 1 ? 1 : array_sum(array_map($mapper_f, $indexes));
|
||||
// For 4 columns there are a couple of special cases where the hash is
|
||||
// ambiguous.
|
||||
if ($h != 0 && $columns == 4) {
|
||||
// If we are in a special situation correct it. The hashing function is quite
|
||||
// naive. It's the sum of the column indexes in each row.
|
||||
// Some cases we get an incorrect value that needs to be corrected.
|
||||
if ($n == 2 && $h == 6) return 4;
|
||||
if ($n == 2 && ($h == 7 || ($h == 5 && panels_extra_layouts_adaptive_get_digit($indexes[1]) == 3)))
|
||||
return 3;
|
||||
}
|
||||
return $h;
|
||||
} // panels_extra_layouts_adaptive_hash
|
@@ -0,0 +1,79 @@
|
||||
<?php
|
||||
/**
|
||||
* @file bricks-25-75-stacked.tpl.php
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Fri Dec 17 05:04:05 2010
|
||||
*
|
||||
* @brief Template for the 25/75 bricks panels layout.
|
||||
*
|
||||
*
|
||||
*/
|
||||
?>
|
||||
<div class="panel-display panel-bricks-25-75-stacked clear-block" <?php if (!empty($css_id)) { print "id=\"$css_id\""; } ?>>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit header-left firstUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['header_left']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit header-middle">
|
||||
<div class="inside">
|
||||
<?php print $content['header_middle']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel header-right lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['header_right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit top-stack lastUnit">
|
||||
<?php print $content['top_stack']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit left-column firstUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['left_column']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit right-column lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['right_column']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit bottom-unit firstUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['bottom_left']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit bottom-unit">
|
||||
<div class="inside">
|
||||
<?php print $content['bottom_middle_left']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit bottom-unit">
|
||||
<div class="inside">
|
||||
<?php print $content['bottom_middle_right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit bottom-unit lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['bottom_right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
@@ -0,0 +1,35 @@
|
||||
/* CSS file for the bricks 25/75 stacked layout. */
|
||||
@import url('../../../css/base-grid.css');
|
||||
|
||||
.header-left {
|
||||
width: 55%;
|
||||
}
|
||||
.header-middle {
|
||||
width: 15%;
|
||||
}
|
||||
.header-right {
|
||||
width: 30%;
|
||||
padding-right: .5em;
|
||||
}
|
||||
.top-stack {
|
||||
width: 100%;
|
||||
padding: 0 .5em 1em;
|
||||
}
|
||||
.bottom-unit, .left-column {
|
||||
width: 25%;
|
||||
}
|
||||
.right-column {
|
||||
width: 75%;
|
||||
}
|
||||
|
||||
|
||||
/* Margins taken from the Panels module plugins */
|
||||
.lastUnit .inside {
|
||||
margin: 0 0 1em .5em;
|
||||
}
|
||||
.firstUnit .inside {
|
||||
margin: 0 .5em 1em 0;
|
||||
}
|
||||
.unit .inside {
|
||||
margin: 0 .5em 1em .5em;
|
||||
}
|
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
/**
|
||||
* @file bricks_25_75_stacked.inc
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Fri Dec 17 05:00:37 2010
|
||||
*
|
||||
* @brief Panels plugin for the 25/75 stacked layout.
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
// Plugin definition.
|
||||
$plugin = array(
|
||||
'title' => t('Bricks 25/75 stacked'),
|
||||
'category' => t('Columns: 2'),
|
||||
'icon' => 'bricks_25_75_stacked.png',
|
||||
'theme' => 'bricks_25_75_stacked',
|
||||
'css' => 'bricks_25_75_stacked.css',
|
||||
'regions' => array(
|
||||
'header_left' => t('Header left'),
|
||||
'header_middle' => t('Header middle'),
|
||||
'header_right' => t('Header right'),
|
||||
'top_stack' => t('Top stack'),
|
||||
'left_column' => t('Left column'),
|
||||
'right_column' => t('Right column'),
|
||||
'bottom_left' => t('Bottom left'),
|
||||
'bottom_middle_left' => t('Bottom middle left'),
|
||||
'bottom_middle_right' => t('Bottom middle right'),
|
||||
'bottom_right' => t('Bottom right'),
|
||||
),
|
||||
);
|
@@ -0,0 +1,14 @@
|
||||
# ImageMagick MVG file for creating the Panels screenshot.
|
||||
viewbox 0 0 50 75
|
||||
fill white rectangle 0 0 50 75
|
||||
stroke black fill grey60 rectangle 2 2 25 12
|
||||
rectangle 27 2 34 12
|
||||
rectangle 36 2 48 12
|
||||
rectangle 2 14 48 25
|
||||
rectangle 2 27 12 60
|
||||
rectangle 14 27 48 60
|
||||
rectangle 2 62 12 72
|
||||
rectangle 14 62 24 72
|
||||
rectangle 26 62 36 72
|
||||
rectangle 38 62 48 72
|
||||
|
After Width: | Height: | Size: 484 B |
@@ -0,0 +1,239 @@
|
||||
<!-- -*- mode: html-helper; before-save-hook: nil -*- -->
|
||||
|
||||
<div class="panel-display panel-four-three-adaptive clear-block" <?php if (!empty($css_id)) { print "id=\"$css_id\""; } ?>>
|
||||
<!-- 4x4 grid -->
|
||||
<?php
|
||||
for ($j = 0; $j < 16; $j += 4):
|
||||
// Get the $content array keys of all non empty entries.
|
||||
$keys = array_keys(array_filter(array_slice($content, $j, 4, TRUE)));
|
||||
$h = panels_extra_layouts_adaptive_hash($keys, 4, 'panels_extra_layouts_adaptive_get_digit');
|
||||
// If all the row elements are empty then jump to the next row
|
||||
// immediately.
|
||||
if ($h == 0) continue;
|
||||
?>
|
||||
|
||||
<?php if ($h == 1): ?><!-- 100% - 1 column -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-one-hundred lastUnit">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 3): ?><!-- 25/75% - 2 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-seventy-five lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 4): ?><!-- 50/50% - 2 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-fifty">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-fifty lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 5): ?><!-- 75/25% - 2 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-seventy-five la">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h ==6 || $h == 9): ?><!-- 25/25/50% - 3 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-fifty lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[2]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 7): ?><!-- 25/50/25% - 3 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-fifty">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[2]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 8): ?><!-- 50/25/25% - 3 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-fifty">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[2]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 10): ?><!-- 25/25/25/25% - 4 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[2]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[3]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<?php endfor; ?>
|
||||
|
||||
<!-- 3x3 grid -->
|
||||
<?php
|
||||
for ($i = 16; $i < 25; $i += 3):
|
||||
// Get the $content array keys of all non empty entries.
|
||||
$keys = array_keys(array_filter(array_slice($content, $i, 3, TRUE)));
|
||||
$h = panels_extra_layouts_adaptive_hash($keys, 3, 'panels_extra_layouts_adaptive_get_digit');
|
||||
// If all the row elements are empty then jump to the next row
|
||||
// immediately.
|
||||
if ($h == 0) continue;
|
||||
?>
|
||||
|
||||
<?php if ($h == 1): ?><!-- 100% - 1 column -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-one-hundred lastUnit">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 3 || $h == 5): ?><!-- 33/66% - 2 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-thirty-three">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-sixty-six lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 4): ?><!-- 66/33% - 2 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-sixty-six">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-thirty-three lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 6): ?><!-- 33/33/33% - 3 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-thirty-three">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-thirty-three">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-thirty-three lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[2]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<?php endfor; ?>
|
||||
</div>
|
@@ -0,0 +1,37 @@
|
||||
/* CSS file for the four three adaptive layout */
|
||||
@import url('../../../css/base-grid.css');
|
||||
|
||||
.panel-col-twenty-five {
|
||||
width: 25%;
|
||||
}
|
||||
|
||||
.panel-col-thirty-three {
|
||||
width: 33%;
|
||||
}
|
||||
|
||||
.panel-col-fifty {
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
.panel-col-sixty-six {
|
||||
width: 66%;
|
||||
}
|
||||
|
||||
.panel-col-seventy-five {
|
||||
width: 75%;
|
||||
}
|
||||
|
||||
.panel-one-hundred {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
/* Margins taken from the Panels module plugins */
|
||||
.lastUnit .inside {
|
||||
margin: 0 0 1em .5em;
|
||||
}
|
||||
.firstUnit .inside {
|
||||
margin: 0 .5em 1em 0;
|
||||
}
|
||||
.unit .inside {
|
||||
margin: 0 .5em 1em .5em;
|
||||
}
|
@@ -0,0 +1,46 @@
|
||||
<?php
|
||||
/**
|
||||
* @file four_three_adaptive.inc
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Sun Jul 31 12:43:09 2011
|
||||
*
|
||||
* @brief The four/three adaptive layout plugin.
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
// Plugin definition.
|
||||
$plugin = array(
|
||||
'title' => t('Four three adaptive'),
|
||||
'category' => t('Adaptive: 4x4 - 3x3'),
|
||||
'icon' => 'four_three_adaptive.png',
|
||||
'theme' => 'four_three_adaptive',
|
||||
'css' => 'four_three_adaptive.css',
|
||||
'regions' => array(
|
||||
'11' => t('Header left'),
|
||||
'12' => t('Header center left'),
|
||||
'13' => t('Header center right'),
|
||||
'14' => t('Header right'),
|
||||
'21' => t('Top left'),
|
||||
'22' => t('Top center left'),
|
||||
'23' => t('Top center right'),
|
||||
'24' => t('Top right'),
|
||||
'31' => t('Middle top left'),
|
||||
'32' => t('Middle top center left'),
|
||||
'33' => t('Middle top center right'),
|
||||
'34' => t('Middle top right'),
|
||||
'41' => t('Middle below top left'),
|
||||
'42' => t('Middle below top center left'),
|
||||
'43' => t('Middle below top center right'),
|
||||
'44' => t('Middle below top right'),
|
||||
'51' => t('Middle above bottom left'),
|
||||
'52' => t('Middle above bottom center'),
|
||||
'53' => t('Middle above bottom right'),
|
||||
'61' => t('Bottom left'),
|
||||
'62' => t('Bottom center'),
|
||||
'63' => t('Bottom right'),
|
||||
'71' => t('Footer left'),
|
||||
'72' => t('Footer center'),
|
||||
'73' => t('Footer right'),
|
||||
),
|
||||
);
|
@@ -0,0 +1,28 @@
|
||||
# ImageMagick MVG file for creating the Panels icon.
|
||||
viewbox 0 0 50 75
|
||||
stroke black fill grey60 rectangle 2 2 12 10
|
||||
rectangle 14 2 24 10
|
||||
rectangle 26 2 35 10
|
||||
rectangle 37 2 47 10
|
||||
rectangle 2 12 12 20
|
||||
rectangle 14 12 24 20
|
||||
rectangle 26 12 35 20
|
||||
rectangle 37 12 47 20
|
||||
rectangle 2 22 12 30
|
||||
rectangle 14 22 24 30
|
||||
rectangle 26 22 35 30
|
||||
rectangle 37 22 47 30
|
||||
rectangle 2 32 12 40
|
||||
rectangle 14 32 24 40
|
||||
rectangle 26 32 35 40
|
||||
rectangle 37 32 47 40
|
||||
###### 3x3 ######
|
||||
rectangle 2 42 16 51
|
||||
rectangle 18 42 32 51
|
||||
rectangle 34 42 47 51
|
||||
rectangle 2 53 16 62
|
||||
rectangle 18 53 32 62
|
||||
rectangle 34 53 47 62
|
||||
rectangle 2 64 16 73
|
||||
rectangle 18 64 32 73
|
||||
rectangle 34 64 47 73
|
After Width: | Height: | Size: 336 B |
@@ -0,0 +1,239 @@
|
||||
<!-- -*- mode: html-helper; before-save-hook: nil -*- -->
|
||||
|
||||
<div class="panel-display panel-three-four-adaptive clear-block" <?php if (!empty($css_id)) { print "id=\"$css_id\""; } ?>>
|
||||
<!-- 3x3 grid -->
|
||||
<?php
|
||||
for ($i = 0; $i < 9; $i += 3):
|
||||
// Get the $content array keys of all non empty entries.
|
||||
$keys = array_keys(array_filter(array_slice($content, $i, 3, TRUE)));
|
||||
$h = panels_extra_layouts_adaptive_hash($keys, 3, 'panels_extra_layouts_adaptive_get_digit');
|
||||
// If all the row elements are empty then jump to the next row
|
||||
// immediately.
|
||||
if ($h == 0) continue;
|
||||
?>
|
||||
|
||||
<?php if ($h == 1): ?><!-- 100% - 1 column -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-one-hundred lastUnit">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 3 || $h == 5): ?><!-- 33/66% - 2 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-thirty-three">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-sixty-six lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 4): ?><!-- 66/33% - 2 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-sixty-six">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-thirty-three lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 6): ?><!-- 33/33/33% - 3 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-thirty-three">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-thirty-three">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-thirty-three lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[2]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<?php endfor; ?>
|
||||
|
||||
<!-- 4x4 grid -->
|
||||
<?php
|
||||
for ($j = 9; $j < 25; $j += 4):
|
||||
// Get the $content array keys of all non empty entries.
|
||||
$keys = array_keys(array_filter(array_slice($content, $j, 4, TRUE)));
|
||||
$h = panels_extra_layouts_adaptive_hash($keys, 4, 'panels_extra_layouts_adaptive_get_digit');
|
||||
// If all the row elements are empty then jump to the next row
|
||||
// immediately.
|
||||
if ($h == 0) continue;
|
||||
?>
|
||||
|
||||
<?php if ($h == 1): ?><!-- 100% - 1 column -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-one-hundred lastUnit">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 3): ?><!-- 25/75% - 2 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-seventy-five lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 4): ?><!-- 50/50% - 2 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-fifty">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-fifty lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 5): ?><!-- 75/25% - 2 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-seventy-five la">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h ==6 || $h == 9): ?><!-- 25/25/50% - 3 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-fifty lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[2]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 7): ?><!-- 25/50/25% - 3 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-fifty">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[2]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 8): ?><!-- 50/25/25% - 3 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-fifty">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[2]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($h == 10): ?><!-- 25/25/25/25% - 4 columns -->
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[0]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[1]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[2]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-five lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content[$keys[3]]; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<?php endfor; ?>
|
||||
</div>
|
@@ -0,0 +1,37 @@
|
||||
/* CSS file for the three four adaptive layout */
|
||||
@import url('../../../css/base-grid.css');
|
||||
|
||||
.panel-col-twenty-five {
|
||||
width: 25%;
|
||||
}
|
||||
|
||||
.panel-col-thirty-three {
|
||||
width: 33%;
|
||||
}
|
||||
|
||||
.panel-col-fifty {
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
.panel-col-sixty-six {
|
||||
width: 66%;
|
||||
}
|
||||
|
||||
.panel-col-seventy-five {
|
||||
width: 75%;
|
||||
}
|
||||
|
||||
.panel-one-hundred {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
/* Margins taken from the Panels module plugins */
|
||||
.lastUnit .inside {
|
||||
margin: 0 0 1em .5em;
|
||||
}
|
||||
.firstUnit .inside {
|
||||
margin: 0 .5em 1em 0;
|
||||
}
|
||||
.unit .inside {
|
||||
margin: 0 .5em 1em .5em;
|
||||
}
|
@@ -0,0 +1,46 @@
|
||||
<?php
|
||||
/**
|
||||
* @file three_four_adaptive.inc
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Sun Jul 31 12:43:09 2011
|
||||
*
|
||||
* @brief The three/four adaptive layout plugin.
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
// Plugin definition.
|
||||
$plugin = array(
|
||||
'title' => t('Three four adaptive'),
|
||||
'category' => t('Adaptive: 3x3 - 4x4'),
|
||||
'icon' => 'three_four_adaptive.png',
|
||||
'theme' => 'three_four_adaptive',
|
||||
'css' => 'three_four_adaptive.css',
|
||||
'regions' => array(
|
||||
'11' => t('Header left'),
|
||||
'12' => t('Header center'),
|
||||
'13' => t('Header right'),
|
||||
'21' => t('Top left'),
|
||||
'22' => t('Top middle'),
|
||||
'23' => t('Top right'),
|
||||
'31' => t('Middle top left'),
|
||||
'32' => t('Middle top center'),
|
||||
'33' => t('Middle top right'),
|
||||
'41' => t('Middle below top left'),
|
||||
'42' => t('Middle below top center left'),
|
||||
'43' => t('Middle below top center right'),
|
||||
'44' => t('Middle below top right'),
|
||||
'51' => t('Middle above bottom left'),
|
||||
'52' => t('Middle above bottom center left'),
|
||||
'53' => t('Middle above bottom center right'),
|
||||
'54' => t('Middle above bottom right'),
|
||||
'61' => t('Bottom left'),
|
||||
'62' => t('Bottom center left'),
|
||||
'63' => t('Bottom center right'),
|
||||
'64' => t('Bottom right'),
|
||||
'71' => t('Footer left'),
|
||||
'72' => t('Footer center left'),
|
||||
'73' => t('Footer center right'),
|
||||
'74' => t('Footer right'),
|
||||
),
|
||||
);
|
@@ -0,0 +1,28 @@
|
||||
# ImageMagick MVG file for creating the Panels icon.
|
||||
viewbox 0 0 50 75
|
||||
stroke black fill grey60 rectangle 2 2 16 11
|
||||
rectangle 18 2 31 11
|
||||
rectangle 33 2 47 11
|
||||
rectangle 2 13 16 22
|
||||
rectangle 18 13 31 22
|
||||
rectangle 33 13 47 22
|
||||
rectangle 2 24 16 33
|
||||
rectangle 18 24 31 33
|
||||
rectangle 33 24 47 33
|
||||
###### 4x4 ######
|
||||
rectangle 2 35 12 43
|
||||
rectangle 14 35 24 43
|
||||
rectangle 26 35 35 43
|
||||
rectangle 37 35 47 43
|
||||
rectangle 2 45 12 53
|
||||
rectangle 14 45 24 53
|
||||
rectangle 26 45 35 53
|
||||
rectangle 37 45 47 53
|
||||
rectangle 2 55 12 63
|
||||
rectangle 14 55 24 63
|
||||
rectangle 26 55 35 63
|
||||
rectangle 37 55 47 63
|
||||
rectangle 2 65 12 72
|
||||
rectangle 14 65 24 72
|
||||
rectangle 26 65 35 72
|
||||
rectangle 37 65 47 72
|
After Width: | Height: | Size: 342 B |
@@ -0,0 +1,35 @@
|
||||
<!-- -*-html-helper-*- -->
|
||||
|
||||
<div class="panel-display panel-threecol-15-70-15-stacked clear-block" <?php if (!empty($css_id)) { print "id=\"$css_id\""; } ?>>
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-header lastUnit">
|
||||
<?php print $content['header']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-fifteen firstUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['left']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-seventy">
|
||||
<div class="inside">
|
||||
<?php print $content['middle']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel panel-col-fifteen lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel panel-line">
|
||||
<div class="panel-panel unit panel-footer lastUnit">
|
||||
<?php print $content['footer']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
@@ -0,0 +1,24 @@
|
||||
/* CSS file for the 15 70 15 stacked layout */
|
||||
@import url('../../../css/base-grid.css');
|
||||
|
||||
.panel-col-fifteen {
|
||||
width: 15%;
|
||||
}
|
||||
.panel-col-seventy {
|
||||
width: 70%;
|
||||
}
|
||||
|
||||
.panel-header, .panel-footer {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
/* Margins taken from the Panels module plugins */
|
||||
.lastUnit .inside {
|
||||
margin: 0 0 1em .5em;
|
||||
}
|
||||
.firstUnit .inside {
|
||||
margin: 0 .5em 1em 0;
|
||||
}
|
||||
.unit .inside {
|
||||
margin: 0 .5em 1em .5em;
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
/**
|
||||
* @file threecol_15_70_15_stacked.inc
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Sun Jul 24 17:26:14 2011
|
||||
*
|
||||
* @brief Panels plugin for the three column 15/70/15 stacked layout.
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
// Plugin definition.
|
||||
$plugin = array(
|
||||
'title' => t('Three column 15/70/15 stacked'),
|
||||
'category' => t('Columns: 3'),
|
||||
'icon' => 'threecol_15_70_15_stacked.png',
|
||||
'theme' => 'threecol_15_70_15_stacked',
|
||||
'css' => 'threecol_15_70_15_stacked.css',
|
||||
'regions' => array(
|
||||
'header' => t('Header'),
|
||||
'left' => t('Left'),
|
||||
'middle' => t('Middle'),
|
||||
'right' => t('Right'),
|
||||
'footer' => t('Footer'),
|
||||
),
|
||||
);
|
@@ -0,0 +1,7 @@
|
||||
# ImageMagick MVG file for creating the Panels icon.
|
||||
viewbox 0 0 50 75
|
||||
stroke black fill grey60 rectangle 2 2 48 12
|
||||
rectangle 2 14 9 59
|
||||
rectangle 11 14 39 59
|
||||
rectangle 41 14 48 59
|
||||
rectangle 2 61 48 73
|
After Width: | Height: | Size: 320 B |
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
/**
|
||||
* @file threecol-42-29-29-stacked.tpl.php
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Fri Dec 17 04:59:07 2010
|
||||
*
|
||||
* @brief Template for the three column 42/29/29 stacked layout.
|
||||
*
|
||||
*
|
||||
*/
|
||||
?>
|
||||
<div class="panel-display panel-threecol-42-29-29-stacked clear-block" <?php if (!empty($css_id)) { print "id=\"$css_id\""; } ?>>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-forty-two firstUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['left']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-twenty-nine">
|
||||
<div class="inside">
|
||||
<?php print $content['middle']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel panel-col-twenty-nine lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-bottom lastUnit">
|
||||
<?php print $content['bottom_above']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-bottom lastUnit">
|
||||
<?php print $content['bottom_below']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
@@ -0,0 +1,24 @@
|
||||
/* CSS rules for the three column 42 29 29 stacked panelys layout */
|
||||
@import url('../../../css/base-grid.css');
|
||||
|
||||
.panel-col-twenty-nine {
|
||||
width: 29%;
|
||||
}
|
||||
.panel-col-forty-two {
|
||||
width: 42%;
|
||||
}
|
||||
.panel-bottom {
|
||||
width: 100%;
|
||||
padding: 0 .5em 1em;
|
||||
}
|
||||
|
||||
/* Margins taken from the Panels module plugins */
|
||||
.lastUnit .inside {
|
||||
margin: 0 0 1em .5em;
|
||||
}
|
||||
.firstUnit .inside {
|
||||
margin: 0 .5em 1em 0;
|
||||
}
|
||||
.unit .inside {
|
||||
margin: 0 .5em 1em .5em;
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
/**
|
||||
* @file threecol_42_29_29_stacked.inc
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Fri Dec 17 05:05:34 2010
|
||||
*
|
||||
* @brief Panels plugin for the three column 42/29/29 stacked layout.
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
// Plugin definition.
|
||||
$plugin = array(
|
||||
'title' => t('Three column 42/29/29 stacked'),
|
||||
'category' => t('Columns: 3'),
|
||||
'icon' => 'threecol_42_29_29_stacked.png',
|
||||
'theme' => 'threecol_42_29_29_stacked',
|
||||
'css' => 'threecol_42_29_29_stacked.css',
|
||||
'regions' => array(
|
||||
'left' => t('Left side'),
|
||||
'middle' => t('Middle column'),
|
||||
'right' => t('Right side'),
|
||||
'bottom_above' => t('Bottom stack above'),
|
||||
'bottom_below' => t('Bottom stack bellow'),
|
||||
),
|
||||
);
|
@@ -0,0 +1,8 @@
|
||||
# ImageMagick MVG file for creating the Panels screenshot.
|
||||
viewbox 0 0 50 75
|
||||
fill white rectangle 0 0 50 75
|
||||
stroke black fill grey60 rectangle 2 2 20 48
|
||||
rectangle 22 2 34 48
|
||||
rectangle 36 2 48 48
|
||||
rectangle 2 50 48 61
|
||||
rectangle 2 63 48 72
|
After Width: | Height: | Size: 435 B |
@@ -0,0 +1,37 @@
|
||||
<!-- -*-html-helper-*- -->
|
||||
<div class="panel-display panel-threecol-44-35-21-stacked clear-block" <?php if (!empty($css_id)) { print "id=\"$css_id\"";} ?>>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit left">
|
||||
<div class="inside">
|
||||
<?php print $content['left']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit right lastUnit">
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit top-middle">
|
||||
<div class="inside">
|
||||
<?php print $content['top_middle']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit top-right lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['top_right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="inside">
|
||||
<?php print $content['right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel footer">
|
||||
<div class="inside">
|
||||
<?php print $content['footer']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
@@ -0,0 +1,35 @@
|
||||
/* CSS file for 44/35/21 stacked layout. */
|
||||
@import url('../../../css/base-grid.css');
|
||||
|
||||
.footer {
|
||||
width: 100%;
|
||||
padding: 1em;
|
||||
}
|
||||
|
||||
.left {
|
||||
width: 44%;
|
||||
}
|
||||
|
||||
.right {
|
||||
width: 56%;
|
||||
}
|
||||
|
||||
.top-middle {
|
||||
width: 64%;
|
||||
}
|
||||
|
||||
.top-right {
|
||||
width: 36%;
|
||||
}
|
||||
|
||||
|
||||
/* Margins taken from the Panels module plugins */
|
||||
.lastUnit .inside {
|
||||
margin: 0 0 1em .5em;
|
||||
}
|
||||
.firstUnit .inside {
|
||||
margin: 0 .5em 1em 0;
|
||||
}
|
||||
.unit .inside {
|
||||
margin: 0 .5em 1em .5em;
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
/**
|
||||
* @file threecol_44_35_21_stacked.inc
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Thu Apr 14 10:51:43 2011
|
||||
*
|
||||
* @brief Panels plugin for a 44/35/21 stacked layout.
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
// Plugin definition.
|
||||
$plugin = array(
|
||||
'title' => t('Three column 44/35/21 stacked'),
|
||||
'category' => t('Columns: 3'),
|
||||
'icon' => 'threecol_44_35_21_stacked.png',
|
||||
'theme' => 'threecol_44_35_21_stacked',
|
||||
'css' => 'threecol_44_35_21_stacked.css',
|
||||
'regions' => array(
|
||||
'left' => t('Left'),
|
||||
'top_middle' => t('Top middle'),
|
||||
'top_right' => t('Top right'),
|
||||
'right' => t('Right'),
|
||||
'footer' => t('Footer'),
|
||||
),
|
||||
);
|
@@ -0,0 +1,8 @@
|
||||
# ImageMagick MVG file for creating the Panels screenshot.
|
||||
viewbox 0 0 50 75
|
||||
fill white rectangle 0 0 50 75
|
||||
stroke black fill grey60 rectangle 2 2 21 52
|
||||
rectangle 23 2 38 20
|
||||
rectangle 40 2 48 20
|
||||
rectangle 23 22 48 52
|
||||
rectangle 2 54 48 72
|
After Width: | Height: | Size: 481 B |
@@ -0,0 +1,37 @@
|
||||
<!-- -*-html-helper-*- -->
|
||||
<div class="panel-display panel-threecol-44-37-19-stacked clear-block" <?php if (!empty($css_id)) { print "id=\"$css_id\"";} ?>>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit left">
|
||||
<div class="inside">
|
||||
<?php print $content['left']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit right lastUnit">
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit top-middle">
|
||||
<div class="inside">
|
||||
<?php print $content['top_middle']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit top-right lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['top_right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="inside">
|
||||
<?php print $content['right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel footer">
|
||||
<div class="inside">
|
||||
<?php print $content['footer']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
@@ -0,0 +1,35 @@
|
||||
/* CSS file for 44/37/19 stacked layout. */
|
||||
@import url('../../../css/base-grid.css');
|
||||
|
||||
.footer {
|
||||
width: 100%;
|
||||
padding: 1em;
|
||||
}
|
||||
|
||||
.left {
|
||||
width: 44%;
|
||||
}
|
||||
|
||||
.right {
|
||||
width: 56%;
|
||||
}
|
||||
|
||||
.top-middle {
|
||||
width: 66%;
|
||||
}
|
||||
|
||||
.top-right {
|
||||
width: 33%;
|
||||
}
|
||||
|
||||
|
||||
/* Margins taken from the Panels module plugins */
|
||||
.lastUnit .inside {
|
||||
margin: 0 0 1em .5em;
|
||||
}
|
||||
.firstUnit .inside {
|
||||
margin: 0 .5em 1em 0;
|
||||
}
|
||||
.unit .inside {
|
||||
margin: 0 .5em 1em .5em;
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
/**
|
||||
* @file threecol_44_37_19_stacked.inc
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Thu Apr 14 10:51:43 2011
|
||||
*
|
||||
* @brief Panels plugin for a 44/37/19 stacked layout.
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
// Plugin definition.
|
||||
$plugin = array(
|
||||
'title' => t('Three column 44/37/19 stacked'),
|
||||
'category' => t('Columns: 3'),
|
||||
'icon' => 'threecol_44_37_19_stacked.png',
|
||||
'theme' => 'threecol_44_37_19_stacked',
|
||||
'css' => 'threecol_44_37_19_stacked.css',
|
||||
'regions' => array(
|
||||
'left' => t('Left'),
|
||||
'top_middle' => t('Top middle'),
|
||||
'top_right' => t('Top right'),
|
||||
'right' => t('Right'),
|
||||
'footer' => t('Footer'),
|
||||
),
|
||||
);
|
@@ -0,0 +1,8 @@
|
||||
# ImageMagick MVG file for creating the Panels screenshot.
|
||||
viewbox 0 0 50 75
|
||||
fill white rectangle 0 0 50 75
|
||||
stroke black fill grey60 rectangle 2 2 21 52
|
||||
rectangle 23 2 40 20
|
||||
rectangle 42 2 48 20
|
||||
rectangle 23 22 48 52
|
||||
rectangle 2 54 48 72
|
After Width: | Height: | Size: 480 B |
@@ -0,0 +1,23 @@
|
||||
<!-- -*-html-helper-*- -->
|
||||
|
||||
<div class="panel-display panel-threecol-7-72-31-stacked clear-block" <?php if (!empty($css_id)) { print "id=\"$css_id\""; } ?>>
|
||||
<div class="panel-panel line">
|
||||
<div class="inside">
|
||||
<div class="panel-panel unit panel-col-seven firstUnit">
|
||||
<?php print $content['left']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-sixtytwo">
|
||||
<div class="inside">
|
||||
<?php print $content['middle']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel unit panel-col-thirtyone lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
@@ -0,0 +1,27 @@
|
||||
/* CSS file for the 7 62 31 layout */
|
||||
@import url('../../../css/base-grid.css');
|
||||
|
||||
.panel-col-seven {
|
||||
width: 7%;
|
||||
}
|
||||
.panel-col-sixtytwo {
|
||||
width: 62%;
|
||||
}
|
||||
.panel-col-thirtyone {
|
||||
width: 31%;
|
||||
}
|
||||
|
||||
.panel-header, .panel-footer {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
/* Margins taken from the Panels module plugins */
|
||||
.lastUnit .inside {
|
||||
margin: 0 0 1em .5em;
|
||||
}
|
||||
.firstUnit .inside {
|
||||
margin: 0 .5em 1em 0;
|
||||
}
|
||||
.unit .inside {
|
||||
margin: 0 .5em 1em .5em;
|
||||
}
|
@@ -0,0 +1,24 @@
|
||||
<?php
|
||||
/**
|
||||
* @file threecol_7_62_31.inc
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Sun Jul 24 20:39:00 2011
|
||||
*
|
||||
* @brief The three column 7/62/31 layout.
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
// Plugin definition.
|
||||
$plugin = array(
|
||||
'title' => t('Three column 7/62/31'),
|
||||
'category' => t('Columns: 3'),
|
||||
'icon' => 'threecol_7_62_31.png',
|
||||
'theme' => 'threecol_7_62_31',
|
||||
'css' => 'threecol_7_62_31.css',
|
||||
'regions' => array(
|
||||
'left' => t('Left'),
|
||||
'middle' => t('Middle'),
|
||||
'right' => t('Right'),
|
||||
),
|
||||
);
|
@@ -0,0 +1,5 @@
|
||||
# ImageMagick MVG file for creating the Panels icon.
|
||||
viewbox 0 0 50 75
|
||||
stroke black fill grey60 rectangle 2 2 6 73
|
||||
rectangle 8 2 33 73
|
||||
rectangle 35 2 48 73
|
After Width: | Height: | Size: 294 B |
@@ -0,0 +1,35 @@
|
||||
<!-- -*-html-helper-*- -->
|
||||
|
||||
<div class="panel-display panel-twocol-30-70-stacked clear-block" <?php if (!empty($css_id)) { print "id=\"$css_id\""; } ?>>
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-header lastUnit">
|
||||
<?php print $content['header']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-top lastUnit">
|
||||
<?php print $content['top']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-thirty firstUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['left']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel panel-col-seventy lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel panel-line">
|
||||
<div class="panel-panel unit panel-footer lastUnit">
|
||||
<?php print $content['footer']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
@@ -0,0 +1,24 @@
|
||||
/* CSS file for the 30 70 stacked layout */
|
||||
@import url('../../../css/base-grid.css');
|
||||
|
||||
.panel-col-thirty {
|
||||
width: 30%;
|
||||
}
|
||||
.panel-col-seventy {
|
||||
width: 70%;
|
||||
}
|
||||
|
||||
.panel-header, .panel-top, .panel-footer {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
/* Margins taken from the Panels module plugins */
|
||||
.lastUnit .inside {
|
||||
margin: 0 0 1em .5em;
|
||||
}
|
||||
.firstUnit .inside {
|
||||
margin: 0 .5em 1em 0;
|
||||
}
|
||||
.unit .inside {
|
||||
margin: 0 .5em 1em .5em;
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
/**
|
||||
* @file twocol_30_70_stacked.inc
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Sun Jul 24 20:41:58 2011
|
||||
*
|
||||
* @brief The two column 30/70 stacked layout.
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
// Plugin definition.
|
||||
$plugin = array(
|
||||
'title' => t('Two column 30/70 stacked'),
|
||||
'category' => t('Columns: 2'),
|
||||
'icon' => 'twocol_30_70_stacked.png',
|
||||
'theme' => 'twocol_30_70_stacked',
|
||||
'css' => 'twocol_30_70_stacked.css',
|
||||
'regions' => array(
|
||||
'header' => t('Header'),
|
||||
'top' => t('Top'),
|
||||
'left' => t('Left'),
|
||||
'right' => t('Right'),
|
||||
'footer' => t('Footer'),
|
||||
),
|
||||
);
|
@@ -0,0 +1,7 @@
|
||||
# ImageMagick MVG file for creating the Panels icon.
|
||||
viewbox 0 0 50 75
|
||||
stroke black fill grey60 rectangle 2 2 48 12
|
||||
rectangle 2 14 48 24
|
||||
rectangle 2 26 14 59
|
||||
rectangle 16 26 48 59
|
||||
rectangle 2 61 48 73
|
After Width: | Height: | Size: 307 B |
@@ -0,0 +1,39 @@
|
||||
<?php
|
||||
/**
|
||||
* @file twocol-63-37-stacked.tpl.php
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Wed Apr 13 14:31:13 2011
|
||||
*
|
||||
* @brief Template for the 63/37 panels layout.
|
||||
*
|
||||
*
|
||||
*/
|
||||
?>
|
||||
<div class="panel-display panel-twocol-63-37-stacked clear-block" <?php if (!empty($css_id)) { print "id=\"$css_id\""; } ?>>
|
||||
|
||||
<div class="panel-panel header">
|
||||
<div class="inside">
|
||||
<?php print $content['header']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit left">
|
||||
<div class="inside">
|
||||
<?php print $content['left']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel right lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel footer">
|
||||
<div class="inside">
|
||||
<?php print $content['footer']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
@@ -0,0 +1,26 @@
|
||||
/* CSS file for 63-37 stacked layout. */
|
||||
@import url('../../../css/base-grid.css');
|
||||
|
||||
.footer, .header {
|
||||
width: 100%;
|
||||
padding: 1em;
|
||||
}
|
||||
|
||||
.left {
|
||||
width: 63%;
|
||||
}
|
||||
|
||||
.right {
|
||||
width: 37%;
|
||||
}
|
||||
|
||||
/* Margins taken from the Panels module plugins */
|
||||
.lastUnit .inside {
|
||||
margin: 0 0 1em .5em;
|
||||
}
|
||||
.firstUnit .inside {
|
||||
margin: 0 .5em 1em 0;
|
||||
}
|
||||
.unit .inside {
|
||||
margin: 0 .5em 1em .5em;
|
||||
}
|
@@ -0,0 +1,16 @@
|
||||
<?php
|
||||
|
||||
// Plugin definition.
|
||||
$plugin = array(
|
||||
'title' => t('Two column 63/37 stacked'),
|
||||
'category' => t('Columns: 2'),
|
||||
'icon' => 'twocol_63_37_stacked.png',
|
||||
'theme' => 'twocol_63_37_stacked',
|
||||
'css' => 'twocol_63_37_stacked.css',
|
||||
'regions' => array(
|
||||
'header' => t('header'),
|
||||
'left' => t('left'),
|
||||
'right' => t('right'),
|
||||
'footer' => t('footer'),
|
||||
),
|
||||
);
|
@@ -0,0 +1,13 @@
|
||||
# ImageMagick MVG file for creating the Panels screenshot.
|
||||
viewbox 0 0 50 75
|
||||
fill white rectangle 0 0 50 75
|
||||
stroke black fill grey60 rectangle 2 2 48 14
|
||||
rectangle 2 16 30 58
|
||||
rectangle 32 16 48 58
|
||||
rectangle 2 60 48 72
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
After Width: | Height: | Size: 434 B |
@@ -0,0 +1,35 @@
|
||||
<!-- -*-html-helper-*- -->
|
||||
|
||||
<div class="panel-display panel-twocol-70-30-stacked clear-block" <?php if (!empty($css_id)) { print "id=\"$css_id\""; } ?>>
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-header lastUnit">
|
||||
<?php print $content['header']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-top lastUnit">
|
||||
<?php print $content['top']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit panel-col-seventy firstUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['left']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel panel-col-thirty lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel panel-line">
|
||||
<div class="panel-panel unit panel-footer lastUnit">
|
||||
<?php print $content['footer']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
@@ -0,0 +1,24 @@
|
||||
/* CSS file for the 30 70 stacked layout */
|
||||
@import url('../../../css/base-grid.css');
|
||||
|
||||
.panel-col-thirty {
|
||||
width: 30%;
|
||||
}
|
||||
.panel-col-seventy {
|
||||
width: 70%;
|
||||
}
|
||||
|
||||
.panel-header, .panel-top, .panel-footer {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
/* Margins taken from the Panels module plugins */
|
||||
.lastUnit .inside {
|
||||
margin: 0 0 1em .5em;
|
||||
}
|
||||
.firstUnit .inside {
|
||||
margin: 0 .5em 1em 0;
|
||||
}
|
||||
.unit .inside {
|
||||
margin: 0 .5em 1em .5em;
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
/**
|
||||
* @file twocol_70_30_stacked.inc
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Sun Jul 24 20:43:02 2011
|
||||
*
|
||||
* @brief The two column 70/30 stacked layout.
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
// Plugin definition.
|
||||
$plugin = array(
|
||||
'title' => t('Two column 70/30 stacked'),
|
||||
'category' => t('Columns: 2'),
|
||||
'icon' => 'twocol_70_30_stacked.png',
|
||||
'theme' => 'twocol_70_30_stacked',
|
||||
'css' => 'twocol_70_30_stacked.css',
|
||||
'regions' => array(
|
||||
'header' => t('Header'),
|
||||
'top' => t('Top'),
|
||||
'left' => t('Left'),
|
||||
'right' => t('Right'),
|
||||
'footer' => t('Footer'),
|
||||
),
|
||||
);
|
@@ -0,0 +1,7 @@
|
||||
# ImageMagick MVG file for creating the Panels icon.
|
||||
viewbox 0 0 50 75
|
||||
stroke black fill grey60 rectangle 2 2 48 12
|
||||
rectangle 2 14 48 24
|
||||
rectangle 2 26 34 59
|
||||
rectangle 36 26 48 59
|
||||
rectangle 2 61 48 73
|
After Width: | Height: | Size: 303 B |
@@ -0,0 +1,39 @@
|
||||
<?php
|
||||
/**
|
||||
* @file twocol-63-37-stacked.tpl.php
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Wed Apr 13 14:31:13 2011
|
||||
*
|
||||
* @brief Template for the 63/37 panels layout.
|
||||
*
|
||||
*
|
||||
*/
|
||||
?>
|
||||
<div class="panel-display panel-twocol-63-37-stacked clear-block" <?php if (!empty($css_id)) { print "id=\"$css_id\""; } ?>>
|
||||
|
||||
<div class="panel-panel header">
|
||||
<div class="inside">
|
||||
<?php print $content['header']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel line">
|
||||
<div class="panel-panel unit left">
|
||||
<div class="inside">
|
||||
<?php print $content['left']; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel right lastUnit">
|
||||
<div class="inside">
|
||||
<?php print $content['right']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel-panel footer">
|
||||
<div class="inside">
|
||||
<?php print $content['footer']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
@@ -0,0 +1,26 @@
|
||||
/* CSS file for 77/23 stacked layout. */
|
||||
@import url('../../../css/base-grid.css');
|
||||
|
||||
.footer, .header {
|
||||
width: 100%;
|
||||
padding: 1em;
|
||||
}
|
||||
|
||||
.left {
|
||||
width: 77%;
|
||||
}
|
||||
|
||||
.right {
|
||||
width: 23%;
|
||||
}
|
||||
|
||||
/* Margins taken from the Panels module plugins */
|
||||
.lastUnit .inside {
|
||||
margin: 0 0 1em .5em;
|
||||
}
|
||||
.firstUnit .inside {
|
||||
margin: 0 .5em 1em 0;
|
||||
}
|
||||
.unit .inside {
|
||||
margin: 0 .5em 1em .5em;
|
||||
}
|
@@ -0,0 +1,25 @@
|
||||
<?php
|
||||
/**
|
||||
* @file twocol_77_23_stacked.inc
|
||||
* @author António P. P. Almeida <appa@perusio.net>
|
||||
* @date Fri Apr 15 16:51:31 2011
|
||||
*
|
||||
* @brief The panels layout plugin for the two column 77/23 stacked layout.
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
// Plugin definition.
|
||||
$plugin = array(
|
||||
'title' => t('Two column 77/23 stacked'),
|
||||
'category' => t('Columns: 2'),
|
||||
'icon' => 'twocol_77_23_stacked.png',
|
||||
'theme' => 'twocol_77_23_stacked',
|
||||
'css' => 'twocol_77_23_stacked.css',
|
||||
'regions' => array(
|
||||
'header' => t('header'),
|
||||
'left' => t('left'),
|
||||
'right' => t('right'),
|
||||
'footer' => t('footer'),
|
||||
),
|
||||
);
|
@@ -0,0 +1,7 @@
|
||||
# ImageMagick MVG file for creating the Panels screenshot.
|
||||
viewbox 0 0 50 75
|
||||
fill white rectangle 0 0 50 75
|
||||
stroke black fill grey60 rectangle 2 2 48 14
|
||||
rectangle 2 16 34 58
|
||||
rectangle 36 16 48 58
|
||||
rectangle 2 60 48 72
|
After Width: | Height: | Size: 438 B |