public function getByID($ffID, $fID = 0) { $db = Loader::db(); $field = new self(); if ($fID != 0) { $fieldData = $db->getRow("SELECT * FROM " . TABLE_FORMIFY_FIELDS . " WHERE ffID = ? AND fID = ?", array($ffID, $fID)); } else { $fieldData = $db->getRow("SELECT * FROM " . TABLE_FORMIFY_FIELDS . " WHERE ffID = ?", array($ffID)); } if ($fieldData['ffID'] == $ffID && $ffID != 0) { foreach ($fieldData as $col => $val) { if ($val != '') { $field->{$col} = $val; } } $field->shortLabel = self::shortenText(strip_tags($field->label), 25); if ($fieldData['maxLength'] == 0) { $field->maxLength = ''; } $field->isPrimary = (bool) $field->isPrimary; $field->isRequired = (bool) $field->isRequired; $field->isIndexable = (bool) $field->isIndexable; $field->includeInEmail = (bool) $field->includeInEmail; $field->options = $field->getOptions(); $field->optionsValues = $field->getOptionsValues(); if ($field->isRequired) { $formInfo = $field->getFormInfo(); $field->requiredIndicator = '<span style="color:' . $formInfo['requiredColor'] . '">' . $formInfo['requiredIndicator'] . '</span>'; } else { $field->requiredIndicator = ''; } switch ($field->defaultValueSource) { case 'username': $u = new User(); $field->defaultValue = $u->getUserName(); break; case 'email': $u = new User(); if ($u->isLoggedIn()) { $ui = UserInfo::getByID($u->getUserID()); $field->defaultValue = $ui->getUserEmail(); } break; case 'uID': $u = new User(); $field->defaultValue = $u->getUserID(); break; default: if ($field->populateWith != '') { $u = new User(); if ($u->isLoggedIn()) { $ui = UserInfo::getByID($u->getUserID()); $field->defaultValue = $ui->getAttribute($field->populateWith); } } } return $field; } else { return false; } }