Archives mensuelles : juin 2010

Subversion, memo

Checkout

# To checkout in repository_name dir
svn co https://svn.domain.com/repository_name repository_name
 # To checkout in the current dir
svn co https://svn.domain.com/repository_name .

Commit

svn ci -m "your message" file

Copy

svn copy http://repository.url.domain.tld/trunk https://repository.url.domain.tld/tags/0.1.1 -m "comment"

PHP, Comment calculer N jours depuis une date

J’ai eu besoin de calculer 92 jour depuis le jour J+1, donc voila, le petit algo mignon.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
    $month = date('m');
    $year = date('Y');
    $day = date('d', mktime(0, 0, 0, $month, date('d', strtotime("+1 day")), $year));
    $month = date('m', strtotime('+1 day'));
    $dateArray = array();
    $dateArray[] = '';  
    for($i = 0,$j = $day; $i < 92; $i++,$j++) {
      $tmp = array();
      if($j > date('t', mktime(0, 0, 0, $month, '01', $year))) {
        $j = 1;
        if($month == 12) {
          $year = date('Y', mktime(0, 0, 0, '01', '01', $year+1));
        }
        $month = date('m', mktime(0, 0, 0, $month+1, '01', $year));
      }
      if(strlen($j) != 2)
        $tmp[] = '0'.$j;
      else
        $tmp[] = $j;
      if(strlen($month) != 2)
        $tmp[] = '0'.$month;
      else
        $tmp[] = $month;
      $tmp[] = $year;
      $dateArray[] = implode('-', $tmp);
    }

ce qui donne une fois passer a un widget symfony qui va bien

$this->widgetSchema['date_demarage'] = new sfWidgetFormSelect(array('label' => 'Date de démarrage',
                                                                    'choices' => array_combine($dateArray, $dateArray)
                                                                    ));
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<select name="ventes[date_demarage]" id="ventes_date_demarage">
<option value="" selected="selected"></option>
<option value="09-06-2010">09-06-2010</option>
<option value="10-06-2010">10-06-2010</option>
<option value="11-06-2010">11-06-2010</option>
<option value="12-06-2010">12-06-2010</option>
<option value="13-06-2010">13-06-2010</option>
<option value="14-06-2010">14-06-2010</option>
<option value="15-06-2010">15-06-2010</option>
<option value="16-06-2010">16-06-2010</option>
<option value="17-06-2010">17-06-2010</option>
<option value="18-06-2010">18-06-2010</option>
<option value="19-06-2010">19-06-2010</option>
<option value="20-06-2010">20-06-2010</option>
<option value="21-06-2010">21-06-2010</option>
<option value="22-06-2010">22-06-2010</option>
<option value="23-06-2010">23-06-2010</option>
<option value="24-06-2010">24-06-2010</option>
<option value="25-06-2010">25-06-2010</option>
<option value="26-06-2010">26-06-2010</option>
<option value="27-06-2010">27-06-2010</option>
<option value="28-06-2010">28-06-2010</option>
<option value="29-06-2010">29-06-2010</option>
<option value="30-06-2010">30-06-2010</option>
<option value="01-07-2010">01-07-2010</option>
<option value="02-07-2010">02-07-2010</option>
<option value="03-07-2010">03-07-2010</option>
<option value="04-07-2010">04-07-2010</option>
<option value="05-07-2010">05-07-2010</option>
<option value="06-07-2010">06-07-2010</option>
<option value="07-07-2010">07-07-2010</option>
<option value="08-07-2010">08-07-2010</option>
<option value="09-07-2010">09-07-2010</option>
<option value="10-07-2010">10-07-2010</option>
<option value="11-07-2010">11-07-2010</option>
<option value="12-07-2010">12-07-2010</option>
<option value="13-07-2010">13-07-2010</option>
<option value="14-07-2010">14-07-2010</option>
<option value="15-07-2010">15-07-2010</option>
<option value="16-07-2010">16-07-2010</option>
<option value="17-07-2010">17-07-2010</option>
<option value="18-07-2010">18-07-2010</option>
<option value="19-07-2010">19-07-2010</option>
<option value="20-07-2010">20-07-2010</option>
<option value="21-07-2010">21-07-2010</option>
<option value="22-07-2010">22-07-2010</option>
<option value="23-07-2010">23-07-2010</option>
<option value="24-07-2010">24-07-2010</option>
<option value="25-07-2010">25-07-2010</option>
<option value="26-07-2010">26-07-2010</option>
<option value="27-07-2010">27-07-2010</option>
<option value="28-07-2010">28-07-2010</option>
<option value="29-07-2010">29-07-2010</option>
<option value="30-07-2010">30-07-2010</option>
<option value="31-07-2010">31-07-2010</option>
<option value="01-08-2010">01-08-2010</option>
<option value="02-08-2010">02-08-2010</option>
<option value="03-08-2010">03-08-2010</option>
<option value="04-08-2010">04-08-2010</option>
<option value="05-08-2010">05-08-2010</option>
<option value="06-08-2010">06-08-2010</option>
<option value="07-08-2010">07-08-2010</option>
<option value="08-08-2010">08-08-2010</option>
<option value="09-08-2010">09-08-2010</option>
<option value="10-08-2010">10-08-2010</option>
<option value="11-08-2010">11-08-2010</option>
<option value="12-08-2010">12-08-2010</option>
<option value="13-08-2010">13-08-2010</option>
<option value="14-08-2010">14-08-2010</option>
<option value="15-08-2010">15-08-2010</option>
<option value="16-08-2010">16-08-2010</option>
<option value="17-08-2010">17-08-2010</option>
<option value="18-08-2010">18-08-2010</option>
<option value="19-08-2010">19-08-2010</option>
<option value="20-08-2010">20-08-2010</option>
<option value="21-08-2010">21-08-2010</option>
<option value="22-08-2010">22-08-2010</option>
<option value="23-08-2010">23-08-2010</option>
<option value="24-08-2010">24-08-2010</option>
<option value="25-08-2010">25-08-2010</option>
<option value="26-08-2010">26-08-2010</option>
<option value="27-08-2010">27-08-2010</option>
<option value="28-08-2010">28-08-2010</option>
<option value="29-08-2010">29-08-2010</option>
<option value="30-08-2010">30-08-2010</option>
<option value="31-08-2010">31-08-2010</option>
<option value="01-09-2010">01-09-2010</option>
<option value="02-09-2010">02-09-2010</option>
<option value="03-09-2010">03-09-2010</option>
<option value="04-09-2010">04-09-2010</option>
<option value="05-09-2010">05-09-2010</option>
<option value="06-09-2010">06-09-2010</option>
<option value="07-09-2010">07-09-2010</option>
<option value="08-09-2010">08-09-2010</option>
</select>

PHP Symfony, Comment définir un groupe avec sfGuardDoctrinePlugin lors d’une inscription

Tout est dans le titre

protected function processForm(sfWebRequest $request, sfForm $form)
{
  $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName()));
  if($form->isValid())
  {
    $register = $form->save();
    $register->addGroupByName('member');
    $register->addPermissionByName('member');
    $register->profile->setSfGuardUserId($register->id);
    $register->save();
    $this->getUser()->signIn($this->form->getObject());
    $this->redirect('@feeds');
  }
  $this->getUser()->setFlash('error','formular is not correctly filled.');
}