aboutsummaryrefslogtreecommitdiff
path: root/engine/classes/WhereQueryComponent.php
diff options
context:
space:
mode:
authorewinslow <ewinslow@36083f99-b078-4883-b0ff-0f9b5a30f544>2010-09-15 19:31:39 +0000
committerewinslow <ewinslow@36083f99-b078-4883-b0ff-0f9b5a30f544>2010-09-15 19:31:39 +0000
commitf809e76743a6ccab2badf69633bb6132c1358f2e (patch)
tree3ceb4064ab919406671f5a10b201b5e9a8972ccf /engine/classes/WhereQueryComponent.php
parent3d7c1441ea3ba018f2bb68be986d08d15aea6374 (diff)
downloadelgg-f809e76743a6ccab2badf69633bb6132c1358f2e.tar.gz
elgg-f809e76743a6ccab2badf69633bb6132c1358f2e.tar.bz2
Refs #2220: Pulled remaining classes out of lib files. Core classes now autoloaded via __autoload().
git-svn-id: http://code.elgg.org/elgg/trunk@6941 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'engine/classes/WhereQueryComponent.php')
-rw-r--r--engine/classes/WhereQueryComponent.php44
1 files changed, 44 insertions, 0 deletions
diff --git a/engine/classes/WhereQueryComponent.php b/engine/classes/WhereQueryComponent.php
new file mode 100644
index 000000000..3130be7f8
--- /dev/null
+++ b/engine/classes/WhereQueryComponent.php
@@ -0,0 +1,44 @@
+<?php
+/**
+ * @class WhereQueryComponent
+ * A component of a where query.
+ * @author Curverider Ltd
+ * @see Query
+ */
+class WhereQueryComponent extends QueryComponent
+{
+ /**
+ * A where query.
+ *
+ * @param string $left_table The table on the left of the operator
+ * @param string $left_field The left field
+ * @param string $operator The operator eg "=" or "<"
+ * @param string $right_table The table on the right of the operator
+ * @param string $right_field The right field
+ * @param string $link_operator How this where clause links with the previous clause, eg. "and" "or"
+ */
+ function __construct($left_table, $left_field, $operator, $right_table, $right_field, $link_operator = "and")
+ {
+ global $CONFIG;
+
+ $this->link_operator = sanitise_string($link_operator);
+ $this->left_table = $CONFIG->dbprefix . sanitise_string($left_table);
+ $this->left_field = sanitise_string($left_field);
+ $this->operator = sanitise_string($operator);
+ $this->right_table = $CONFIG->dbprefix . sanitise_string($right_table);
+ $this->right_field = sanitise_string($right_field);
+ }
+
+ /**
+ * Return the SQL without the link operator.
+ */
+ public function toStringNoLink()
+ {
+ return "{$this->left_table }.{$this->left_field} {$this->operator} {$this->right_table}.{$this->right_field}";
+ }
+
+ function __toString()
+ {
+ return "{$this->link_operator} " . $this->toStringNoLink();
+ }
+}