Return the currently open Shot or Asset

        :returns: the currently open element
        :rtype: :class:`jukeboxcore.djadapter.models.Asset` | :class:`jukeboxcore.djadapter.models.Shot` | None
        :raises: :class:`djadapter.models.TaskFile.DoesNotExist`

def get_current_element(self, ):
        """Return the currently open Shot or Asset

        :returns: the currently open element
        :rtype: :class:`jukeboxcore.djadapter.models.Asset` | :class:`jukeboxcore.djadapter.models.Shot` | None
        :raises: :class:`djadapter.models.TaskFile.DoesNotExist`
        """
        n = jbscene.get_current_scene_node()
        if not n:
            return None
        tfid = cmds.getAttr("%s.taskfile_id" % n)
        try:
            tf = djadapter.taskfiles.get(pk=tfid)
            return tf.task.element
        except djadapter.models.TaskFile.DoesNotExist:
            raise djadapter.models.TaskFile.DoesNotExist("Could not find the taskfile that was set on the scene node. Id was %s" % tfid)