/** * Create an object or return existing one. * * <code> * $currencyId = 1; * * $options = new JRegistry(); * $options->set("intl", true); * $options->set("format", "2/./,"); * * $currency = CrowdFundingCurrency::getInstance(JFactory::getDbo(), $currencyId, $options); * </code> * * @param JDatabaseDriver $db * @param int $id * @param Joomla\Registry\Registry $options * * @return null|CrowdFundingCurrency */ public static function getInstance(JDatabaseDriver $db, $id, $options = null) { if (!isset(self::$instances[$id])) { $item = new CrowdFundingCurrency($db); $item->load($id); if (!is_null($options) and $options instanceof JRegistry) { $item->setOption("intl", $options->get("locale_intl", false)); $item->setOption("format", $options->get("amount_format", false)); } self::$instances[$id] = $item; } return self::$instances[$id]; }