»
S
I
D
E
B
A
R
«
Sponsored Links
Vork, open-source PHP framework designed for rapid development of performance-oriented scalable applications
Feb 24th, 2010 by NewUser

Vork Enterprise PHP Framework

Vork is an open-source PHP framework designed for rapid development of performance-oriented scalable applications.

The mission of Vork is to provide an MVC architecture and full-featured toolkit in a gimmick-free no-frills approach without adding overhead, creating slow & unscalable abstraction layers or re-inventing native PHP functionality.

Rapid Application Development

  • Native PHP interface with intuitive naming convention, no need to learn new terminology or syntax
  • Hello World! in 5-minutes or less with LAMP/WAMP configuration
  • Developers that already know PHP can use Vork productively within minutes

Performance-Oriented, Scalable, Green and Economical

  • Green-IT: Vork applications serve more traffic with less servers!
  • Enterprise-grade Vork platform has no slow abstraction layers or re-invented PHP functionality
  • Out-of-the-box response time for a Hello World! including making a database connection is typically just 0.0065 seconds!
  • Built-in support for multiple master/slave database configurations with tools to enforce security and increase SQL-statement efficiency
  • Automatically loads code & objects that are needed for the instance and not a byte more!
  • Vork can be configured to operate without any disk-IO to further reduce load time

Standards-Compliant

  • XHTML 1.1
  • PHP 5.0 – 5.3+
  • E_ALL | E_STRICT
  • Section 508
  • W3C WAI
  • Full MVC stack including layouts and components
  • All tools produce valid XHTML 1.1 with semantically-correct markup
  • Accessibility is automated as much as possible to meet Section 508 and W3C WAI standards
  • Code is open-source, built for PHP 5 and fully documented using the phpDocumentor DocBlock standard
  • Universal database support without abstraction layers; ability to easily change database brands at any time
  • Object-oriented source code is E_ALL | E_STRICT and adheres to the Zend Framework Coding Standards
  • Concise URL format is ideal for search engine optimization (SEO) and is easy to communicate verbally
  • CakePHP and Zend Framework objects can be imported into Vork; Vork Helpers and components can be used within Zend Framework and CakePHP
  • CSS-reset with default styles to provide cross-browser display consistency verified in Firefox, Google Chrome, Safari (OS X, iPhone & Windows) and IE6, 7 & 8

Extensive Toolset

  • E-commerce tools to validate & charge credit cards, accept PayPal payments, get UPS shipping rates, track a package, generate QR codes & more!Vork can generate QR codes and 3D charts!
  • Simplified use of Google tools: Maps, Charts, Analytics, AdSense, Sitemap, Payments, Translate
  • Amazon Web Services connection interface with automated caching mechanism
  • One-line of code turns any controller or action into a full-featured Wiki including a Wiki search engine
  • Forms maintain state automatically + ample tools include a WYSIWYG textarea that produces valid XHTML 1.1 markup and works in every browser
  • Internationalization (i18n) – multilingual forms allow users to easily type characters in other alphabets by pressing the phonetically-equivalent English keys
  • Integration with all mainstream JavaScript frameworks: YUI, jQuery, Prototype, MooTools, script.aculo.us, Dojo, SWFObject, Ext Core, Chrome Frame
  • Universal log-in/log-out/forgot-password utility
  • Turn any page of your application into a URL shortening site
  • User input validity is verified both in JavaScript (for user-experience) and in PHP (for security) – form validation rules are only written once
  • Extensive HTML helper functions including generation of Twitter Tweet links, tag clouds and simplified embedding of Adobe Flash
  • Consistent interface to many 3rd-party tools including Meetup event management & sharing boxes like: // Bookmark and Share
  • Email tools including outgoing-mail templates that operate like MVC-elements & spam-proof email address display tools
  • AJAX tools including inline language translation and simplified data-loading
  • Completely automatic SSL-link management to simplify transitions between https:// and http:// pages
  • Image management tools to watermark an uploaded image + generate multiple images in different sizes (fullsize, thumbnail, etc.)
  • POST utility to simplify connecting to web services
  • Effortless media integration including Flickr feeds, YouTube videos and embedding an MP3 player
  • Default 404 “not found” page has a Google Search box pre-populated to search your site for content related to the missing page
  • RSS layout makes it easy for any PHP array to become an RSS 2.0 or Atom feed; RSS reader makes quick work of syndicating feeds
  • Debugging tools that output to your Firefox Firebug console

Requirements

  • PHP – any version between 5.0.2 and 5.3.x
  • A database is optional and any database or cloud-DB that is supported by PHP will work with Vork
  • Works on any web server (Apache, Microsoft IIS, etc.)
  • Works with any operating system (Linux, Windows, Mac OS X, FreeBSD, etc.)
  • Integrated caching through any package with a PHP interface (Memcached, etc.)
CakePHP Auth Component Using 2 Tables
Nov 4th, 2009 by wood

CakePHP Version 1.2.5

I would like a single user to have multiple email addresses.
I would like a single user to have a single password.
I would like users to log in using any of their multiple email addresses and their single password.

I have created a users table with an id and a password field.
I have created a user_email_addresses table with an id field a user_id field and an email_address field.

Question:
How do I modify the auth component minimally to look for the "username" in this case, "email_address", in the user_email_addresses table and the "password" in the users table?

Code would be great!

CakePHP: ACL and/or Auth
Oct 30th, 2009 by wood

My web application only has one level of authorization. It's either you're logged in or not. Would ACL be overkill for this? Would the Auth component be sufficient/secure enough to handle this situation?

Does CakePHP session anonymous users? If so, is there a way to turn that off? I don't think I need sessions to be passed around if the user is anonymous.

Zend Auth and ACL
Jan 22nd, 2009 by wood

Hi there,

I am hoping some can help me a little bit, I am currently developing my first site using a PHP framework, part of the site is spilt into a members area, this is where my confusion begins to surface, withing the members area I want normal members to be able to add new comments and edit there own comments, simple enough that I can just check the posters name against the username that is stored in the session, my confusion comes with differentiating between the 'normal' users and the higher level users who have the ability to delete and modify any ones comments etc, they should also be able to access the admin section of the site.

My question is should all user login through the same Zend_Auth controller, or should there be seperate controllers using Zend_Auth for each type of user or can all that be dealt with using Zend_Acl? Any help, advice, article, or tutorials would be greatfully appreciated. Personally I think the Zend documentation is a little raw on some classes.

Thanks in advance

sico87

Release: [Kohana Module] Authlite, for User Authentication
Jan 20th, 2009 by wood

Latest release: v1.2.3

Initially I was going to wait for my Layerful Framework (a transparent layering framework for Kohana) to mature before releasing its bundled modules. However, since this Authlite module can be used independently to Layerful, I am releasing it now.

What is Authlite

Authlite is a user authentication module for Kohana.

What’s the difference between Authlite and Auth?

Kohana comes with an official Auth module which does exactly what was described in the last paragraph, so why another module then?

It is because Authlite offers greater flexibilty. Please read the features outlined below to find more.

Features

  • Legacy database compatibility
  • Configurable database columns
  • Multiple instances of Authlite
  • Does not enforce user roles
  • Auth-like syntax and usage
  • Lightweight

Legacy database compatibility

One thing that keeps me away from using Kohana’s Auth module, is that it forces us to use a password hash seed. This is okay for a brand new application, but what about the ones with legacy databases? There are a lot of existing applications use plain MD5 or SHA1 hashes, Auth makes it impossible to use these existing data.

Authlite, on the other hand, does not force developers to use any seeds at all. Like Auth, we can define the encryption method (e.g. md5, sha1) in the config file.

Configurable database columns

Further than that, the user model, username column, password column and session column are all configurable.

Multiple instances of Authlite

If your application has more than one user tables, you will struggle to make it work in Auth. In Authlite, simply have one config file for each user object, and config their user model, session key and the other variables accordingly.

Does not enforce user roles

For simple applications we often do not even want to have roles attached to our user model. In Auth, user role is mandatory, which makes things more complicated than they should be. In Authlite, roles are handled by Kohana framework itself. By using ORM model relationships, roles can be added, removed and modified very easily. A tailoured ACL (Access Control List) solution can be developed in no time.

Auth-like syntax and usage

Authlite is based on Auth, so if you’re already familiar with using Auth, you will find Authlite a breeze to use.

Lightweight

Even if you have never used Auth before, you will find Authlite to be extremely easy to use. :)

Usage Example

// Authlite instance
$this->authlite = Authlite::instance('authlite');

// login check
if ( ! $this->authlite->logged_in() && Router::$method != 'login')
{
	url::redirect(Router::$controller.'/login');
}
else
{
	// assigns the user object
	$this->user = $this->authlite->get_user();
}

Changelog

v1.2.3 [2009-02-05]

  • login() now supports non-unique usernames

v1.2.2 [2009-02-05]

  • added force_login()

v1.2.1 [2009-01-27]

  • fixed a logging bug introduced in 1.2

v1.2 [2009-01-27]

  • added add_to_ignore() and remove_from_ignore()
  • code clean up

Older versions were not tagged with version numbers, you may check out the commit history on GitHub.

To Do

  • Add configurable, optional hash seed

Source Code / Download

Tags: , , , , , , , , , ,

Related posts



»  Substance: PHP Frameworks   »  SiteMap