docs: def get_link_or_none(pattern_name, request, view_kwargs=None):
      """
      Helper that generate URL prom pattern name and kwargs and check if current request has permission to open the URL.
      If not None is returned.
  
      Args:
          pattern_name (str): slug which is used for view registratin to pattern
          request (django.http.request.HttpRequest): Django request object
          view_kwargs (dict): list of kwargs necessary for URL generator
  
      Returns:
  
      """
      from is_core.patterns import reverse_pattern
  
      pattern = reverse_pattern(pattern_name)
      assert pattern is not None, 'Invalid pattern name {}'.format(pattern_name)
  
      if pattern.has_permission('get', request, view_kwargs=view_kwargs):
          return pattern.get_url_string(request, view_kwargs=view_kwargs)
      else:
          return None