Skip to content

Commit

Permalink
Merge pull request #2 from pi-engine/master
Browse files Browse the repository at this point in the history
Update from main repo
  • Loading branch information
voltan committed Apr 30, 2013
2 parents 702ad83 + d621dc8 commit 3be794c
Show file tree
Hide file tree
Showing 256 changed files with 7,389 additions and 4,008 deletions.
156 changes: 11 additions & 145 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
Pi Engine
=================

Xoops/Pi Engine (The Engine, hereafter) is a role oriented modularized framework, an application development engine for web and mobile, designed as the next generation of XOOPS.
Pi Engine is a role oriented application development engine for web and mobile, designed as the next generation and a successor to Xoops.
Pi is developed upon PHP and MySQL with selected third-party frameworks including but not limited to [Zend Framework library](https://github.com/zendframework/zf2), [jQuery](https://github.com/jquery/jquery), [Bootstrap](https://github.com/twitter/bootstrap) and [Backbone](https://github.com/documentcloud/backbone).

The Engine is released under a New BSD License and the project is intended to promote a sustainable ecosystem that benefits all contributors and users.
Pi Project follows the philosophy of open standard, open design, open development and open structure. Pi is born as a complete open source project and intended to build a sustainable ecosystem that benefits all contributors and users.

The Xoops/Pi Engine is a successor of the XOOPS Project led by Ono Kazumi (onokazu), skalpa and Taiwen Jiang (phppp). The Pi Team is inspired by them and benefits from their experiences and spirit. Pi Engine will continue to inherit and promote XOOPS brand.
[Pi Team](https://github.com/pi-engine/pi/wiki/Pi-Team) is highly inspired by the Xoops led by onokazu (Ono Kazumi), skalpa and phppp (Taiwen Jiang, or D.J.) successively since 2001 and will continue to support and promote Xoops.

**Check out the [Pi Day Release](https://github.com/pi-engine/pi/blob/master/doc/pi-day-release.txt).**
**Check out [Latest Release](https://github.com/pi-engine/pi/blob/master/doc/releasenotes.txt).**



Expand All @@ -19,159 +20,24 @@ Features and practices
4. Design-friendly templating
5. DevOps oriented architecture

To get started, check out [Pi Engine Repository](https://github.com/pi-engine/pi).



Quick start
-----------

Clone the repo, `git clone git://github.com/pi-engine/pi.git`, or [download the latest release](https://github.com/xoops/pi/zipball/master).



Versioning
----------

For transparency and insight into our release cycle, and striving to maintain backward compatibility, Xoops/Pi Engine will be maintained under the Semantic Versioning guidelines as much as possible.

Releases will be numbered in the following format:

`<major>.<minor>.<patch>`

And constructed with the following guidelines:

* Breaking backward compatibility bumps the major (and resets the minor and patch)
* New additions without breaking backward compatibility bumps the minor (and resets the patch)
* Bug fixes and misc changes bumps the patch

For more information on SemVer, please visit http://semver.org/.



Bug/feature tracker
-----------

To report a bug or request a feature, please create an issue here on GitHub [Pi Issues](https://github.com/pi-engine/pi/issues) that conforms with [necolas's guidelines](https://github.com/necolas/issue-guidelines).



Twitter
-------

Keep up to date on announcements and more by following Pi Engine on Twitter, [@XoopsProject](http://twitter.com/XoopsProject).



Blog
----

Read more detailed announcements, discussions, and more on [Xoops/Pi Engine Dev Blog](http://dev.xoopsengine.org).




* Check documents at [Pi Wiki](https://github.com/pi-engine/pi/wiki)
* Download the [latest code](https://github.com/xoops/pi/zipball/master).
* Clone Pi repo `git clone git://github.com/pi-engine/pi.git` and [keep updated](https://help.github.com/articles/fork-a-repo#pull-in-upstream-changes).

Development
----------

Beyond production and application, the Engine also strives to be strictly standard compliant, including but not limited to:

1. Versioning - [Semantic Versioning Specification](http://semver.org)
2. PHP - [PSR compliant](https://github.com/php-fig/fig-standards), [Zend Framework Coding Standards](http://framework.zend.com/wiki/display/ZFDEV2/Coding+Standards)
3. HTML/CSS - [Google HTML/CSS Style Guide](http://google-styleguide.googlecode.com/svn/trunk/htmlcssguide.xml)
4. JavaScript - [Google JavaScript Style Guide](http://google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml)
5. All code must be strictly compliant to its corresponding standards, no warning/notice messages allowed


Third-party libraries utilized in this framework:

1. PHP - [Zend Framework 2](https://github.com/zendframework/zf2)
2. JavaScript - [jQuery](https://github.com/jquery/jquery)
3. CSS/JS - [Bootstrap](https://github.com/twitter/bootstrap)/[Backbone](https://github.com/documentcloud/backbone)




Contributing
------------

If you wish to contribute to Xoops/Pi Engine, please read both the CONTRIBUTING.md and README-GIT.md file.


Authors
-------

**[Taiwen Jiang (D.J.)](http://github.com/taiwen)**
+ XOOPS account: phppp
+ http://twitter.com/taiwen
+ http://github.com/pi-engine
+ http://weibo.com/nope
+ https://www.facebook.com/xoops
Pi Engine is started by Taiwen Jiang (Xoops Project Lead and Dev Lead), Marc Desrousseaux (Xoops QA Lead), Hossein Azizabadi (Xoops Persian Lead), Kris (Xoops Council Member and Xoops France Lead), etc. You are welcome to join **[Pi Team](https://github.com/pi-engine/pi/wiki/Pi-Team)**.

**[Hossein Azizabadi](http://github.com/voltan)**
+ XOOPS account: voltan

**[marco](http://github.com/MarcoXoops)**
+ XOOPS account: marco_fr

**[kris](http://github.com/krisxoofoo)**
+ XOOPS account: kris

**[Lin Zongshu](http://github.com/linzongshu)**

**[EEFOCUS Team](http://www.eefocus.com)**
+ [Dong Lijun](https://github.com/donglijun)
+ [Liu Chuang](https://github.com/liuchuangww)
+ [Liao Wei](https://github.com/sexnothing)
+ [Simon Zhang](https://github.com/zhangsimon)
+ [Danyi Feng](https://github.com/d4ny1)

**[Longquan Monastery Team](http://weibo.com/lqsit)**
+ [Master Xianxin](https://github.com/htouch)
+ [Xiandu](https://github.com/gwisdomroof)
+ [Zhang Jing](https://github.com/zhangjing1117)

**[Wen.org.cn Team](http://wen.org.cn)**
+ [Liot](https://github.com/liot) [email protected]


Acknowledgements
----------------

The Pi Team would like to thank Mr. Su Gongyu from EEFOCUS.com and Master Xianxin from Longquan Monastery for their ultimate support. The Wen.org.cn Team has been a great support since early days of Xoops Project and continues to be a part of the Pi Team.
You may contribute to Pi at github by submitting your code to Pi repo with **[Pull Request](https://help.github.com/articles/using-pull-requests)** or submitting bug reports and feature requests to **[Issue Tracker](https://github.com/pi-engine/pi/issues)**.


Copyright and License
---------------------

The Engine is released under a New BSD License and the project is intended to promote a sustainable ecosystem that benefits all contributors and users.

New BSD License
Copyright (c) 2011, Pi Engine Project
All rights reserved.

Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
The Engine is released under a [New BSD License](https://github.com/pi-engine/pi/blob/master/doc/license.txt).

* Neither the name of Pi Engine nor the names of its
contributors may be used to endorse or promote products derived from this
software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 changes: 30 additions & 0 deletions doc/changelog.txt
Original file line number Diff line number Diff line change
@@ -1,10 +1,40 @@
Pi Engine Changelog


April 19th, 2013
=============================
1. Upgraded ZF2 to 2.1.5
2. Improved Intl functions for BC by @voltan
3. Imported "test" module for module dependency test
4. Refactored HTML head/foot rendering to expose section positions
5. Added convenient methods for setting custom head title, keywords and description suggested by @voltan
6. Moved Pi\Debug to Pi\Debug\Debug
7. Refactored Pi\Security with Pi::service('Security') and Pi\Security\Security
8. Added files: var/config/service.security.php
9. Modified files: var/config/resource.security.php
10. Added convenient methods and syntactic sugar for parameter filtering and sanitizing


April 8th, 2013
=============================
1. Fixed Issue #21 reported by @voltan: duplicated head keywords and description
2. Added missing head style in view renderer
3. Changed empty result of navigation registry from false to array() to avoid crash in backend with no-nav module
4. Refactored title/meta rendering
5. Improved cache option files
6. Added Pi\Cache\Storage\Adapter\Filesystem to record file expiration so that TTL is not required any more for reading cache
7. Added support for Intl extension with intlDateFormatter and NumberFormatter suggested by @voltan in Issue #24
8. Improved support for multi-host config
9. Fixed ACL resource bugs in module installation/uninstallation
10. Changed configuration related table fields from tinytext to text in System module v3.1.0
11. Added missing module_dependency table in System module v3.1.1


March 23rd, 2013
=============================
1. Fixed Issue #2 reported by @jemz: set default timezone in case not set in php.ini
2. Fixed BC issues caused by ZF2 including Issue #5 reported by @jemz
3. Upgraded Boostrap to 1.0.0 and Backbone to 2.3.1 by @sexnothing


March 14th, 2013
Expand Down
6 changes: 3 additions & 3 deletions doc/pi-day-release.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@ Pi Day Release for Pi Engine

The Pi Team is pleased to present the Pi Day Release as the first public release of Xoops/Pi Engine as the next generation of XOOPS in years.

Check out https://github.com/pi-engine/pi/blob/master/doc/pi-day-release.txt for full announcement.
Pi Engine is a role oriented application development engine for web and mobile, designed as the next generation and a successor to Xoops. Pi is developed upon PHP and MySQL with selected third-party frameworks including but not limited to Zend Framework library, jQuery, Bootstrap and Backbone.

Xoops/Pi Engine (The Engine, hereafter) is a role oriented modularized framework, an application development engine for web and mobile, designed as the next generation of XOOPS.
Pi Project follows the philosophy of open standard, open design, open development and open structure. Pi is born as a complete open source project and intended to build a sustainable ecosystem that benefits all contributors and users.

The Xoops/Pi Engine is a successor of the XOOPS Project led by Ono Kazumi (onokazu), skalpa and Taiwen Jiang (phppp). The Pi Team is inspired by them and benefits from their experiences and spirit. Pi Engine will continue to inherit and promote XOOPS brand.
Pi Team is highly inspired by the Xoops led by onokazu (Ono Kazumi), skalpa and phppp (Taiwen Jiang, or D.J.) successively since 2001 and will continue to support and promote Xoops.

Selected features and practices:
1. Modularization for functionality and applications
Expand Down
8 changes: 6 additions & 2 deletions doc/readme.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
Xoops/Pi Engine (The Engine, hereafter) is a role oriented modularized framework, an application development engine for web and mobile, designed as the next generation of XOOPS.
The Engine is released under a New BSD License and the project is intended to promote a sustainable ecosystem that benefits all contributors and users.
Pi Engine is a role oriented application development engine for web and mobile, designed as the next generation and a successor to Xoops. Pi is developed upon PHP and MySQL with selected third-party frameworks including but not limited to Zend Framework library, jQuery, Bootstrap and Backbone.

Pi Project follows the philosophy of open standard, open design, open development and open structure. Pi is born as a complete open source project and intended to build a sustainable ecosystem that benefits all contributors and users.

Pi Team is highly inspired by the Xoops led by onokazu (Ono Kazumi), skalpa and phppp (Taiwen Jiang, or D.J.) successively since 2001 and will continue to support and promote Xoops. Pi is started by Taiwen Jiang (Xoops Project Lead and Dev Lead), Marc Desrousseaux (Xoops QA Lead), Hossein Azizabadi (Xoops Persian Lead), Kris (Xoops Council Member and Xoops French Lead), etc. You are welcome to join Pi Team.

The Engine is released under a New BSD License.

Selected features and practices:
1. Modularization for functionality and applications
Expand Down
9 changes: 9 additions & 0 deletions doc/releasenotes.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Pi Day Release for Pi Engine

The Pi Team is pleased to present the Pi Day Release as the first public release of Xoops/Pi Engine as the next generation of XOOPS in years.

Check out [Pi Day Release Announcement](https://github.com/pi-engine/pi/blob/master/doc/pi-day-release.txt) for details.

Taiwen Jiang
Lead for Pi Development Team
March 14th, 2013
5 changes: 3 additions & 2 deletions lib/Pi.php
Original file line number Diff line number Diff line change
Expand Up @@ -224,8 +224,9 @@ public static function init()
static::autoloader($options);
/**#@-*/

// Load debugger
Pi\Debug::load();
// Load debugger and filter
Pi\Debug\Debug::load();
Pi\Utility\Filter::load();

/**#@+
* Load engine global config
Expand Down
13 changes: 0 additions & 13 deletions lib/Pi/Application/Db.php
Original file line number Diff line number Diff line change
Expand Up @@ -110,12 +110,6 @@ class Db
*/
public function __construct($options)
{
/*
if (isset($options['schema'])) {
$this->setSchema($options['schema']);
$options['connection']['dsn'] .= ';dbname=' . $options['schema'];
}
*/
$this->loadAdapter($options['connection']);
if (isset($options['table_prefix'])) {
$this->setTablePrefix($options['table_prefix']);
Expand Down Expand Up @@ -237,15 +231,8 @@ public function createAdapter(array $config, $platform = null)
$config['driver_options'][PDO::ATTR_STATEMENT_CLASS] = array(static::STATEMENT_CLASS, array($this->profiler()));
}

//$driver = $this->createDriver($config);
$adapter = new Adapter($config, $platform);

// Build connection onload if not disabled explicitly
if (!isset($options['connect_onload']) || !empty($options['connect_onload'])) {
$adapter->driver->getConnection()->connect();
$adapter->platform->setDriver($adapter->driver);
}

return $adapter;
}

Expand Down
2 changes: 2 additions & 0 deletions lib/Pi/Application/Engine/Standard.php
Original file line number Diff line number Diff line change
Expand Up @@ -60,11 +60,13 @@ public function run()
return false;
}

/*
$response = $this->application->getResponse();
$response->getHeaders()->addHeaders(array(
'content-type' => sprintf('text/html; charset=%s', Pi::config('charset')),
'content-language' => Pi::config('locale'),
));
*/

$this->application->run();

Expand Down
Loading

0 comments on commit 3be794c

Please sign in to comment.