def set_editing(self, permissions, auth=None, log=False):
        node = self.owner

        if permissions and not self.is_publicly_editable:
            if node.is_public:
                self.is_publicly_editable = True
            else:
                raise NodeStateError('Private components cannot be made publicly editable.')
        elif not permissions and self.is_publicly_editable:
            self.is_publicly_editable = False
        else:
            raise NodeStateError('Desired permission change is the same as current setting.')

        if log:
            node.add_log(
                action=(NodeLog.MADE_WIKI_PUBLIC
                        if self.is_publicly_editable
                        else NodeLog.MADE_WIKI_PRIVATE),
                params={
                    'project': node.parent_id,
                    'node': node._primary_key,
                },
                auth=auth,
                save=False,
            )
            node.save()

        self.save()
Return all physical tokens, even line continuations.
dataset/ETHPy150Open CenterForOpenScience/osf.io/website/addons/wiki/model.py/AddonWikiNodeSettings.set_editing--crossover with--dataset/ETHPy150Open RoseOu/flasky/venv/lib/python2.7/site-packages/coverage/phystokens.py/phys_tokens