public static function findOne($where = array(), $order = array())
    {
        // try to fetch a model from database
        if ($dataModel = self::select(array('*'), $where, $order, 1)) {

            // hydrate new model instance with fetched data
            $model = new static();
            $model->hydrate($dataModel);

            return $model;
        } else {
            return null;
        }
    }