1: <?php
2:
3: namespace Thelia\Model\om;
4:
5: use \BasePeer;
6: use \Criteria;
7: use \PDO;
8: use \PDOStatement;
9: use \Propel;
10: use \PropelException;
11: use \PropelPDO;
12: use Thelia\Model\AttributeAvPeer;
13: use Thelia\Model\AttributeCombination;
14: use Thelia\Model\AttributeCombinationPeer;
15: use Thelia\Model\AttributePeer;
16: use Thelia\Model\CombinationPeer;
17: use Thelia\Model\map\AttributeCombinationTableMap;
18:
19: 20: 21: 22: 23: 24: 25:
26: abstract class BaseAttributeCombinationPeer
27: {
28:
29:
30: const DATABASE_NAME = 'thelia';
31:
32:
33: const TABLE_NAME = 'attribute_combination';
34:
35:
36: const OM_CLASS = 'Thelia\\Model\\AttributeCombination';
37:
38:
39: const TM_CLASS = 'AttributeCombinationTableMap';
40:
41:
42: const NUM_COLUMNS = 6;
43:
44:
45: const NUM_LAZY_LOAD_COLUMNS = 0;
46:
47:
48: const NUM_HYDRATE_COLUMNS = 6;
49:
50:
51: const ID = 'attribute_combination.ID';
52:
53:
54: const ATTRIBUTE_ID = 'attribute_combination.ATTRIBUTE_ID';
55:
56:
57: const COMBINATION_ID = 'attribute_combination.COMBINATION_ID';
58:
59:
60: const ATTRIBUTE_AV_ID = 'attribute_combination.ATTRIBUTE_AV_ID';
61:
62:
63: const CREATED_AT = 'attribute_combination.CREATED_AT';
64:
65:
66: const UPDATED_AT = 'attribute_combination.UPDATED_AT';
67:
68:
69: const DEFAULT_STRING_FORMAT = 'YAML';
70:
71: 72: 73: 74: 75: 76:
77: public static $instances = array();
78:
79:
80: 81: 82: 83: 84: 85:
86: protected static $fieldNames = array (
87: BasePeer::TYPE_PHPNAME => array ('Id', 'AttributeId', 'CombinationId', 'AttributeAvId', 'CreatedAt', 'UpdatedAt', ),
88: BasePeer::TYPE_STUDLYPHPNAME => array ('id', 'attributeId', 'combinationId', 'attributeAvId', 'createdAt', 'updatedAt', ),
89: BasePeer::TYPE_COLNAME => array (AttributeCombinationPeer::ID, AttributeCombinationPeer::ATTRIBUTE_ID, AttributeCombinationPeer::COMBINATION_ID, AttributeCombinationPeer::ATTRIBUTE_AV_ID, AttributeCombinationPeer::CREATED_AT, AttributeCombinationPeer::UPDATED_AT, ),
90: BasePeer::TYPE_RAW_COLNAME => array ('ID', 'ATTRIBUTE_ID', 'COMBINATION_ID', 'ATTRIBUTE_AV_ID', 'CREATED_AT', 'UPDATED_AT', ),
91: BasePeer::TYPE_FIELDNAME => array ('id', 'attribute_id', 'combination_id', 'attribute_av_id', 'created_at', 'updated_at', ),
92: BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, )
93: );
94:
95: 96: 97: 98: 99: 100:
101: protected static $fieldKeys = array (
102: BasePeer::TYPE_PHPNAME => array ('Id' => 0, 'AttributeId' => 1, 'CombinationId' => 2, 'AttributeAvId' => 3, 'CreatedAt' => 4, 'UpdatedAt' => 5, ),
103: BasePeer::TYPE_STUDLYPHPNAME => array ('id' => 0, 'attributeId' => 1, 'combinationId' => 2, 'attributeAvId' => 3, 'createdAt' => 4, 'updatedAt' => 5, ),
104: BasePeer::TYPE_COLNAME => array (AttributeCombinationPeer::ID => 0, AttributeCombinationPeer::ATTRIBUTE_ID => 1, AttributeCombinationPeer::COMBINATION_ID => 2, AttributeCombinationPeer::ATTRIBUTE_AV_ID => 3, AttributeCombinationPeer::CREATED_AT => 4, AttributeCombinationPeer::UPDATED_AT => 5, ),
105: BasePeer::TYPE_RAW_COLNAME => array ('ID' => 0, 'ATTRIBUTE_ID' => 1, 'COMBINATION_ID' => 2, 'ATTRIBUTE_AV_ID' => 3, 'CREATED_AT' => 4, 'UPDATED_AT' => 5, ),
106: BasePeer::TYPE_FIELDNAME => array ('id' => 0, 'attribute_id' => 1, 'combination_id' => 2, 'attribute_av_id' => 3, 'created_at' => 4, 'updated_at' => 5, ),
107: BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, )
108: );
109:
110: 111: 112: 113: 114: 115: 116: 117: 118: 119:
120: public static function translateFieldName($name, $fromType, $toType)
121: {
122: $toNames = AttributeCombinationPeer::getFieldNames($toType);
123: $key = isset(AttributeCombinationPeer::$fieldKeys[$fromType][$name]) ? AttributeCombinationPeer::$fieldKeys[$fromType][$name] : null;
124: if ($key === null) {
125: throw new PropelException("'$name' could not be found in the field names of type '$fromType'. These are: " . print_r(AttributeCombinationPeer::$fieldKeys[$fromType], true));
126: }
127:
128: return $toNames[$key];
129: }
130:
131: 132: 133: 134: 135: 136: 137: 138: 139:
140: public static function getFieldNames($type = BasePeer::TYPE_PHPNAME)
141: {
142: if (!array_key_exists($type, AttributeCombinationPeer::$fieldNames)) {
143: throw new PropelException('Method getFieldNames() expects the parameter $type to be one of the class constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME, BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM. ' . $type . ' was given.');
144: }
145:
146: return AttributeCombinationPeer::$fieldNames[$type];
147: }
148:
149: 150: 151: 152: 153: 154: 155: 156: 157: 158: 159: 160:
161: public static function alias($alias, $column)
162: {
163: return str_replace(AttributeCombinationPeer::TABLE_NAME.'.', $alias.'.', $column);
164: }
165:
166: 167: 168: 169: 170: 171: 172: 173: 174: 175: 176: 177:
178: public static function addSelectColumns(Criteria $criteria, $alias = null)
179: {
180: if (null === $alias) {
181: $criteria->addSelectColumn(AttributeCombinationPeer::ID);
182: $criteria->addSelectColumn(AttributeCombinationPeer::ATTRIBUTE_ID);
183: $criteria->addSelectColumn(AttributeCombinationPeer::COMBINATION_ID);
184: $criteria->addSelectColumn(AttributeCombinationPeer::ATTRIBUTE_AV_ID);
185: $criteria->addSelectColumn(AttributeCombinationPeer::CREATED_AT);
186: $criteria->addSelectColumn(AttributeCombinationPeer::UPDATED_AT);
187: } else {
188: $criteria->addSelectColumn($alias . '.ID');
189: $criteria->addSelectColumn($alias . '.ATTRIBUTE_ID');
190: $criteria->addSelectColumn($alias . '.COMBINATION_ID');
191: $criteria->addSelectColumn($alias . '.ATTRIBUTE_AV_ID');
192: $criteria->addSelectColumn($alias . '.CREATED_AT');
193: $criteria->addSelectColumn($alias . '.UPDATED_AT');
194: }
195: }
196:
197: 198: 199: 200: 201: 202: 203: 204:
205: public static function doCount(Criteria $criteria, $distinct = false, PropelPDO $con = null)
206: {
207:
208: $criteria = clone $criteria;
209:
210:
211:
212:
213: $criteria->setPrimaryTableName(AttributeCombinationPeer::TABLE_NAME);
214:
215: if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
216: $criteria->setDistinct();
217: }
218:
219: if (!$criteria->hasSelectClause()) {
220: AttributeCombinationPeer::addSelectColumns($criteria);
221: }
222:
223: $criteria->clearOrderByColumns();
224: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
225:
226: if ($con === null) {
227: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_READ);
228: }
229:
230: $stmt = BasePeer::doCount($criteria, $con);
231:
232: if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
233: $count = (int) $row[0];
234: } else {
235: $count = 0;
236: }
237: $stmt->closeCursor();
238:
239: return $count;
240: }
241: 242: 243: 244: 245: 246: 247: 248: 249:
250: public static function doSelectOne(Criteria $criteria, PropelPDO $con = null)
251: {
252: $critcopy = clone $criteria;
253: $critcopy->setLimit(1);
254: $objects = AttributeCombinationPeer::doSelect($critcopy, $con);
255: if ($objects) {
256: return $objects[0];
257: }
258:
259: return null;
260: }
261: 262: 263: 264: 265: 266: 267: 268: 269:
270: public static function doSelect(Criteria $criteria, PropelPDO $con = null)
271: {
272: return AttributeCombinationPeer::populateObjects(AttributeCombinationPeer::doSelectStmt($criteria, $con));
273: }
274: 275: 276: 277: 278: 279: 280: 281: 282: 283: 284: 285: 286:
287: public static function doSelectStmt(Criteria $criteria, PropelPDO $con = null)
288: {
289: if ($con === null) {
290: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_READ);
291: }
292:
293: if (!$criteria->hasSelectClause()) {
294: $criteria = clone $criteria;
295: AttributeCombinationPeer::addSelectColumns($criteria);
296: }
297:
298:
299: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
300:
301:
302: return BasePeer::doSelect($criteria, $con);
303: }
304: 305: 306: 307: 308: 309: 310: 311: 312: 313: 314: 315:
316: public static function addInstanceToPool($obj, $key = null)
317: {
318: if (Propel::isInstancePoolingEnabled()) {
319: if ($key === null) {
320: $key = serialize(array((string) $obj->getId(), (string) $obj->getAttributeId(), (string) $obj->getCombinationId(), (string) $obj->getAttributeAvId()));
321: }
322: AttributeCombinationPeer::$instances[$key] = $obj;
323: }
324: }
325:
326: 327: 328: 329: 330: 331: 332: 333: 334: 335: 336: 337: 338:
339: public static function removeInstanceFromPool($value)
340: {
341: if (Propel::isInstancePoolingEnabled() && $value !== null) {
342: if (is_object($value) && $value instanceof AttributeCombination) {
343: $key = serialize(array((string) $value->getId(), (string) $value->getAttributeId(), (string) $value->getCombinationId(), (string) $value->getAttributeAvId()));
344: } elseif (is_array($value) && count($value) === 4) {
345:
346: $key = serialize(array((string) $value[0], (string) $value[1], (string) $value[2], (string) $value[3]));
347: } else {
348: $e = new PropelException("Invalid value passed to removeInstanceFromPool(). Expected primary key or AttributeCombination object; got " . (is_object($value) ? get_class($value) . ' object.' : var_export($value,true)));
349: throw $e;
350: }
351:
352: unset(AttributeCombinationPeer::$instances[$key]);
353: }
354: }
355:
356: 357: 358: 359: 360: 361: 362: 363: 364: 365:
366: public static function getInstanceFromPool($key)
367: {
368: if (Propel::isInstancePoolingEnabled()) {
369: if (isset(AttributeCombinationPeer::$instances[$key])) {
370: return AttributeCombinationPeer::$instances[$key];
371: }
372: }
373:
374: return null;
375: }
376:
377: 378: 379: 380: 381:
382: public static function clearInstancePool()
383: {
384: AttributeCombinationPeer::$instances = array();
385: }
386:
387: 388: 389: 390:
391: public static function clearRelatedInstancePool()
392: {
393: }
394:
395: 396: 397: 398: 399: 400: 401: 402: 403: 404:
405: public static function getPrimaryKeyHashFromRow($row, $startcol = 0)
406: {
407:
408: if ($row[$startcol] === null && $row[$startcol + 1] === null && $row[$startcol + 2] === null && $row[$startcol + 3] === null) {
409: return null;
410: }
411:
412: return serialize(array((string) $row[$startcol], (string) $row[$startcol + 1], (string) $row[$startcol + 2], (string) $row[$startcol + 3]));
413: }
414:
415: 416: 417: 418: 419: 420: 421: 422: 423:
424: public static function getPrimaryKeyFromRow($row, $startcol = 0)
425: {
426:
427: return array((int) $row[$startcol], (int) $row[$startcol + 1], (int) $row[$startcol + 2], (int) $row[$startcol + 3]);
428: }
429:
430: 431: 432: 433: 434: 435: 436:
437: public static function populateObjects(PDOStatement $stmt)
438: {
439: $results = array();
440:
441:
442: $cls = AttributeCombinationPeer::getOMClass();
443:
444: while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
445: $key = AttributeCombinationPeer::getPrimaryKeyHashFromRow($row, 0);
446: if (null !== ($obj = AttributeCombinationPeer::getInstanceFromPool($key))) {
447:
448:
449:
450: $results[] = $obj;
451: } else {
452: $obj = new $cls();
453: $obj->hydrate($row);
454: $results[] = $obj;
455: AttributeCombinationPeer::addInstanceToPool($obj, $key);
456: }
457: }
458: $stmt->closeCursor();
459:
460: return $results;
461: }
462: 463: 464: 465: 466: 467: 468: 469: 470:
471: public static function populateObject($row, $startcol = 0)
472: {
473: $key = AttributeCombinationPeer::getPrimaryKeyHashFromRow($row, $startcol);
474: if (null !== ($obj = AttributeCombinationPeer::getInstanceFromPool($key))) {
475:
476:
477:
478: $col = $startcol + AttributeCombinationPeer::NUM_HYDRATE_COLUMNS;
479: } else {
480: $cls = AttributeCombinationPeer::OM_CLASS;
481: $obj = new $cls();
482: $col = $obj->hydrate($row, $startcol);
483: AttributeCombinationPeer::addInstanceToPool($obj, $key);
484: }
485:
486: return array($obj, $col);
487: }
488:
489:
490: 491: 492: 493: 494: 495: 496: 497: 498:
499: public static function doCountJoinAttribute(Criteria $criteria, $distinct = false, PropelPDO $con = null, $join_behavior = Criteria::LEFT_JOIN)
500: {
501:
502: $criteria = clone $criteria;
503:
504:
505:
506:
507: $criteria->setPrimaryTableName(AttributeCombinationPeer::TABLE_NAME);
508:
509: if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
510: $criteria->setDistinct();
511: }
512:
513: if (!$criteria->hasSelectClause()) {
514: AttributeCombinationPeer::addSelectColumns($criteria);
515: }
516:
517: $criteria->clearOrderByColumns();
518:
519:
520: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
521:
522: if ($con === null) {
523: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_READ);
524: }
525:
526: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_ID, AttributePeer::ID, $join_behavior);
527:
528: $stmt = BasePeer::doCount($criteria, $con);
529:
530: if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
531: $count = (int) $row[0];
532: } else {
533: $count = 0;
534: }
535: $stmt->closeCursor();
536:
537: return $count;
538: }
539:
540:
541: 542: 543: 544: 545: 546: 547: 548: 549:
550: public static function doCountJoinAttributeAv(Criteria $criteria, $distinct = false, PropelPDO $con = null, $join_behavior = Criteria::LEFT_JOIN)
551: {
552:
553: $criteria = clone $criteria;
554:
555:
556:
557:
558: $criteria->setPrimaryTableName(AttributeCombinationPeer::TABLE_NAME);
559:
560: if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
561: $criteria->setDistinct();
562: }
563:
564: if (!$criteria->hasSelectClause()) {
565: AttributeCombinationPeer::addSelectColumns($criteria);
566: }
567:
568: $criteria->clearOrderByColumns();
569:
570:
571: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
572:
573: if ($con === null) {
574: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_READ);
575: }
576:
577: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_AV_ID, AttributeAvPeer::ID, $join_behavior);
578:
579: $stmt = BasePeer::doCount($criteria, $con);
580:
581: if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
582: $count = (int) $row[0];
583: } else {
584: $count = 0;
585: }
586: $stmt->closeCursor();
587:
588: return $count;
589: }
590:
591:
592: 593: 594: 595: 596: 597: 598: 599: 600:
601: public static function doCountJoinCombination(Criteria $criteria, $distinct = false, PropelPDO $con = null, $join_behavior = Criteria::LEFT_JOIN)
602: {
603:
604: $criteria = clone $criteria;
605:
606:
607:
608:
609: $criteria->setPrimaryTableName(AttributeCombinationPeer::TABLE_NAME);
610:
611: if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
612: $criteria->setDistinct();
613: }
614:
615: if (!$criteria->hasSelectClause()) {
616: AttributeCombinationPeer::addSelectColumns($criteria);
617: }
618:
619: $criteria->clearOrderByColumns();
620:
621:
622: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
623:
624: if ($con === null) {
625: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_READ);
626: }
627:
628: $criteria->addJoin(AttributeCombinationPeer::COMBINATION_ID, CombinationPeer::ID, $join_behavior);
629:
630: $stmt = BasePeer::doCount($criteria, $con);
631:
632: if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
633: $count = (int) $row[0];
634: } else {
635: $count = 0;
636: }
637: $stmt->closeCursor();
638:
639: return $count;
640: }
641:
642:
643: 644: 645: 646: 647: 648: 649: 650: 651:
652: public static function doSelectJoinAttribute(Criteria $criteria, $con = null, $join_behavior = Criteria::LEFT_JOIN)
653: {
654: $criteria = clone $criteria;
655:
656:
657: if ($criteria->getDbName() == Propel::getDefaultDB()) {
658: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
659: }
660:
661: AttributeCombinationPeer::addSelectColumns($criteria);
662: $startcol = AttributeCombinationPeer::NUM_HYDRATE_COLUMNS;
663: AttributePeer::addSelectColumns($criteria);
664:
665: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_ID, AttributePeer::ID, $join_behavior);
666:
667: $stmt = BasePeer::doSelect($criteria, $con);
668: $results = array();
669:
670: while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
671: $key1 = AttributeCombinationPeer::getPrimaryKeyHashFromRow($row, 0);
672: if (null !== ($obj1 = AttributeCombinationPeer::getInstanceFromPool($key1))) {
673:
674:
675:
676: } else {
677:
678: $cls = AttributeCombinationPeer::getOMClass();
679:
680: $obj1 = new $cls();
681: $obj1->hydrate($row);
682: AttributeCombinationPeer::addInstanceToPool($obj1, $key1);
683: }
684:
685: $key2 = AttributePeer::getPrimaryKeyHashFromRow($row, $startcol);
686: if ($key2 !== null) {
687: $obj2 = AttributePeer::getInstanceFromPool($key2);
688: if (!$obj2) {
689:
690: $cls = AttributePeer::getOMClass();
691:
692: $obj2 = new $cls();
693: $obj2->hydrate($row, $startcol);
694: AttributePeer::addInstanceToPool($obj2, $key2);
695: }
696:
697:
698: $obj2->addAttributeCombination($obj1);
699:
700: }
701:
702: $results[] = $obj1;
703: }
704: $stmt->closeCursor();
705:
706: return $results;
707: }
708:
709:
710: 711: 712: 713: 714: 715: 716: 717: 718:
719: public static function doSelectJoinAttributeAv(Criteria $criteria, $con = null, $join_behavior = Criteria::LEFT_JOIN)
720: {
721: $criteria = clone $criteria;
722:
723:
724: if ($criteria->getDbName() == Propel::getDefaultDB()) {
725: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
726: }
727:
728: AttributeCombinationPeer::addSelectColumns($criteria);
729: $startcol = AttributeCombinationPeer::NUM_HYDRATE_COLUMNS;
730: AttributeAvPeer::addSelectColumns($criteria);
731:
732: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_AV_ID, AttributeAvPeer::ID, $join_behavior);
733:
734: $stmt = BasePeer::doSelect($criteria, $con);
735: $results = array();
736:
737: while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
738: $key1 = AttributeCombinationPeer::getPrimaryKeyHashFromRow($row, 0);
739: if (null !== ($obj1 = AttributeCombinationPeer::getInstanceFromPool($key1))) {
740:
741:
742:
743: } else {
744:
745: $cls = AttributeCombinationPeer::getOMClass();
746:
747: $obj1 = new $cls();
748: $obj1->hydrate($row);
749: AttributeCombinationPeer::addInstanceToPool($obj1, $key1);
750: }
751:
752: $key2 = AttributeAvPeer::getPrimaryKeyHashFromRow($row, $startcol);
753: if ($key2 !== null) {
754: $obj2 = AttributeAvPeer::getInstanceFromPool($key2);
755: if (!$obj2) {
756:
757: $cls = AttributeAvPeer::getOMClass();
758:
759: $obj2 = new $cls();
760: $obj2->hydrate($row, $startcol);
761: AttributeAvPeer::addInstanceToPool($obj2, $key2);
762: }
763:
764:
765: $obj2->addAttributeCombination($obj1);
766:
767: }
768:
769: $results[] = $obj1;
770: }
771: $stmt->closeCursor();
772:
773: return $results;
774: }
775:
776:
777: 778: 779: 780: 781: 782: 783: 784: 785:
786: public static function doSelectJoinCombination(Criteria $criteria, $con = null, $join_behavior = Criteria::LEFT_JOIN)
787: {
788: $criteria = clone $criteria;
789:
790:
791: if ($criteria->getDbName() == Propel::getDefaultDB()) {
792: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
793: }
794:
795: AttributeCombinationPeer::addSelectColumns($criteria);
796: $startcol = AttributeCombinationPeer::NUM_HYDRATE_COLUMNS;
797: CombinationPeer::addSelectColumns($criteria);
798:
799: $criteria->addJoin(AttributeCombinationPeer::COMBINATION_ID, CombinationPeer::ID, $join_behavior);
800:
801: $stmt = BasePeer::doSelect($criteria, $con);
802: $results = array();
803:
804: while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
805: $key1 = AttributeCombinationPeer::getPrimaryKeyHashFromRow($row, 0);
806: if (null !== ($obj1 = AttributeCombinationPeer::getInstanceFromPool($key1))) {
807:
808:
809:
810: } else {
811:
812: $cls = AttributeCombinationPeer::getOMClass();
813:
814: $obj1 = new $cls();
815: $obj1->hydrate($row);
816: AttributeCombinationPeer::addInstanceToPool($obj1, $key1);
817: }
818:
819: $key2 = CombinationPeer::getPrimaryKeyHashFromRow($row, $startcol);
820: if ($key2 !== null) {
821: $obj2 = CombinationPeer::getInstanceFromPool($key2);
822: if (!$obj2) {
823:
824: $cls = CombinationPeer::getOMClass();
825:
826: $obj2 = new $cls();
827: $obj2->hydrate($row, $startcol);
828: CombinationPeer::addInstanceToPool($obj2, $key2);
829: }
830:
831:
832: $obj2->addAttributeCombination($obj1);
833:
834: }
835:
836: $results[] = $obj1;
837: }
838: $stmt->closeCursor();
839:
840: return $results;
841: }
842:
843:
844: 845: 846: 847: 848: 849: 850: 851: 852:
853: public static function doCountJoinAll(Criteria $criteria, $distinct = false, PropelPDO $con = null, $join_behavior = Criteria::LEFT_JOIN)
854: {
855:
856: $criteria = clone $criteria;
857:
858:
859:
860:
861: $criteria->setPrimaryTableName(AttributeCombinationPeer::TABLE_NAME);
862:
863: if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
864: $criteria->setDistinct();
865: }
866:
867: if (!$criteria->hasSelectClause()) {
868: AttributeCombinationPeer::addSelectColumns($criteria);
869: }
870:
871: $criteria->clearOrderByColumns();
872:
873:
874: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
875:
876: if ($con === null) {
877: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_READ);
878: }
879:
880: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_ID, AttributePeer::ID, $join_behavior);
881:
882: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_AV_ID, AttributeAvPeer::ID, $join_behavior);
883:
884: $criteria->addJoin(AttributeCombinationPeer::COMBINATION_ID, CombinationPeer::ID, $join_behavior);
885:
886: $stmt = BasePeer::doCount($criteria, $con);
887:
888: if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
889: $count = (int) $row[0];
890: } else {
891: $count = 0;
892: }
893: $stmt->closeCursor();
894:
895: return $count;
896: }
897:
898: 899: 900: 901: 902: 903: 904: 905: 906: 907:
908: public static function doSelectJoinAll(Criteria $criteria, $con = null, $join_behavior = Criteria::LEFT_JOIN)
909: {
910: $criteria = clone $criteria;
911:
912:
913: if ($criteria->getDbName() == Propel::getDefaultDB()) {
914: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
915: }
916:
917: AttributeCombinationPeer::addSelectColumns($criteria);
918: $startcol2 = AttributeCombinationPeer::NUM_HYDRATE_COLUMNS;
919:
920: AttributePeer::addSelectColumns($criteria);
921: $startcol3 = $startcol2 + AttributePeer::NUM_HYDRATE_COLUMNS;
922:
923: AttributeAvPeer::addSelectColumns($criteria);
924: $startcol4 = $startcol3 + AttributeAvPeer::NUM_HYDRATE_COLUMNS;
925:
926: CombinationPeer::addSelectColumns($criteria);
927: $startcol5 = $startcol4 + CombinationPeer::NUM_HYDRATE_COLUMNS;
928:
929: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_ID, AttributePeer::ID, $join_behavior);
930:
931: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_AV_ID, AttributeAvPeer::ID, $join_behavior);
932:
933: $criteria->addJoin(AttributeCombinationPeer::COMBINATION_ID, CombinationPeer::ID, $join_behavior);
934:
935: $stmt = BasePeer::doSelect($criteria, $con);
936: $results = array();
937:
938: while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
939: $key1 = AttributeCombinationPeer::getPrimaryKeyHashFromRow($row, 0);
940: if (null !== ($obj1 = AttributeCombinationPeer::getInstanceFromPool($key1))) {
941:
942:
943:
944: } else {
945: $cls = AttributeCombinationPeer::getOMClass();
946:
947: $obj1 = new $cls();
948: $obj1->hydrate($row);
949: AttributeCombinationPeer::addInstanceToPool($obj1, $key1);
950: }
951:
952:
953:
954: $key2 = AttributePeer::getPrimaryKeyHashFromRow($row, $startcol2);
955: if ($key2 !== null) {
956: $obj2 = AttributePeer::getInstanceFromPool($key2);
957: if (!$obj2) {
958:
959: $cls = AttributePeer::getOMClass();
960:
961: $obj2 = new $cls();
962: $obj2->hydrate($row, $startcol2);
963: AttributePeer::addInstanceToPool($obj2, $key2);
964: }
965:
966:
967: $obj2->addAttributeCombination($obj1);
968: }
969:
970:
971:
972: $key3 = AttributeAvPeer::getPrimaryKeyHashFromRow($row, $startcol3);
973: if ($key3 !== null) {
974: $obj3 = AttributeAvPeer::getInstanceFromPool($key3);
975: if (!$obj3) {
976:
977: $cls = AttributeAvPeer::getOMClass();
978:
979: $obj3 = new $cls();
980: $obj3->hydrate($row, $startcol3);
981: AttributeAvPeer::addInstanceToPool($obj3, $key3);
982: }
983:
984:
985: $obj3->addAttributeCombination($obj1);
986: }
987:
988:
989:
990: $key4 = CombinationPeer::getPrimaryKeyHashFromRow($row, $startcol4);
991: if ($key4 !== null) {
992: $obj4 = CombinationPeer::getInstanceFromPool($key4);
993: if (!$obj4) {
994:
995: $cls = CombinationPeer::getOMClass();
996:
997: $obj4 = new $cls();
998: $obj4->hydrate($row, $startcol4);
999: CombinationPeer::addInstanceToPool($obj4, $key4);
1000: }
1001:
1002:
1003: $obj4->addAttributeCombination($obj1);
1004: }
1005:
1006: $results[] = $obj1;
1007: }
1008: $stmt->closeCursor();
1009:
1010: return $results;
1011: }
1012:
1013:
1014: 1015: 1016: 1017: 1018: 1019: 1020: 1021: 1022:
1023: public static function doCountJoinAllExceptAttribute(Criteria $criteria, $distinct = false, PropelPDO $con = null, $join_behavior = Criteria::LEFT_JOIN)
1024: {
1025:
1026: $criteria = clone $criteria;
1027:
1028:
1029:
1030:
1031: $criteria->setPrimaryTableName(AttributeCombinationPeer::TABLE_NAME);
1032:
1033: if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
1034: $criteria->setDistinct();
1035: }
1036:
1037: if (!$criteria->hasSelectClause()) {
1038: AttributeCombinationPeer::addSelectColumns($criteria);
1039: }
1040:
1041: $criteria->clearOrderByColumns();
1042:
1043:
1044: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
1045:
1046: if ($con === null) {
1047: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_READ);
1048: }
1049:
1050: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_AV_ID, AttributeAvPeer::ID, $join_behavior);
1051:
1052: $criteria->addJoin(AttributeCombinationPeer::COMBINATION_ID, CombinationPeer::ID, $join_behavior);
1053:
1054: $stmt = BasePeer::doCount($criteria, $con);
1055:
1056: if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
1057: $count = (int) $row[0];
1058: } else {
1059: $count = 0;
1060: }
1061: $stmt->closeCursor();
1062:
1063: return $count;
1064: }
1065:
1066:
1067: 1068: 1069: 1070: 1071: 1072: 1073: 1074: 1075:
1076: public static function doCountJoinAllExceptAttributeAv(Criteria $criteria, $distinct = false, PropelPDO $con = null, $join_behavior = Criteria::LEFT_JOIN)
1077: {
1078:
1079: $criteria = clone $criteria;
1080:
1081:
1082:
1083:
1084: $criteria->setPrimaryTableName(AttributeCombinationPeer::TABLE_NAME);
1085:
1086: if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
1087: $criteria->setDistinct();
1088: }
1089:
1090: if (!$criteria->hasSelectClause()) {
1091: AttributeCombinationPeer::addSelectColumns($criteria);
1092: }
1093:
1094: $criteria->clearOrderByColumns();
1095:
1096:
1097: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
1098:
1099: if ($con === null) {
1100: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_READ);
1101: }
1102:
1103: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_ID, AttributePeer::ID, $join_behavior);
1104:
1105: $criteria->addJoin(AttributeCombinationPeer::COMBINATION_ID, CombinationPeer::ID, $join_behavior);
1106:
1107: $stmt = BasePeer::doCount($criteria, $con);
1108:
1109: if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
1110: $count = (int) $row[0];
1111: } else {
1112: $count = 0;
1113: }
1114: $stmt->closeCursor();
1115:
1116: return $count;
1117: }
1118:
1119:
1120: 1121: 1122: 1123: 1124: 1125: 1126: 1127: 1128:
1129: public static function doCountJoinAllExceptCombination(Criteria $criteria, $distinct = false, PropelPDO $con = null, $join_behavior = Criteria::LEFT_JOIN)
1130: {
1131:
1132: $criteria = clone $criteria;
1133:
1134:
1135:
1136:
1137: $criteria->setPrimaryTableName(AttributeCombinationPeer::TABLE_NAME);
1138:
1139: if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
1140: $criteria->setDistinct();
1141: }
1142:
1143: if (!$criteria->hasSelectClause()) {
1144: AttributeCombinationPeer::addSelectColumns($criteria);
1145: }
1146:
1147: $criteria->clearOrderByColumns();
1148:
1149:
1150: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
1151:
1152: if ($con === null) {
1153: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_READ);
1154: }
1155:
1156: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_ID, AttributePeer::ID, $join_behavior);
1157:
1158: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_AV_ID, AttributeAvPeer::ID, $join_behavior);
1159:
1160: $stmt = BasePeer::doCount($criteria, $con);
1161:
1162: if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
1163: $count = (int) $row[0];
1164: } else {
1165: $count = 0;
1166: }
1167: $stmt->closeCursor();
1168:
1169: return $count;
1170: }
1171:
1172:
1173: 1174: 1175: 1176: 1177: 1178: 1179: 1180: 1181: 1182:
1183: public static function doSelectJoinAllExceptAttribute(Criteria $criteria, $con = null, $join_behavior = Criteria::LEFT_JOIN)
1184: {
1185: $criteria = clone $criteria;
1186:
1187:
1188:
1189:
1190: if ($criteria->getDbName() == Propel::getDefaultDB()) {
1191: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
1192: }
1193:
1194: AttributeCombinationPeer::addSelectColumns($criteria);
1195: $startcol2 = AttributeCombinationPeer::NUM_HYDRATE_COLUMNS;
1196:
1197: AttributeAvPeer::addSelectColumns($criteria);
1198: $startcol3 = $startcol2 + AttributeAvPeer::NUM_HYDRATE_COLUMNS;
1199:
1200: CombinationPeer::addSelectColumns($criteria);
1201: $startcol4 = $startcol3 + CombinationPeer::NUM_HYDRATE_COLUMNS;
1202:
1203: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_AV_ID, AttributeAvPeer::ID, $join_behavior);
1204:
1205: $criteria->addJoin(AttributeCombinationPeer::COMBINATION_ID, CombinationPeer::ID, $join_behavior);
1206:
1207:
1208: $stmt = BasePeer::doSelect($criteria, $con);
1209: $results = array();
1210:
1211: while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
1212: $key1 = AttributeCombinationPeer::getPrimaryKeyHashFromRow($row, 0);
1213: if (null !== ($obj1 = AttributeCombinationPeer::getInstanceFromPool($key1))) {
1214:
1215:
1216:
1217: } else {
1218: $cls = AttributeCombinationPeer::getOMClass();
1219:
1220: $obj1 = new $cls();
1221: $obj1->hydrate($row);
1222: AttributeCombinationPeer::addInstanceToPool($obj1, $key1);
1223: }
1224:
1225:
1226:
1227: $key2 = AttributeAvPeer::getPrimaryKeyHashFromRow($row, $startcol2);
1228: if ($key2 !== null) {
1229: $obj2 = AttributeAvPeer::getInstanceFromPool($key2);
1230: if (!$obj2) {
1231:
1232: $cls = AttributeAvPeer::getOMClass();
1233:
1234: $obj2 = new $cls();
1235: $obj2->hydrate($row, $startcol2);
1236: AttributeAvPeer::addInstanceToPool($obj2, $key2);
1237: }
1238:
1239:
1240: $obj2->addAttributeCombination($obj1);
1241:
1242: }
1243:
1244:
1245:
1246: $key3 = CombinationPeer::getPrimaryKeyHashFromRow($row, $startcol3);
1247: if ($key3 !== null) {
1248: $obj3 = CombinationPeer::getInstanceFromPool($key3);
1249: if (!$obj3) {
1250:
1251: $cls = CombinationPeer::getOMClass();
1252:
1253: $obj3 = new $cls();
1254: $obj3->hydrate($row, $startcol3);
1255: CombinationPeer::addInstanceToPool($obj3, $key3);
1256: }
1257:
1258:
1259: $obj3->addAttributeCombination($obj1);
1260:
1261: }
1262:
1263: $results[] = $obj1;
1264: }
1265: $stmt->closeCursor();
1266:
1267: return $results;
1268: }
1269:
1270:
1271: 1272: 1273: 1274: 1275: 1276: 1277: 1278: 1279: 1280:
1281: public static function doSelectJoinAllExceptAttributeAv(Criteria $criteria, $con = null, $join_behavior = Criteria::LEFT_JOIN)
1282: {
1283: $criteria = clone $criteria;
1284:
1285:
1286:
1287:
1288: if ($criteria->getDbName() == Propel::getDefaultDB()) {
1289: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
1290: }
1291:
1292: AttributeCombinationPeer::addSelectColumns($criteria);
1293: $startcol2 = AttributeCombinationPeer::NUM_HYDRATE_COLUMNS;
1294:
1295: AttributePeer::addSelectColumns($criteria);
1296: $startcol3 = $startcol2 + AttributePeer::NUM_HYDRATE_COLUMNS;
1297:
1298: CombinationPeer::addSelectColumns($criteria);
1299: $startcol4 = $startcol3 + CombinationPeer::NUM_HYDRATE_COLUMNS;
1300:
1301: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_ID, AttributePeer::ID, $join_behavior);
1302:
1303: $criteria->addJoin(AttributeCombinationPeer::COMBINATION_ID, CombinationPeer::ID, $join_behavior);
1304:
1305:
1306: $stmt = BasePeer::doSelect($criteria, $con);
1307: $results = array();
1308:
1309: while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
1310: $key1 = AttributeCombinationPeer::getPrimaryKeyHashFromRow($row, 0);
1311: if (null !== ($obj1 = AttributeCombinationPeer::getInstanceFromPool($key1))) {
1312:
1313:
1314:
1315: } else {
1316: $cls = AttributeCombinationPeer::getOMClass();
1317:
1318: $obj1 = new $cls();
1319: $obj1->hydrate($row);
1320: AttributeCombinationPeer::addInstanceToPool($obj1, $key1);
1321: }
1322:
1323:
1324:
1325: $key2 = AttributePeer::getPrimaryKeyHashFromRow($row, $startcol2);
1326: if ($key2 !== null) {
1327: $obj2 = AttributePeer::getInstanceFromPool($key2);
1328: if (!$obj2) {
1329:
1330: $cls = AttributePeer::getOMClass();
1331:
1332: $obj2 = new $cls();
1333: $obj2->hydrate($row, $startcol2);
1334: AttributePeer::addInstanceToPool($obj2, $key2);
1335: }
1336:
1337:
1338: $obj2->addAttributeCombination($obj1);
1339:
1340: }
1341:
1342:
1343:
1344: $key3 = CombinationPeer::getPrimaryKeyHashFromRow($row, $startcol3);
1345: if ($key3 !== null) {
1346: $obj3 = CombinationPeer::getInstanceFromPool($key3);
1347: if (!$obj3) {
1348:
1349: $cls = CombinationPeer::getOMClass();
1350:
1351: $obj3 = new $cls();
1352: $obj3->hydrate($row, $startcol3);
1353: CombinationPeer::addInstanceToPool($obj3, $key3);
1354: }
1355:
1356:
1357: $obj3->addAttributeCombination($obj1);
1358:
1359: }
1360:
1361: $results[] = $obj1;
1362: }
1363: $stmt->closeCursor();
1364:
1365: return $results;
1366: }
1367:
1368:
1369: 1370: 1371: 1372: 1373: 1374: 1375: 1376: 1377: 1378:
1379: public static function doSelectJoinAllExceptCombination(Criteria $criteria, $con = null, $join_behavior = Criteria::LEFT_JOIN)
1380: {
1381: $criteria = clone $criteria;
1382:
1383:
1384:
1385:
1386: if ($criteria->getDbName() == Propel::getDefaultDB()) {
1387: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
1388: }
1389:
1390: AttributeCombinationPeer::addSelectColumns($criteria);
1391: $startcol2 = AttributeCombinationPeer::NUM_HYDRATE_COLUMNS;
1392:
1393: AttributePeer::addSelectColumns($criteria);
1394: $startcol3 = $startcol2 + AttributePeer::NUM_HYDRATE_COLUMNS;
1395:
1396: AttributeAvPeer::addSelectColumns($criteria);
1397: $startcol4 = $startcol3 + AttributeAvPeer::NUM_HYDRATE_COLUMNS;
1398:
1399: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_ID, AttributePeer::ID, $join_behavior);
1400:
1401: $criteria->addJoin(AttributeCombinationPeer::ATTRIBUTE_AV_ID, AttributeAvPeer::ID, $join_behavior);
1402:
1403:
1404: $stmt = BasePeer::doSelect($criteria, $con);
1405: $results = array();
1406:
1407: while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
1408: $key1 = AttributeCombinationPeer::getPrimaryKeyHashFromRow($row, 0);
1409: if (null !== ($obj1 = AttributeCombinationPeer::getInstanceFromPool($key1))) {
1410:
1411:
1412:
1413: } else {
1414: $cls = AttributeCombinationPeer::getOMClass();
1415:
1416: $obj1 = new $cls();
1417: $obj1->hydrate($row);
1418: AttributeCombinationPeer::addInstanceToPool($obj1, $key1);
1419: }
1420:
1421:
1422:
1423: $key2 = AttributePeer::getPrimaryKeyHashFromRow($row, $startcol2);
1424: if ($key2 !== null) {
1425: $obj2 = AttributePeer::getInstanceFromPool($key2);
1426: if (!$obj2) {
1427:
1428: $cls = AttributePeer::getOMClass();
1429:
1430: $obj2 = new $cls();
1431: $obj2->hydrate($row, $startcol2);
1432: AttributePeer::addInstanceToPool($obj2, $key2);
1433: }
1434:
1435:
1436: $obj2->addAttributeCombination($obj1);
1437:
1438: }
1439:
1440:
1441:
1442: $key3 = AttributeAvPeer::getPrimaryKeyHashFromRow($row, $startcol3);
1443: if ($key3 !== null) {
1444: $obj3 = AttributeAvPeer::getInstanceFromPool($key3);
1445: if (!$obj3) {
1446:
1447: $cls = AttributeAvPeer::getOMClass();
1448:
1449: $obj3 = new $cls();
1450: $obj3->hydrate($row, $startcol3);
1451: AttributeAvPeer::addInstanceToPool($obj3, $key3);
1452: }
1453:
1454:
1455: $obj3->addAttributeCombination($obj1);
1456:
1457: }
1458:
1459: $results[] = $obj1;
1460: }
1461: $stmt->closeCursor();
1462:
1463: return $results;
1464: }
1465:
1466: 1467: 1468: 1469: 1470: 1471: 1472:
1473: public static function getTableMap()
1474: {
1475: return Propel::getDatabaseMap(AttributeCombinationPeer::DATABASE_NAME)->getTable(AttributeCombinationPeer::TABLE_NAME);
1476: }
1477:
1478: 1479: 1480:
1481: public static function buildTableMap()
1482: {
1483: $dbMap = Propel::getDatabaseMap(BaseAttributeCombinationPeer::DATABASE_NAME);
1484: if (!$dbMap->hasTable(BaseAttributeCombinationPeer::TABLE_NAME)) {
1485: $dbMap->addTableObject(new AttributeCombinationTableMap());
1486: }
1487: }
1488:
1489: 1490: 1491: 1492: 1493: 1494:
1495: public static function getOMClass()
1496: {
1497: return AttributeCombinationPeer::OM_CLASS;
1498: }
1499:
1500: 1501: 1502: 1503: 1504: 1505: 1506: 1507: 1508:
1509: public static function doInsert($values, PropelPDO $con = null)
1510: {
1511: if ($con === null) {
1512: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
1513: }
1514:
1515: if ($values instanceof Criteria) {
1516: $criteria = clone $values;
1517: } else {
1518: $criteria = $values->buildCriteria();
1519: }
1520:
1521: if ($criteria->containsKey(AttributeCombinationPeer::ID) && $criteria->keyContainsValue(AttributeCombinationPeer::ID) ) {
1522: throw new PropelException('Cannot insert a value for auto-increment primary key ('.AttributeCombinationPeer::ID.')');
1523: }
1524:
1525:
1526:
1527: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
1528:
1529: try {
1530:
1531:
1532: $con->beginTransaction();
1533: $pk = BasePeer::doInsert($criteria, $con);
1534: $con->commit();
1535: } catch (PropelException $e) {
1536: $con->rollBack();
1537: throw $e;
1538: }
1539:
1540: return $pk;
1541: }
1542:
1543: 1544: 1545: 1546: 1547: 1548: 1549: 1550: 1551:
1552: public static function doUpdate($values, PropelPDO $con = null)
1553: {
1554: if ($con === null) {
1555: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
1556: }
1557:
1558: $selectCriteria = new Criteria(AttributeCombinationPeer::DATABASE_NAME);
1559:
1560: if ($values instanceof Criteria) {
1561: $criteria = clone $values;
1562:
1563: $comparison = $criteria->getComparison(AttributeCombinationPeer::ID);
1564: $value = $criteria->remove(AttributeCombinationPeer::ID);
1565: if ($value) {
1566: $selectCriteria->add(AttributeCombinationPeer::ID, $value, $comparison);
1567: } else {
1568: $selectCriteria->setPrimaryTableName(AttributeCombinationPeer::TABLE_NAME);
1569: }
1570:
1571: $comparison = $criteria->getComparison(AttributeCombinationPeer::ATTRIBUTE_ID);
1572: $value = $criteria->remove(AttributeCombinationPeer::ATTRIBUTE_ID);
1573: if ($value) {
1574: $selectCriteria->add(AttributeCombinationPeer::ATTRIBUTE_ID, $value, $comparison);
1575: } else {
1576: $selectCriteria->setPrimaryTableName(AttributeCombinationPeer::TABLE_NAME);
1577: }
1578:
1579: $comparison = $criteria->getComparison(AttributeCombinationPeer::COMBINATION_ID);
1580: $value = $criteria->remove(AttributeCombinationPeer::COMBINATION_ID);
1581: if ($value) {
1582: $selectCriteria->add(AttributeCombinationPeer::COMBINATION_ID, $value, $comparison);
1583: } else {
1584: $selectCriteria->setPrimaryTableName(AttributeCombinationPeer::TABLE_NAME);
1585: }
1586:
1587: $comparison = $criteria->getComparison(AttributeCombinationPeer::ATTRIBUTE_AV_ID);
1588: $value = $criteria->remove(AttributeCombinationPeer::ATTRIBUTE_AV_ID);
1589: if ($value) {
1590: $selectCriteria->add(AttributeCombinationPeer::ATTRIBUTE_AV_ID, $value, $comparison);
1591: } else {
1592: $selectCriteria->setPrimaryTableName(AttributeCombinationPeer::TABLE_NAME);
1593: }
1594:
1595: } else {
1596: $criteria = $values->buildCriteria();
1597: $selectCriteria = $values->buildPkeyCriteria();
1598: }
1599:
1600:
1601: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
1602:
1603: return BasePeer::doUpdate($selectCriteria, $criteria, $con);
1604: }
1605:
1606: 1607: 1608: 1609: 1610: 1611: 1612:
1613: public static function doDeleteAll(PropelPDO $con = null)
1614: {
1615: if ($con === null) {
1616: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
1617: }
1618: $affectedRows = 0;
1619: try {
1620:
1621:
1622: $con->beginTransaction();
1623: $affectedRows += BasePeer::doDeleteAll(AttributeCombinationPeer::TABLE_NAME, $con, AttributeCombinationPeer::DATABASE_NAME);
1624:
1625:
1626:
1627: AttributeCombinationPeer::clearInstancePool();
1628: AttributeCombinationPeer::clearRelatedInstancePool();
1629: $con->commit();
1630:
1631: return $affectedRows;
1632: } catch (PropelException $e) {
1633: $con->rollBack();
1634: throw $e;
1635: }
1636: }
1637:
1638: 1639: 1640: 1641: 1642: 1643: 1644: 1645: 1646: 1647: 1648:
1649: public static function doDelete($values, PropelPDO $con = null)
1650: {
1651: if ($con === null) {
1652: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
1653: }
1654:
1655: if ($values instanceof Criteria) {
1656:
1657:
1658:
1659: AttributeCombinationPeer::clearInstancePool();
1660:
1661: $criteria = clone $values;
1662: } elseif ($values instanceof AttributeCombination) {
1663:
1664: AttributeCombinationPeer::removeInstanceFromPool($values);
1665:
1666: $criteria = $values->buildPkeyCriteria();
1667: } else {
1668: $criteria = new Criteria(AttributeCombinationPeer::DATABASE_NAME);
1669:
1670:
1671: if (count($values) == count($values, COUNT_RECURSIVE)) {
1672:
1673: $values = array($values);
1674: }
1675: foreach ($values as $value) {
1676: $criterion = $criteria->getNewCriterion(AttributeCombinationPeer::ID, $value[0]);
1677: $criterion->addAnd($criteria->getNewCriterion(AttributeCombinationPeer::ATTRIBUTE_ID, $value[1]));
1678: $criterion->addAnd($criteria->getNewCriterion(AttributeCombinationPeer::COMBINATION_ID, $value[2]));
1679: $criterion->addAnd($criteria->getNewCriterion(AttributeCombinationPeer::ATTRIBUTE_AV_ID, $value[3]));
1680: $criteria->addOr($criterion);
1681:
1682: AttributeCombinationPeer::removeInstanceFromPool($value);
1683: }
1684: }
1685:
1686:
1687: $criteria->setDbName(AttributeCombinationPeer::DATABASE_NAME);
1688:
1689: $affectedRows = 0;
1690:
1691: try {
1692:
1693:
1694: $con->beginTransaction();
1695:
1696: $affectedRows += BasePeer::doDelete($criteria, $con);
1697: AttributeCombinationPeer::clearRelatedInstancePool();
1698: $con->commit();
1699:
1700: return $affectedRows;
1701: } catch (PropelException $e) {
1702: $con->rollBack();
1703: throw $e;
1704: }
1705: }
1706:
1707: 1708: 1709: 1710: 1711: 1712: 1713: 1714: 1715: 1716: 1717: 1718:
1719: public static function doValidate($obj, $cols = null)
1720: {
1721: $columns = array();
1722:
1723: if ($cols) {
1724: $dbMap = Propel::getDatabaseMap(AttributeCombinationPeer::DATABASE_NAME);
1725: $tableMap = $dbMap->getTable(AttributeCombinationPeer::TABLE_NAME);
1726:
1727: if (! is_array($cols)) {
1728: $cols = array($cols);
1729: }
1730:
1731: foreach ($cols as $colName) {
1732: if ($tableMap->hasColumn($colName)) {
1733: $get = 'get' . $tableMap->getColumn($colName)->getPhpName();
1734: $columns[$colName] = $obj->$get();
1735: }
1736: }
1737: } else {
1738:
1739: }
1740:
1741: return BasePeer::doValidate(AttributeCombinationPeer::DATABASE_NAME, AttributeCombinationPeer::TABLE_NAME, $columns);
1742: }
1743:
1744: 1745: 1746: 1747: 1748: 1749: 1750: 1751: 1752:
1753: public static function retrieveByPK($id, $attribute_id, $combination_id, $attribute_av_id, PropelPDO $con = null) {
1754: $_instancePoolKey = serialize(array((string) $id, (string) $attribute_id, (string) $combination_id, (string) $attribute_av_id));
1755: if (null !== ($obj = AttributeCombinationPeer::getInstanceFromPool($_instancePoolKey))) {
1756: return $obj;
1757: }
1758:
1759: if ($con === null) {
1760: $con = Propel::getConnection(AttributeCombinationPeer::DATABASE_NAME, Propel::CONNECTION_READ);
1761: }
1762: $criteria = new Criteria(AttributeCombinationPeer::DATABASE_NAME);
1763: $criteria->add(AttributeCombinationPeer::ID, $id);
1764: $criteria->add(AttributeCombinationPeer::ATTRIBUTE_ID, $attribute_id);
1765: $criteria->add(AttributeCombinationPeer::COMBINATION_ID, $combination_id);
1766: $criteria->add(AttributeCombinationPeer::ATTRIBUTE_AV_ID, $attribute_av_id);
1767: $v = AttributeCombinationPeer::doSelect($criteria, $con);
1768:
1769: return !empty($v) ? $v[0] : null;
1770: }
1771: }
1772:
1773:
1774:
1775: BaseAttributeCombinationPeer::buildTableMap();
1776:
1777: