Warning: base64_decode() has been disabled for security reasons in /home/entroduc/public_html/wp-content/plugins/easy-adsenser/easy-adsenser.php on line 44
symfony archive at entroducing.com

Archive for the 'symfony' Category

27
Feb

symfony conditional validation

Below are the snippets on how to implement a conditional validation in the form. i.e. validate field A if field B is true

As discussed in this tutorial (though it is for symfony 1.2, it will works in 1.4), the key thing is to set a post validator to validate values after the initial validation.

Continue reading ‘symfony conditional validation’

VN:F [1.9.15_1155]
Rating: 9.5/10 (2 votes cast)
VN:F [1.9.15_1155]
Rating: 0 (from 0 votes)
26
Feb

sf_guard_user_profile id and user_id are messed up

If you use symfony’s sfDoctrineApply plugin and for some reason, the ‘id’ and ‘user_id’ in sf_guard_user_profile are messed up, you can try the below SQL.

The SQL would update sf_guard_user’s id to match the sf_guard_user_profile’s id.

Take note that this is provided that your other application tables are using sf_guard_user_profile‘s id and not the sf_guard_user‘s id.

Continue reading ‘sf_guard_user_profile id and user_id are messed up’

VN:F [1.9.15_1155]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.15_1155]
Rating: 0 (from 0 votes)
09
Jan

symfony backend: displaying thumbnail or photo in listing

if you are using the admin generator to generate your backend application and want to show thumbnail or photo in your listing, you can try the following steps.

Here’s an example of how it will looks like when the thumbnail is showing on the listing page.

Before you add it in, you need to check the variable name of the row that the admin generator uses.

To check the variable name, go to the cache folder for the module and open the _list.php file with a notepad.
Take note of the row

\\cache\backend\dev\modules\autoContestphoto\templates\_list.php
...
        <?php foreach ($pager->getResults() as $i => $contest_photo): $odd = fmod(++$i, 2) ? 'odd' : 'even' ?>
          <tr class="sf_admin_row <?php echo $odd ?>">
            <?php include_partial('contestphoto/list_td_batch_actions', array('contest_photo' => $contest_photo, 'helper' => $helper)) ?>
            <?php include_partial('contestphoto/list_td_tabular', array('contest_photo' => $contest_photo)) ?>
            <?php include_partial('contestphoto/list_td_actions', array('contest_photo' => $contest_photo, 'helper' => $helper)) ?>
          </tr>
        <?php endforeach; ?>
...

In my case, the variable name for the row is $contest_photo

Next, create a partial call _thumbnail.php in the template folder of the module.
In this partial, echo the path of the thumbnail or the photo with a img html tag

\\apps\backend\modules\contestphoto\templates\_thumbnail.php
<img src="<?php echo $contest_photo->getThumbnailPath() ?>"/>

Then, edit the generator file to include the _thumbnail column for your list

\\apps\backend\modules\contest\config\generator.yml

...

      list:
        title: Contest Photo Management
        display: [=title, contest, category, user, title, isDeleted, _thumbnail]
        sort: [created_at, desc]
        max_per_page: 50

...

Clear your cache and see if the thumbnail loads.

VN:F [1.9.15_1155]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.15_1155]
Rating: 0 (from 0 votes)
27
Dec

Symfony error : Call to undefined method myUser::setReferer.

If you have this error

Call to undefined method myUser::setReferer.

and if you are using sfGuard plugin, go to

apps\[project]\lib\myUser.class.php

and change


class myUser extends sfBasicSecurityUser
{
}

to


class myUser extends sfGuardSecurityUser
{
}
VN:F [1.9.15_1155]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.15_1155]
Rating: +1 (from 1 vote)
23
Oct

You are not allowed to access this file. Check frontend_dev.php for more information.

If you had deployed to production/LIVE environment and encounter this error message when you tried to access fontend_dev.php, it is due to a security IP check in fontend_dev.php to check for 127.0.0.1 before it continue.

Thus, you need to add your public IP address in fontend_dev.php to tell symfony to let you through in the production environment. Here’s how to do it

In your fontend_dev.php file, put in the below line to print out your public ip address

echo $_SERVER['REMOTE_ADDR']. &quot;&lt;br/&gt;&quot;

Access frontend_dev.php and copy the IP address as shown.

Edit frontend_dev.php and change the line

if (!in_array(@$_SERVER['REMOTE_ADDR'], array('127.0.0.1', '::1')))

to

if (!in_array(@$_SERVER['REMOTE_ADDR'], array('127.0.0.1', '::1', '111.222.333.444')))

Where 111.222.333.444 is the IP address you copied.

Upload back the frontend_dev.php and try again

VN:F [1.9.15_1155]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.15_1155]
Rating: +1 (from 1 vote)