* @license BSD */ namespace Domframework; /** The series objects */ class GraphSeries { /** The series stored */ private $series = array(); /** Return the serie object choosed. If doesn't exists, it is created before * be returned * @param string $name The name of the serie to create */ public function serie($name) { if (is_integer($name)) { $name = dgettext("domframework", "Serie") . " $name"; } if (! is_string($name)) { throw new \Exception( dgettext( "domframework", "Can't get a serie if the name is not a string" ), 406 ); } if (! array_key_exists($name, $this->series)) { $this->series[$name] = new GraphSerie($name); } return $this->series[$name]; } /** Get the list of the defined series */ public function getList() { $series = []; foreach ($this->series as $name => $serie) { if ($serie->hide() === true) { continue; } $series[] = $name; } return $series; } /** Remove an existing serie * @param string $name The name of the serie to remove */ public function remove($name) { if (! is_string($name)) { throw new \Exception( dgettext( "domframework", "Can't remove a serie if the name is not a string" ), 406 ); } if (array_key_exists($name, $this->series)) { unset($this->series[$name]); } } }