[pLog-svn] r3559 - in plog/trunk: class/action class/action/admin
class/data class/data/validator class/net/http
class/summary/action class/summary/view class/view/admin locale
templates/admin templates/summary
Oscar Renalias
oscar at renalias.net
Thu Jun 8 19:08:25 GMT 2006
Jon,
I am not sure if you'll have any time but could you give this a try?
It should work in exactly the same way you meant it to work.
I also fixed the subdomain selection process in the registration page.
Oscar
On 8 Jun 2006, at 21:31, oscar at devel.lifetype.net wrote:
> Author: oscar
> Date: 2006-06-08 18:31:30 +0000 (Thu, 08 Jun 2006)
> New Revision: 3559
>
> Added:
> plog/trunk/class/data/validator/domainvalidator.class.php
> Modified:
> plog/trunk/class/action/admin/
> adminupdateblogsettingsaction.class.php
> plog/trunk/class/action/blogaction.class.php
> plog/trunk/class/data/textfilter.class.php
> plog/trunk/class/net/http/subdomains.class.php
> plog/trunk/class/summary/action/doblogregistration.class.php
> plog/trunk/class/summary/action/dofinishregister.class.php
> plog/trunk/class/summary/action/registeraction.class.php
> plog/trunk/class/summary/view/doblogregistrationview.class.php
> plog/trunk/class/view/admin/adminblogsettingsview.class.php
> plog/trunk/locale/locale_en_UK.php
> plog/trunk/templates/admin/blogsettings.template
> plog/trunk/templates/admin/globalsettings_general.template
> plog/trunk/templates/summary/registerstep2.template
> plog/trunk/templates/summary/registerstep3.template
> Log:
> merged Jon's support for different domains at the same time
>
>
> Modified: plog/trunk/class/action/admin/
> adminupdateblogsettingsaction.class.php
> ===================================================================
> --- plog/trunk/class/action/admin/
> adminupdateblogsettingsaction.class.php 2006-06-08 17:33:01 UTC
> (rev 3558)
> +++ plog/trunk/class/action/admin/
> adminupdateblogsettingsaction.class.php 2006-06-08 18:31:30 UTC
> (rev 3559)
> @@ -6,7 +6,9 @@
> include_once( PLOG_CLASS_PATH."class/data/validator/
> integervalidator.class.php" );
> include_once( PLOG_CLASS_PATH."class/data/textfilter.class.php" );
> include_once( PLOG_CLASS_PATH."class/view/admin/
> adminblogsettingsview.class.php" );
> + include_once( PLOG_CLASS_PATH."class/data/validator/
> domainvalidator.class.php" );
> include_once( PLOG_CLASS_PATH."class/data/validator/rules/
> intrangerule.class.php" );
> + include_once( PLOG_CLASS_PATH."class/net/http/
> subdomains.class.php" );
>
>
> /**
> @@ -50,6 +52,8 @@
> $this->registerField( "blogEnableAutosaveDrafts" );
> $this->registerField( "blogShowInSummary" );
> $this->registerField( "blogSendNotification" );
> + $this->registerFieldValidator( "blogSubDomain", new
> DomainValidator());
> + $this->registerFieldValidator( "blogMainDomain", new
> DomainValidator());
> // set the view that we're going to use
> $view = new AdminBlogSettingsView( $this->_blogInfo );
> $view->setErrorMessage( $this->_locale->tr
> ("error_updating_settings"));
> @@ -61,6 +65,8 @@
> */
> function perform()
> {
> + $config =& Config::getConfig();
> +
> // fetch the settings from the db and update them
> accordingly
> $blogs = new Blogs();
> $blogSettings = $this->_blogInfo->getSettings();
> @@ -87,7 +93,42 @@
> $this->_blogInfo->setBlogCategoryId( $this->_request->getValue
> ( "blogCategory" ));
> $this->_blogInfo->setMangledBlogName( Textfilter::urlize( $this-
> >_blogInfo->getBlog()));
> $this->_blogInfo->setShowInSummary
> ( Textfilter::checkboxToBoolean( $this->_request->getValue
> ( "blogShowInSummary" )));
> +
> + // check to see whether we are going to save subdomain
> information
> + if( Subdomains::getSubdomainsEnabled()) {
> +
> + // Translate a few characters to valid names, and
> remove the rest
> + $mainDomain = Textfilter::domainize($this-
> >_request->getValue( "blogMainDomain" ));
> + if(!$mainDomain)
> + $mainDomain = "?";
> + $subDomain = Textfilter::domainize($this->_request-
> >getValue( "blogSubDomain" ));
>
> + if( Subdomains::isDomainAvailable( $mainDomain )) {
> + $this->_view = new AdminBlogSettingsView
> ( $this->_blogInfo );
> + $this->_view->setErrorMessage( $this->_locale-
> >tr("error_updating_blog_subdomain"));
> + $this->setCommonData();
> + return false;
> + }
> +
> + if( Subdomains::isValidDomainName( $mainDomain )) {
> + $this->_view = new AdminBlogSettingsView( $this-
> >_blogInfo );
> + $this->_view->setErrorMessage( $this->_locale->tr
> ("error_updating_blog_subdomain"));
> + $this->setCommonData();
> + return false;
> + }
> +
> + if($mainDomain == "?"){
> + $blog_domain = $subDomain;
> + }
> + else{
> + $blog_domain = $subDomain . "." . $mainDomain;
> + }
> +
> + print("blog_domain = $blog_domain" );
> +
> + $this->_blogInfo->setCustomDomain( $blog_domain );
> + }
> +
> // and now update the settings in the database
> $blogs = new Blogs();
>
>
> Modified: plog/trunk/class/action/blogaction.class.php
> ===================================================================
> --- plog/trunk/class/action/blogaction.class.php 2006-06-08
> 17:33:01 UTC (rev 3558)
> +++ plog/trunk/class/action/blogaction.class.php 2006-06-08
> 18:31:30 UTC (rev 3559)
> @@ -206,7 +206,7 @@
> }
> }
> else {
> - // if there is no user parameter, we take
> the blogId from the session
> + // if there is no user parameter, we take the
> blogId from the session
> if( $this->_session->getValue('blogId') != '' ) {
> $blogId = $this->_session->getValue('blogId');
> }
>
> Modified: plog/trunk/class/data/textfilter.class.php
> ===================================================================
> --- plog/trunk/class/data/textfilter.class.php 2006-06-08 17:33:01
> UTC (rev 3558)
> +++ plog/trunk/class/data/textfilter.class.php 2006-06-08 18:31:30
> UTC (rev 3559)
> @@ -425,14 +425,37 @@
> *
> * @param string The string that we wish to convert into
> something that can be used as a URL
> */
> + /**
> + * Given a string, convert it into something that can be
> used in the domain part of a URL
> + * (it probably doesn't work very
> + * well with non iso-8859-X strings) It will remove the
> following characters:
> + *
> + * ; / ? : @ & = + $ ,
> + *
> + * It will convert accented characters such as ˆ, , ’,
> etc to
> + * their non-accented counterparts (a, e, i) And
> + * any other non-alphanumeric character that hasn't been
> removed
> + * or replaced will be thrown away.
> + *
> + * @param string The string that we wish to convert into
> something that can be used as a URL
> + */
> function domainize( $string )
> {
> - $search = array('_',' ');
> - $replace = array('-','-');
> + // remove unnecessary spaces and make everything lower case
> + $string = preg_replace( "/ +/", " ", strtolower($string) );
> +
> + // removing a set of reserved characters
> (rfc2396: ; / ? : @ & = + $ ,)
> + $string = str_replace(array
> (';','/','?',':','@','&','=','+','$',','), '', $string);
> +
> + // replace some characters to similar ones
> + $search = array('_','
> ','ä','ö','ü','é','è','à','ç','à','è','ì','ò','ù','á','é
> ','í','ó','ú','ë','ï');
> + $replace = array
> ('-','-','a','o','u','e','e','a','c','a','e','i','o','u','a','e','i','
> o','u','e','i');
> $string = str_replace($search, $replace, $string);
> - $string = Textfilter::urlize($string);
> +
> + // and everything that is still left that hasn't been
> replaced/encoded, throw it away
> + $string = preg_replace( '/[^a-z0-9.-]/', '', $string );
> $string = trim($string, "-.");
> -
> +
> return $string;
> }
>
>
> Added: plog/trunk/class/data/validator/domainvalidator.class.php
> ===================================================================
> --- plog/trunk/class/data/validator/domainvalidator.class.php
> 2006-06-08 17:33:01 UTC (rev 3558)
> +++ plog/trunk/class/data/validator/domainvalidator.class.php
> 2006-06-08 18:31:30 UTC (rev 3559)
> @@ -0,0 +1,32 @@
> +<?php
> +
> + include_once( PLOG_CLASS_PATH."class/data/validator/
> validator.class.php" );
> + include_once( PLOG_CLASS_PATH."class/data/validator/rules/
> nonemptyrule.class.php" );
> + include_once( PLOG_CLASS_PATH."class/data/validator/rules/
> filteredwordsrule.class.php" );
> +
> + /**
> + * \ingroup Validator
> + *
> + * Checks if a domain is valid. Domains have to comply with
> the following rules:
> + *
> + * - They must not be empty
> + * - They must not be any of the forbidden usernames.
> Forbidden domains
> + * (and usernames) can be configured via the
> 'forbidden_usernames'
> + * configuration parameter.
> + *
> + * @see NonEmptyRule
> + * @see FilteredWordsRule
> + */
> + class DomainValidator extends Validator
> + {
> + function DomainValidator()
> + {
> + $this->Validator();
> +// $this->addRule( new NonEmptyRule());
> + $config =& Config::getConfig();
> + $forbiddenDomainNames = $config->getValue
> ( "forbidden_usernames", "" );
> + $forbiddenDomainNamesArray = explode( " ",
> $forbiddenDomainNames );
> + $this->addRule( new FilteredWordsRule
> ( $forbiddenDomainNamesArray ));
> + }
> + }
> +?>
> \ No newline at end of file
>
> Modified: plog/trunk/class/net/http/subdomains.class.php
> ===================================================================
> --- plog/trunk/class/net/http/subdomains.class.php 2006-06-08
> 17:33:01 UTC (rev 3558)
> +++ plog/trunk/class/net/http/subdomains.class.php 2006-06-08
> 18:31:30 UTC (rev 3559)
> @@ -63,5 +63,72 @@
> // return it...
> return( $isSubdomain );
> }
> +
> + /**
> + * Returns true if subdomains are enabled in one way or another
> in the configuration
> + *
> + * @return True if enabled or false otherwise
> + * @static
> + */
> + function getSubdomainsEnabled()
> + {
> + include_once( PLOG_CLASS_PATH."class/config/
> config.class.php" );
> + $config =& Config::getConfig();
> +
> + $blog_domains_enabled =
> + ($config->getValue("subdomains_enabled", 0) &&
> + (strpos($config->getValue("subdomains_base_url", ""),
> + "{blogdomain}") !== FALSE));
> +
> + return( $blog_domains_enabled );
> + }
> +
> + /**
> + * Returns an array with the list of available domains
> + *
> + * @return True if successful or false otherwise
> + */
> + function getAvailableDomains()
> + {
> + include_once( PLOG_CLASS_PATH."class/config/config.class.php" );
> + $config =& Config::getConfig();
> +
> + $available_domains = $config->getValue
> ("subdomains_available_domains", "");
> + if($available_domains){
> + $available_domains = explode(" ",
> $available_domains);
> + }
> +
> + return( $available_domains );
> + }
> +
> + /**
> + * Returns true if the given domain name is one of the available
> ones
> + *
> + * @param domain The domain name we'd like to check
> + * @return True if successful or false otherwise
> + * @static
> + * @see Subdomains::getAvailableDomains
> + */
> + function isDomainAvailable( $domain )
> + {
> + $domains = Subdomains::getAvailableDomains();
> + return( array_key_exists( $domain, array_flip( $domains )));
> + }
> +
> + /**
> + * Returns true if the given subdomain name is valid (i.e.
> complies with the domain naming restrictions)
> + *
> + * @param domain The name we'd like to check
> + * @return True if successful or false otherwise
> + */
> + function isValidDomainName( $domain )
> + {
> + // Use forbidden_usernames for domains as well, since
> they are related
> + // in that we don't want people to register www.xyz or
> forums.xyz
> + // through these subdomains either
> + include_once( PLOG_CLASS_PATH."class/data/validator/
> usernamevalidator.class.php" );
> + $val = new UsernameValidator();
> + return( $val->validate( $domain ));
> + }
> }
> ?>
> \ No newline at end of file
>
> Modified: plog/trunk/class/summary/action/doblogregistration.class.php
> ===================================================================
> --- plog/trunk/class/summary/action/doblogregistration.class.php
> 2006-06-08 17:33:01 UTC (rev 3558)
> +++ plog/trunk/class/summary/action/doblogregistration.class.php
> 2006-06-08 18:31:30 UTC (rev 3559)
> @@ -7,6 +7,8 @@
> include_once( PLOG_CLASS_PATH."class/summary/view/
> doblogregistrationview.class.php" );
> include_once( PLOG_CLASS_PATH."class/summary/view/
> blogtemplatechooserview.class.php" );
> include_once( PLOG_CLASS_PATH."class/locale/locales.class.php" );
> + include_once( PLOG_CLASS_PATH."class/data/validator/
> domainvalidator.class.php" );
> + include_once( PLOG_CLASS_PATH."class/net/http/
> subdomains.class.php" );
>
> /**
> * registers a blog
> @@ -23,20 +25,57 @@
> $this->registerFieldValidator( "blogName", new
> StringValidator());
> $this->registerFieldValidator( "blogCategoryId", new
> IntegerValidator());
> $this->registerFieldValidator( "blogLocale", new
> StringValidator());
> + $this->registerFieldValidator( "blogSubDomain", new
> DomainValidator(), true );
> + $this->registerFieldValidator( "blogMainDomain", new
> DomainValidator(), true );
> $view = new doBlogRegistrationView();
> $view->setErrorMessage( $this->_locale->tr
> ("register_error_creating_blog"));
> $this->setValidationErrorView( $view );
> }
>
> + function validate()
> + {
> + // if the other fields did not validate, no need to continue
> + if( !parent::validate())
> + return false;
> +
> + // check to see whether we are going to save subdomain
> information
> + $valid = true;
> + if( Subdomains::getSubdomainsEnabled()) {
> +
> + // Translate a few characters to valid names, and remove the rest
> + $mainDomain = Textfilter::domainize($this-
> >_request->getValue( "blogMainDomain" ));
> + if(!$mainDomain)
> + $mainDomain = "?";
> + $subDomain = Textfilter::domainize($this->_request-
> >getValue( "blogSubDomain" ));
> +
> + // get list of allowed domains
> + $available_domains = Subdomains::getAvailableDomains();
> +
> + // make sure the mainDomain parameter is one of
> the blogAvailableDomains and if not,
> + // force a validation error
> + if( !Subdomains::isDomainAvailable( $mainDomain )
> || !Subdomains::isValidDomainName( $subDomain )) {
> + $valid = false;
> + $this->_form->setFieldValidationStatus( "blogSubDomain",
> false );
> + $this->validationErrorProcessing();
> + }
> +
> + if($mainDomain == "?")
> + $this->blogDomain = $subDomain;
> + else
> + $this->blogDomain = $subDomain . "." .
> $mainDomain;
> + }
> +
> + return( $valid );
> + }
> +
> function perform()
> {
> - // validated values
> - $tf = new Textfilter();
> -
> // create the new view and clean the cache
> $this->_view = new BlogTemplateChooserView();
> $this->setValues();
> $this->setCommonData();
> +
> + return( true );
> }
> }
> -?>
> +?>
> \ No newline at end of file
>
> Modified: plog/trunk/class/summary/action/dofinishregister.class.php
> ===================================================================
> --- plog/trunk/class/summary/action/dofinishregister.class.php
> 2006-06-08 17:33:01 UTC (rev 3558)
> +++ plog/trunk/class/summary/action/dofinishregister.class.php
> 2006-06-08 18:31:30 UTC (rev 3559)
> @@ -100,6 +100,7 @@
> function createBlog($userId)
> {
> $this->blogName = stripslashes($this->_request-
> >getValue("blogName"));
> + $this->blogDomain = stripslashes($this->_request-
> >getValue("blogDomain"));
> $this->blogCategoryId = $this->_request->getValue
> ("blogCategoryId");
> $this->blogLocale = $this->_request->getValue
> ("blogLocale");
> $this->templateId = $this->_request->getValue
> ("templateId");
> @@ -118,6 +119,12 @@
> $blogInfo->setLocale( $locale );
> $blogInfo->setTemplate( $this->templateId );
> $blogInfo->setBlogCategoryId( $this->blogCategoryId );
> +
> + if( Subdomains::getSubdomainsEnabled()) {
> + $blogDomain = $this->_request->getValue( "blogDomain" );
> + $blogInfo->setCustomDomain( $blogDomain );
> + }
> +
> $newblogId = $blogs->addBlog( $blogInfo );
>
> if( !$newblogId ) {
>
> Modified: plog/trunk/class/summary/action/registeraction.class.php
> ===================================================================
> --- plog/trunk/class/summary/action/registeraction.class.php
> 2006-06-08 17:33:01 UTC (rev 3558)
> +++ plog/trunk/class/summary/action/registeraction.class.php
> 2006-06-08 18:31:30 UTC (rev 3559)
> @@ -20,6 +20,7 @@
> var $blogCategoryId;
> var $blogLocale;
> var $templateId;
> + var $blogDomain;
> //}}}
>
> //{{{function RegisterAction( $actionInfo, $request )
> @@ -29,6 +30,7 @@
>
> $tf = new Textfilter();
> $this->blogName = $tf->filterAllHTML( $this->_request-
> >getValue( "blogName" ));
> + $this->blogDomain = $tf->filterAllHTML( $this->_request-
> >getValue( "blogDomain" ));
> $this->blogCategoryId = $this->_request->getValue
> ( "blogCategoryId" );
> $this->blogLocale = $this->_request->getValue
> ( "blogLocale" );
> $this->userName = $tf->filterAllHTML($this->_request-
> >getValue( "userName" ));
> @@ -55,6 +57,7 @@
> $this->_view->setValue( "userEmail", $this->userEmail );
> $this->_view->setValue( "blogName", $this->blogName );
> $this->_view->setValue( "blogCategoryId", $this-
> >blogCategoryId );
> + $this->_view->setValue( "blogDomain", $this->blogDomain );
> $this->_view->setValue( "blogLocale", $this->blogLocale );
> $this->_view->setValue( "templateId", $this->templateId );
> }
>
> Modified: plog/trunk/class/summary/view/
> doblogregistrationview.class.php
> ===================================================================
> --- plog/trunk/class/summary/view/doblogregistrationview.class.php
> 2006-06-08 17:33:01 UTC (rev 3558)
> +++ plog/trunk/class/summary/view/doblogregistrationview.class.php
> 2006-06-08 18:31:30 UTC (rev 3559)
> @@ -3,6 +3,7 @@
> include_once( PLOG_CLASS_PATH."class/summary/view/
> summaryview.class.php" );
> include_once( PLOG_CLASS_PATH."class/locale/locales.class.php" );
> include_once( PLOG_CLASS_PATH."class/dao/
> blogcategories.class.php" );
> + include_once( PLOG_CLASS_PATH."class/net/http/
> subdomains.class.php" );
>
> /**
> * shows a list with all the locales so that users can choose, too
> @@ -28,8 +29,14 @@
> // get a list of blog categories, so we can let user to choose
> $blogCategories = new BlogCategories();
> $categories = $blogCategories->getBlogCategories();
> - $this->setValue( "blogCategories", $categories );
> + $this->setValue( "blogCategories", $categories );
>
> + // enable or disable the drop-down list to select subdomains
> + if( Subdomains::getSubdomainsEnabled()) {
> + $this->setValue( "blogDomainsEnabled", true );
> + $this->setValue( "blogAvailableDomains",
> Subdomains::getAvailableDomains());
> + }
> +
> // and render the rest of the contents of the view
> parent::render();
> }
>
> Modified: plog/trunk/class/view/admin/adminblogsettingsview.class.php
> ===================================================================
> --- plog/trunk/class/view/admin/adminblogsettingsview.class.php
> 2006-06-08 17:33:01 UTC (rev 3558)
> +++ plog/trunk/class/view/admin/adminblogsettingsview.class.php
> 2006-06-08 18:31:30 UTC (rev 3559)
> @@ -4,6 +4,7 @@
> include_once( PLOG_CLASS_PATH."class/template/templatesets/
> templatesets.class.php" );
> include_once( PLOG_CLASS_PATH."class/locale/locales.class.php" );
> include_once( PLOG_CLASS_PATH."class/dao/
> blogcategories.class.php" );
> + include_once( PLOG_CLASS_PATH."class/net/http/
> subdomains.class.php" );
>
> /**
> * \ingroup View
> @@ -18,6 +19,8 @@
> {
> $this->AdminTemplatedView( $blogInfo, "blogsettings" );
>
> + $config =& Config::getConfig();
> +
> $blogSettings = $blogInfo->getSettings();
> $this->setValue( "blogAbout", $this->_blogInfo->getAbout());
> $this->setValue( "blogName", $this->_blogInfo->getBlog());
> @@ -40,6 +43,37 @@
> $this->setValue( "blogCategory", $this->_blogInfo-
> >getBlogCategoryId());
> $this->setValue( "blogShowInSummary", $this->_blogInfo-
> >getShowInSummary());
> $this->setValue( "blogSendNotification", $blogSettings->getValue
> ( "default_send_notification" ));
> +
> + // only do blog_domain stuff if subdomains are enabled
> + // Don't waste time here, as well as be less confusing by
> + // not showing the option to users who can't use it
> + if( Subdomains::getSubdomainsEnabled()) {
> + $domain = $this->_blogInfo->getCustomDomain();
> +
> + $available_domains = Subdomains::getAvailableDomains();
> +
> + // default to any domain, this will be overwritten
> + // if the domain is found in the available_domains
> array
> + $subdomain = $domain;
> + $maindomain = "?";
> +
> + foreach($available_domains as $avdomain){
> + // search to see if domain suffix is on
> + // the available_domain list.
> + $found = strpos($domain, $avdomain);
> + if($found !== FALSE && $found == (strlen($domain)
> - strlen($avdomain))){
> + $subdomain = substr($domain, 0, $found-1);
> + $maindomain = $avdomain;
> + break;
> + }
> + }
> +
> + // pass the domain information to the view
> + $this->setValue( "blogSubDomain", $subdomain );
> + $this->setValue( "blogMainDomain", $maindomain );
> + $this->setValue( "blogAvailableDomains",
> $available_domains );
> + $this->setValue( "blogDomainsEnabled", 1 );
> + }
> }
>
> function render()
>
> Modified: plog/trunk/locale/locale_en_UK.php
> ===================================================================
> --- plog/trunk/locale/locale_en_UK.php 2006-06-08 17:33:01 UTC (rev
> 3558)
> +++ plog/trunk/locale/locale_en_UK.php 2006-06-08 18:31:30 UTC (rev
> 3559)
> @@ -688,7 +688,6 @@
> $messages['help_temp_folder'] = 'Folder that LifeType can use to
> write its temporary data such as compiled templates, etc. Use a
> folder outside the web server tree for increased security [Default
> = ./tmp]';
> $messages['help_base_url'] = 'Base URL where this blog is installed';
> $messages['help_subdomains_enabled'] = 'Enable or disable
> subdomains. Please see the documentation for more information
> regarding subdomains [Default = No]';
> -$messages['help_subdomains_base_url'] = 'When subdomains are
> enabled, this base URL is used instead of base_url. Use {blogname}
> to get the blog name and {username} to get the name of the user
> owner of the blog in order to generate a link to a blog. (i.e.
> http://{blogname}.yourdomain.com)';
> $messages['help_include_blog_id_in_url'] = 'Meaningful only when
> subdomains are enabled and "normal" URLs are enabled, forces
> internally-generated URLs not to have the "blogId" parameter. Do
> not change unless you know what you are doing [Default = Yes]';
> $messages['help_script_name'] = 'Set this if you need to rename
> index.php to something else [Default = index.php]';
> $messages['help_show_posts_max'] = 'Maximum number of posts shown
> in the main page. Only meaningful for new blogs [Default = 15]';
> @@ -1041,6 +1040,11 @@
> $messages['first_day_of_week_label'] = 'First Day of Week';
> $messages['first_day_of_week_help'] = 'First Day of Week in
> calendar';
>
> +$messages['help_subdomains_base_url'] = 'When subdomains are
> enabled, this base URL is used instead of base_url. Use {blogname}
> to get the blog name, {username} to get the name of the user owner
> of the blog and {blogdomain} to allow the user to specify any
> subdomain in order to generate a link to a blog. (e.g.. http://
> {blogname}.yourdomain.com)';
> +
> $messages['registration_default_subject'] = 'LifeType registration
> confirmation';
>
> +$messages['error_invalid_subdomain'] = 'The subdomain name is not
> valid or it is not unique';
> +$messages['register_blog_domain_help'] = 'Name and subdomain that
> you would like to use for your new blog';
> +$messages['domain'] = 'Domain';
> ?>
> \ No newline at end of file
>
> Modified: plog/trunk/templates/admin/blogsettings.template
> ===================================================================
> --- plog/trunk/templates/admin/blogsettings.template 2006-06-08
> 17:33:01 UTC (rev 3558)
> +++ plog/trunk/templates/admin/blogsettings.template 2006-06-08
> 18:31:30 UTC (rev 3559)
> @@ -15,7 +15,29 @@
> {include file="$admintemplatepath/validate.template"
> field=blogName message=$locale->tr("error_empty_name")}
> </div>
>
> + {if $blogDomainsEnabled}
> <div class="field">
> + <label for="blogSubDomain">{$locale->tr("domain")}</label>
> + <div class="formHelp">{$locale->tr
> ("register_blog_domain_help")}</div>
> + <input type="text" name="blogSubDomain" id="blogSubDomain"
> style="width:150px" value="{$blogSubDomain}" />
> + <select name="blogMainDomain" id="blogMainDomain">
> + {foreach from=$blogAvailableDomains item=domain}
> + <option value="{$domain}"
> + {if $domain == $blogMainDomain}selected{/if}>
> + {if $domain == "?"}
> + {$locale->tr("subdomains_any_domain")}
> + {else}
> + .{$domain}
> + {/if}
> + </option>
> + {/foreach}
> + </select>
> + {include file="$admintemplatepath/validate.template"
> field=blogSubDomain message=$locale->tr("error_invalid_subdomain")}
> + {include file="$admintemplatepath/validate.template"
> field=blogMainDomain message=$locale->tr("error_invalid_domain")}
> + </div>
> + {/if}
> +
> + <div class="field">
> <label for="blogAbout">{$locale->tr("description")}</label>
> <span class="required"></span>
> <div class="formHelp">{$locale->tr("blog_description_help")}
> </div>
>
> Modified: plog/trunk/templates/admin/globalsettings_general.template
> ===================================================================
> --- plog/trunk/templates/admin/globalsettings_general.template
> 2006-06-08 17:33:01 UTC (rev 3558)
> +++ plog/trunk/templates/admin/globalsettings_general.template
> 2006-06-08 18:31:30 UTC (rev 3559)
> @@ -38,6 +38,12 @@
> <div class="formHelp">{$locale->tr("help_subdomains_base_url")}
> </div>
> <input style="width:100%" type="text" name="config
> [subdomains_base_url]" value="{$subdomains_base_url}"/>
> </div>
> + <!-- subdomains_available_domains -->
> + <div class="field">
> + <label for="config
> [subdomains_available_domains]">subdomains_available_domains</label>
> + <div class="formHelp">{$locale->tr
> ("help_subdomains_available_domains")}</div>
> + <input style="width:100%" type="text" name="config
> [subdomains_available_domains]"
> value="{$subdomains_available_domains}"/>
> + </div>
> <!-- include_blog_id_in_url -->
> <div class="field">
> <label for="config
> [include_blog_id_in_url]">include_blog_id_in_url</label>
>
> Modified: plog/trunk/templates/summary/registerstep2.template
> ===================================================================
> --- plog/trunk/templates/summary/registerstep2.template 2006-06-08
> 17:33:01 UTC (rev 3558)
> +++ plog/trunk/templates/summary/registerstep2.template 2006-06-08
> 18:31:30 UTC (rev 3559)
> @@ -10,7 +10,30 @@
> <input type="text" name="blogName" value="{$blogName}"
> id="blogName" />
> {include file="summary/validate.template" field=blogName
> message=$locale->tr("error_empty_name")}
> </div>
> +
> + {if $blogDomainsEnabled}
> <div class="field">
> + <label for="blogSubDomain">{$locale->tr("domain")}</label>
> + <span class="required">*</span>
> + <div class="formHelp">{$locale->tr
> ("register_blog_domain_help")}</div>
> + <input type="text" name="blogSubDomain" id="blogSubDomain"
> style="width:150px" value="{$blogSubDomain}" />
> + <select name="blogMainDomain" id="blogMainDomain">
> + {foreach from=$blogAvailableDomains item=domain}
> + <option value="{$domain}" {if $domain == $blogMainDomain}
> selected{/if}>
> + {if $domain == "?"}
> + {$locale->tr("subdomains_any_domain")}
> + {else}
> + .{$domain}
> + {/if}
> + </option>
> + {/foreach}
> + </select>
> + {include file="summary/validate.template" field=blogSubDomain
> message=$locale->tr("error_invalid_subdomain")}
> + {include file="summary/validate.template"
> field=blogMainDomain message=$locale->tr("error_invalid_domain")}
> + </div>
> + {/if}
> +
> + <div class="field">
> <label for="blogCategoryId">{$locale->tr("blog_category")}</
> label>
> <span class="required">*</span>
> <div class="formHelp">{$locale->tr("blog_category_help")}</div>
> @@ -20,6 +43,7 @@
> {/foreach}
> </select>
> </div>
> +
> <div class="field">
> <label for="blogLocale">{$locale->tr("language")}</label>
> <span class="required">*</span>
>
> Modified: plog/trunk/templates/summary/registerstep3.template
> ===================================================================
> --- plog/trunk/templates/summary/registerstep3.template 2006-06-08
> 17:33:01 UTC (rev 3558)
> +++ plog/trunk/templates/summary/registerstep3.template 2006-06-08
> 18:31:30 UTC (rev 3559)
> @@ -31,6 +31,7 @@
> <!-- <input type="button"
> onClick="javascript:window.location='summary.php?op=RegisterStep3'"
> value="« {$locale->tr("register_back")}" name="Register"/> -->
> <input type="submit" name="{$locale->tr("register_next")}"
> value="{$locale->tr("register_next")} »"/>
> <input type="hidden" name="userName" value="{$userName}"/>
> + <input type="hidden" name="blogDomain" value="{$blogDomain}"/>
> <input type="hidden" name="userFullName"
> value="{$userFullName}"/>
> <input type="hidden" name="userPassword"
> value="{$userPassword}"/>
> <input type="hidden" name="userEmail" value="{$userEmail}"/>
>
> _______________________________________________
> pLog-svn mailing list
> pLog-svn at devel.lifetype.net
> http://devel.lifetype.net/mailman/listinfo/plog-svn
>
More information about the pLog-svn
mailing list