Skip to content

Commit 7f5a5d9

Browse files
committed
Add toString default value in model generation
1 parent dc466e1 commit 7f5a5d9

File tree

1 file changed

+77
-49
lines changed

1 file changed

+77
-49
lines changed

src/Ubiquity/orm/creator/Model.php

Lines changed: 77 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
<?php
2-
32
namespace Ubiquity\orm\creator;
43

54
/**
@@ -13,49 +12,54 @@
1312
*
1413
*/
1514
class Model {
15+
1616
private $members;
17+
1718
private $name;
19+
1820
private $table;
21+
1922
private $namespace;
23+
2024
private $database;
2125

2226
public function __construct($name, $namespace = "models") {
23-
$this->table=$name;
24-
$this->name = \ucfirst ( $name );
25-
$this->members = array ();
27+
$this->table = $name;
28+
$this->name = \ucfirst($name);
29+
$this->members = array();
2630
$this->namespace = $namespace;
2731
}
2832

2933
public function addMember(Member $member) {
30-
$this->members [$member->getName ()] = $member;
34+
$this->members[$member->getName()] = $member;
3135
return $this;
3236
}
3337

3438
public function addManyToOne($member, $name, $className, $nullable = false) {
35-
if (\array_key_exists ( $member, $this->members ) === false) {
36-
$this->addMember ( new Member ( $member ) );
37-
$this->removeMember ( $name );
39+
if (\array_key_exists($member, $this->members) === false) {
40+
$this->addMember(new Member($member));
41+
$this->removeMember($name);
3842
}
39-
$this->members [$member]->addManyToOne ( $name, $className, $nullable );
43+
$this->members[$member]->addManyToOne($name, $className, $nullable);
4044
}
4145

4246
public function removeMember($memberName) {
43-
if (isset ( $this->members [$memberName] ) && $this->members [$memberName]->isPrimary () === false)
44-
unset ( $this->members [$memberName] );
47+
if (isset($this->members[$memberName]) && $this->members[$memberName]->isPrimary() === false)
48+
unset($this->members[$memberName]);
4549
}
4650

4751
public function addOneToMany($member, $mappedBy, $className) {
48-
if (\array_key_exists ( $member, $this->members ) === false) {
49-
$this->addMember ( new Member ( $member ) );
52+
if (\array_key_exists($member, $this->members) === false) {
53+
$this->addMember(new Member($member));
5054
}
51-
$this->members [$member]->addOneToMany ( $mappedBy, $className );
55+
$this->members[$member]->addOneToMany($mappedBy, $className);
5256
}
5357

5458
public function addManyToMany($member, $targetEntity, $inversedBy, $joinTable, $joinColumns = [], $inverseJoinColumns = []) {
55-
if (\array_key_exists ( $member, $this->members ) === false) {
56-
$this->addMember ( new Member ( $member ) );
59+
if (\array_key_exists($member, $this->members) === false) {
60+
$this->addMember(new Member($member));
5761
}
58-
$this->members [$member]->addManyToMany ( $targetEntity, $inversedBy, $joinTable, $joinColumns, $inverseJoinColumns );
62+
$this->members[$member]->addManyToMany($targetEntity, $inversedBy, $joinTable, $joinColumns, $inverseJoinColumns);
5963
}
6064

6165
public function __toString() {
@@ -64,22 +68,22 @@ public function __toString() {
6468
$result .= "namespace " . $this->namespace . ";\n";
6569
}
6670
if ($this->database != null && $this->database !== 'default') {
67-
$result .= $this->getAnnotation ( "database('{$this->database}')" );
71+
$result .= $this->getAnnotation("database('{$this->database}')");
6872
}
69-
if($this->table!==$this->name){
70-
$result .= $this->getAnnotation ( "table('{$this->table}')" );
73+
if ($this->table !== $this->name) {
74+
$result .= $this->getAnnotation("table('{$this->table}')");
7175
}
72-
$result .= "class " . ucfirst ( $this->name ) . "{";
76+
$result .= "class " . ucfirst($this->name) . "{";
7377
$members = $this->members;
74-
\array_walk ( $members, function ($item) {
78+
\array_walk($members, function ($item) {
7579
return $item . "";
76-
} );
77-
$result .= \implode ( "", $members );
78-
foreach ( $members as $member ) {
79-
$result .= $member->getGetter ();
80-
$result .= $member->getSetter ();
80+
});
81+
$result .= \implode("", $members);
82+
foreach ($members as $member) {
83+
$result .= $member->getGetter();
84+
$result .= $member->getSetter();
8185
}
82-
$result .= $this->getToString ();
86+
$result .= $this->getToString();
8387
$result .= "\n}";
8488
return $result;
8589
}
@@ -101,27 +105,27 @@ public function setDatabase($database) {
101105

102106
public function isAssociation() {
103107
$count = 0;
104-
foreach ( $this->members as $member ) {
105-
if ($member->isManyToOne () === true || $member->isPrimary () === true) {
108+
foreach ($this->members as $member) {
109+
if ($member->isManyToOne() === true || $member->isPrimary() === true) {
106110
$count ++;
107111
}
108112
}
109-
return $count == \sizeof ( $this->members );
113+
return $count == \sizeof($this->members);
110114
}
111115

112116
public function getPrimaryKey() {
113-
foreach ( $this->members as $member ) {
114-
if ($member->isPrimary () === true) {
117+
foreach ($this->members as $member) {
118+
if ($member->isPrimary() === true) {
115119
return $member;
116120
}
117121
}
118122
return null;
119123
}
120124

121125
public function getPkName() {
122-
$pk = $this->getPrimaryKey ();
123-
if (isset ( $pk ))
124-
return $pk->getName ();
126+
$pk = $this->getPrimaryKey();
127+
if (isset($pk))
128+
return $pk->getName();
125129
return null;
126130
}
127131

@@ -130,10 +134,10 @@ public function getDefaultFk() {
130134
}
131135

132136
public function getManyToOneMembers() {
133-
$result = array ();
134-
foreach ( $this->members as $member ) {
135-
if ($member->isManyToOne () === true) {
136-
$result [] = $member;
137+
$result = array();
138+
foreach ($this->members as $member) {
139+
if ($member->isManyToOne() === true) {
140+
$result[] = $member;
137141
}
138142
}
139143
return $result;
@@ -142,11 +146,35 @@ public function getManyToOneMembers() {
142146
private function getToStringField() {
143147
$result = null;
144148
// Array of multiple translations of the word "password" which could be taken as name of the table field in database
145-
$pwArray = array ('password','senha','lozinka','heslotajne','helslo_tajne','wachtwoord','contrasena','salasana','motdepasse','mot_de_passe','passwort','passord','haslo','senha','parola','naponb','contrasena','loesenord','losenord','sifre','naponb','matkhau','mat_khau' );
146-
foreach ( $this->members as $member ) {
147-
if ($member->getDbType () !== 'mixed' && $member->isNullable () !== true && ! $member->isPrimary ()) {
148-
$memberName = $member->getName ();
149-
if (! \in_array ( $memberName, $pwArray )) {
149+
$pwArray = array(
150+
'password',
151+
'senha',
152+
'lozinka',
153+
'heslotajne',
154+
'helslo_tajne',
155+
'wachtwoord',
156+
'contrasena',
157+
'salasana',
158+
'motdepasse',
159+
'mot_de_passe',
160+
'passwort',
161+
'passord',
162+
'haslo',
163+
'senha',
164+
'parola',
165+
'naponb',
166+
'contrasena',
167+
'loesenord',
168+
'losenord',
169+
'sifre',
170+
'naponb',
171+
'matkhau',
172+
'mat_khau'
173+
);
174+
foreach ($this->members as $member) {
175+
if ($member->getDbType() !== 'mixed' && $member->isNullable() !== true && ! $member->isPrimary()) {
176+
$memberName = $member->getName();
177+
if (! \in_array($memberName, $pwArray)) {
150178
$result = $memberName;
151179
}
152180
}
@@ -159,11 +187,11 @@ private function getAnnotation($content) {
159187
}
160188

161189
public function getToString() {
162-
$field = $this->getToStringField ();
163-
if (isset ( $field )) {
190+
$field = $this->getToStringField();
191+
if (isset($field)) {
164192
$corps = '$this->' . $field;
165-
} elseif (($pkName = $this->getPkName ()) !== null) {
166-
$corps = '$this->' . $pkName;
193+
} elseif (($pkName = $this->getPkName()) !== null) {
194+
$corps = '$this->' . $pkName . "??'no value'";
167195
} else {
168196
$corps = '"' . $this->name . '@"' . '.\spl_object_hash($this)';
169197
}

0 commit comments

Comments
 (0)