{"action":"created","comment":{"url":"https://api.github.com/repos/di-shykh/RssReader/pulls/comments/224689198","pull_request_review_id":164119798,"id":224689198,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyNDY4OTE5OA==","diff_hunk":"@@ -129,89 +32,274 @@ const mutations = {\n       state.source.category = {\n         key: category.key,\n         name: category.name,\n-        sources: category.sources\n+        sources: category.sources,\n       };\n     }\n   },\n-  saveSource: state => {\n+  setSourcesAndFeedsToNull: state => {\n+    state.source = [];\n+    state.rssFeeds = [];\n+  },\n+};\n+\n+const actions = {\n+  setCurrentSource: ({ commit, state }, source) => {\n+    commit('setSource', source);\n+  },\n+  setSourcesAndFeedsToNull: ({ commit, state }) => {\n+    commit('setSourcesAndFeedsToNull');\n+  },\n+  findCurrentSource({ commit, state }, URL) {\n+    return new Promise((resolve, reject) => {\n+      try {\n+        const xmlhttp = new XMLHttpRequest();\n+        const proxyURL = 'https://cors-anywhere.herokuapp.com/' + URL;\n+        xmlhttp.open('GET', proxyURL, true);\n+        xmlhttp.onload = function(e) {\n+          if (xmlhttp.readyState === 4) {\n+            if (xmlhttp.status === 200) {\n+              const xmlDoc = xmlhttp.responseXML;\n+              if (xmlDoc) {\n+                if (xmlDoc.evaluate) {\n+                  function findItemValue(xpath) {\n+                    return xmlDoc\n+                      .evaluate(xpath, xmlDoc, null, XPathResult.ANY_TYPE, null)\n+                      .iterateNext().childNodes[0].nodeValue;\n+                  }\n+                  const title = findItemValue('//channel/title');\n+                  const url = findItemValue('//channel/link');\n+                  const text = findItemValue('//channel/description');\n+                  let img = '';\n+                  if (\n+                    xmlDoc\n+                      .evaluate('//channel/image/url', xmlDoc, null, XPathResult.ANY_TYPE, null)\n+                      .iterateNext()\n+                  ) {\n+                    img = findItemValue('//channel/image/url');\n+                  }\n+                  const articles = [];\n+                  const nodesSnapshot = xmlDoc.evaluate(\n+                    '//channel/item',\n+                    xmlDoc,\n+                    null,\n+                    XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,\n+                    null\n+                  );\n+\n+                  for (let i = 0; i < nodesSnapshot.snapshotLength; i++) {\n+                    const article = {\n+                      title: '',\n+                      link: '',\n+                      description: '',\n+                      date: '',\n+                      img: '',\n+                      read: false,\n+                      readLater: false,\n+                    };\n+                    article.title = nodesSnapshot\n+                      .snapshotItem(i)\n+                      .getElementsByTagName('title')[0].textContent;\n+                    article.link = nodesSnapshot\n+                      .snapshotItem(i)\n+                      .getElementsByTagName('link')[0].textContent;\n+                    article.description = nodesSnapshot\n+                      .snapshotItem(i)\n+                      .getElementsByTagName('description')[0].textContent;\n+                    article.date = nodesSnapshot\n+                      .snapshotItem(i)\n+                      .getElementsByTagName('pubDate')[0].textContent;\n+                    articles.push(article);\n+                  }\n+                  var namespaceResolver = (function() {\n+                    var prefixMap = {\n+                      media: 'http://search.yahoo.com/mrss/',\n+                      ynews: 'http://news.yahoo.com/rss/',\n+                    };\n+                    return function(prefix) {\n+                      return prefixMap[prefix] || null;\n+                    };\n+                  })();\n+                  const articlesImg = xmlDoc.evaluate(\n+                    '//channel/item/media:thumbnail/@url',\n+                    xmlDoc,\n+                    namespaceResolver,\n+                    XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,\n+                    null\n+                  )\n+                    ? xmlDoc.evaluate(\n+                        '//channel/item/media:thumbnail/@url',\n+                        xmlDoc,\n+                        namespaceResolver,\n+                        XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,\n+                        null\n+                      )\n+                    : xmlDoc.evaluate(\n+                        '//channel/item/media:content/@url',\n+                        xmlDoc,\n+                        namespaceResolver,\n+                        XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,\n+                        null\n+                      );\n+\n+                  for (let i = 0; i < articlesImg.snapshotLength; i++) {\n+                    articles[i].img = articlesImg.snapshotItem(i).textContent;\n+                  }\n+\n+                  const newSource = {\n+                    name: title,\n+                    link: url,\n+                    description: text,\n+                    img: img,\n+                    rssLink: URL,\n+                    articles,\n+                  };\n+                  resolve(newSource);\n+                }\n+              } else {\n+                reject(console.error(xmlhttp.statusText));\n+              }\n+            } else reject(console.error(xmlhttp.statusText));\n+          } else reject(console.error(xmlhttp.statusText));\n+        };\n+        xmlhttp.onerror = function(e) {\n+          reject(console.error(xmlhttp.statusText));\n+        };\n+        xmlhttp.send(null);\n+      } catch (error) {\n+        reject(console.error(error));\n+      }\n+    });\n+  },\n+  saveCurrentSourceInNewCategory: ({ commit, state }, source) => {\n     const db = firebase.database();\n     const id = auth.user().uid;\n     const userDb = db.ref(id);\n-    const source = {\n-      name: state.source.sTitle,\n-      description: state.source.sDescr,\n-      img: state.source.sImg,\n-      link: state.source.sLink,\n-      rssLink: state.source.rssLink,\n-      articles: state.source.articles\n-    };\n-    if (state.flag) {\n-      source.category = state.source.category;\n-    } else {\n-      source.category = state.source.category.name;\n-    }\n+\n     const category = {\n-      name: state.source.category,\n-      sources: [source.name]\n+      name: source.category,\n+      sources: [source.name],\n     };\n     userDb.child('categories').push({ category });\n     userDb.child('sources').push({ source });\n   },\n-  saveSourceInExistCategory: state => {\n+  saveCurrentSourceInExistCategory: ({ commit, state }, data) => {\n     const db = firebase.database();\n     const id = auth.user().uid;\n     const userDb = db.ref(id);\n-    const source = {\n-      name: state.source.sTitle,\n-      description: state.source.sDescr,\n-      img: state.source.sImg,\n-      link: state.source.sLink,\n-      rssLink: state.source.rssLink,\n-      category: state.source.category.name,\n-      articles: state.source.articles\n-    };\n-    const cat = userDb.child('categories/' + state.source.category.key);\n-    if (state.source.category.sources.includes(source.name)) {\n-      alert('This source already exists!');\n-    } else {\n-      state.source.category.sources.push(source.name);\n-      const category = {\n-        name: state.source.category.name,\n-        sources: state.source.category.sources\n-      };\n-      cat.set({\n-        category: {\n-          name: state.source.category.name,\n-          sources: state.source.category.sources\n-        }\n+    const source = data.source;\n+    //save source in array of sources in categories and in sources\n+    let ref = userDb.child('categories/' + data.category_key + '/category/sources/').limitToLast(1);\n+    let source_key;\n+    ref.once('value', function(snapshot) {\n+      snapshot.forEach(function(data) {\n+        source_key = data.key;\n       });\n-      userDb.child('sources').push({ source });\n-    }\n-  }\n-};\n-\n-const actions = {\n-  setCurrentSource: ({ commit, state }, source) => {\n-    commit('setSource', source);\n-  },\n-  findCurrentSource: ({ commit, state }, str) => {\n-    commit('findSource', str);\n+    });\n+    source_key = parseInt(source_key) + 1;\n+    if (!source_key) source_key = 0;\n+    ref = userDb.child('categories/' + data.category_key + '/category/sources/' + source_key);\n+    ref.set(source.name);\n+    //add source to sources\n+    userDb.child('sources').push({ source });\n   },\n-  setCurrentCategory: ({ commit, state }, category) => {\n-    commit('setCategory', category);\n+\n+  findRssInUrl({ commit, state }, URL) {\n+    return new Promise((resolve, reject) => {\n+      try {\n+        const xmlhttp = new XMLHttpRequest();\n+        URL = 'https://cors-anywhere.herokuapp.com/' + URL;\n+        xmlhttp.open('GET', URL);\n+        xmlhttp.responseType = 'document';\n+        xmlhttp.send();\n+        xmlhttp.onload = function() {\n+          if (xmlhttp.readyState === 4) {\n+            if (xmlhttp.status === 200) {\n+              const xml_doc = this.responseXML;\n+              const nodesSnapshot = xml_doc.evaluate(\n+                '//link[@type=\"application/rss+xml\"]/@href',\n+                xml_doc,\n+                null,\n+                XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,\n+                null\n+              );\n+              let rssFeeds = [];\n+              for (let i = 0; i < nodesSnapshot.snapshotLength; i++) {\n+                rssFeeds.push(nodesSnapshot.snapshotItem(i).textContent);\n+              }\n+              resolve(commit('findRssInUrl', rssFeeds));\n+            } else\n+              reject(() => {\n+                console.error(xmlhttp.statusText);\n+                alert(\"Unfortunately we can't save this blog\");\n+              });\n+          } else\n+            reject(() => {\n+              console.error(xmlhttp.statusText);\n+              alert(\"Unfortunately we can't save this blog\");\n+            });\n+        };\n+        xmlhttp.onerror = function(e) {\n+          reject(() => {\n+            console.error(xmlhttp.statusText);\n+            alert(\"Unfortunately we can't save this blog\");\n+          });\n+        };\n+      } catch (error) {\n+        reject(() => {\n+          console.error(error);\n+          alert(\"Unfortunately we can't save this blog\");\n+        });\n+      }\n+    });\n   },\n-  saveCurrentSource: ({ commit, state }) => {\n-    commit('saveSource');\n+  async parseFeed({ commit, dispatch, state }, URL) {\n+    let newSource;\n+    let degrees = 0;\n+    let isTimerWorking = false;\n+    const wait = document.querySelector('.wait');\n+    const elem = document.querySelector('#sync');\n+    wait.style.display = 'flex';\n+    let loop = setInterval(function() {\n+      elem.style.transform = 'rotate(' + degrees + 'deg)';\n+      degrees += 5;\n+      if (isTimerWorking) {","path":"src/store/modules/source.js","position":427,"original_position":427,"commit_id":"3f9632818b4f5fa5046d31b5f209746369bcb0d9","original_commit_id":"3f9632818b4f5fa5046d31b5f209746369bcb0d9","user":{"login":"nLight","id":186223,"node_id":"MDQ6VXNlcjE4NjIyMw==","avatar_url":"https://avatars0.githubusercontent.com/u/186223?v=4","gravatar_id":"","url":"https://api.github.com/users/nLight","html_url":"https://github.com/nLight","followers_url":"https://api.github.com/users/nLight/followers","following_url":"https://api.github.com/users/nLight/following{/other_user}","gists_url":"https://api.github.com/users/nLight/gists{/gist_id}","starred_url":"https://api.github.com/users/nLight/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nLight/subscriptions","organizations_url":"https://api.github.com/users/nLight/orgs","repos_url":"https://api.github.com/users/nLight/repos","events_url":"https://api.github.com/users/nLight/events{/privacy}","received_events_url":"https://api.github.com/users/nLight/received_events","type":"User","site_admin":false},"body":"Если таймер работает - сбрасываем таймер, хочется значение isTimerWorking инвертировать. Чтобы if(!isTimerWorking) - тогда останавливаем. Но вообще css animations","created_at":"2018-10-12T07:07:35Z","updated_at":"2018-10-12T07:07:35Z","html_url":"https://github.com/di-shykh/RssReader/pull/18#discussion_r224689198","pull_request_url":"https://api.github.com/repos/di-shykh/RssReader/pulls/18","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/di-shykh/RssReader/pulls/comments/224689198"},"html":{"href":"https://github.com/di-shykh/RssReader/pull/18#discussion_r224689198"},"pull_request":{"href":"https://api.github.com/repos/di-shykh/RssReader/pulls/18"}}},"pull_request":{"url":"https://api.github.com/repos/di-shykh/RssReader/pulls/18","id":203065029,"node_id":"MDExOlB1bGxSZXF1ZXN0MjAzMDY1MDI5","html_url":"https://github.com/di-shykh/RssReader/pull/18","diff_url":"https://github.com/di-shykh/RssReader/pull/18.diff","patch_url":"https://github.com/di-shykh/RssReader/pull/18.patch","issue_url":"https://api.github.com/repos/di-shykh/RssReader/issues/18","number":18,"state":"open","locked":false,"title":"Issues #8 and #10 are written","user":{"login":"di-shykh","id":18648208,"node_id":"MDQ6VXNlcjE4NjQ4MjA4","avatar_url":"https://avatars0.githubusercontent.com/u/18648208?v=4","gravatar_id":"","url":"https://api.github.com/users/di-shykh","html_url":"https://github.com/di-shykh","followers_url":"https://api.github.com/users/di-shykh/followers","following_url":"https://api.github.com/users/di-shykh/following{/other_user}","gists_url":"https://api.github.com/users/di-shykh/gists{/gist_id}","starred_url":"https://api.github.com/users/di-shykh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/di-shykh/subscriptions","organizations_url":"https://api.github.com/users/di-shykh/orgs","repos_url":"https://api.github.com/users/di-shykh/repos","events_url":"https://api.github.com/users/di-shykh/events{/privacy}","received_events_url":"https://api.github.com/users/di-shykh/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-07-22T16:25:39Z","updated_at":"2018-10-12T07:07:35Z","closed_at":null,"merged_at":null,"merge_commit_sha":"7c35d850c62c0ef5dfaaf16d933e2300f7011976","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/di-shykh/RssReader/pulls/18/commits","review_comments_url":"https://api.github.com/repos/di-shykh/RssReader/pulls/18/comments","review_comment_url":"https://api.github.com/repos/di-shykh/RssReader/pulls/comments{/number}","comments_url":"https://api.github.com/repos/di-shykh/RssReader/issues/18/comments","statuses_url":"https://api.github.com/repos/di-shykh/RssReader/statuses/3f9632818b4f5fa5046d31b5f209746369bcb0d9","head":{"label":"di-shykh:source_change","ref":"source_change","sha":"3f9632818b4f5fa5046d31b5f209746369bcb0d9","user":{"login":"di-shykh","id":18648208,"node_id":"MDQ6VXNlcjE4NjQ4MjA4","avatar_url":"https://avatars0.githubusercontent.com/u/18648208?v=4","gravatar_id":"","url":"https://api.github.com/users/di-shykh","html_url":"https://github.com/di-shykh","followers_url":"https://api.github.com/users/di-shykh/followers","following_url":"https://api.github.com/users/di-shykh/following{/other_user}","gists_url":"https://api.github.com/users/di-shykh/gists{/gist_id}","starred_url":"https://api.github.com/users/di-shykh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/di-shykh/subscriptions","organizations_url":"https://api.github.com/users/di-shykh/orgs","repos_url":"https://api.github.com/users/di-shykh/repos","events_url":"https://api.github.com/users/di-shykh/events{/privacy}","received_events_url":"https://api.github.com/users/di-shykh/received_events","type":"User","site_admin":false},"repo":{"id":123865536,"node_id":"MDEwOlJlcG9zaXRvcnkxMjM4NjU1MzY=","name":"RssReader","full_name":"di-shykh/RssReader","private":false,"owner":{"login":"di-shykh","id":18648208,"node_id":"MDQ6VXNlcjE4NjQ4MjA4","avatar_url":"https://avatars0.githubusercontent.com/u/18648208?v=4","gravatar_id":"","url":"https://api.github.com/users/di-shykh","html_url":"https://github.com/di-shykh","followers_url":"https://api.github.com/users/di-shykh/followers","following_url":"https://api.github.com/users/di-shykh/following{/other_user}","gists_url":"https://api.github.com/users/di-shykh/gists{/gist_id}","starred_url":"https://api.github.com/users/di-shykh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/di-shykh/subscriptions","organizations_url":"https://api.github.com/users/di-shykh/orgs","repos_url":"https://api.github.com/users/di-shykh/repos","events_url":"https://api.github.com/users/di-shykh/events{/privacy}","received_events_url":"https://api.github.com/users/di-shykh/received_events","type":"User","site_admin":false},"html_url":"https://github.com/di-shykh/RssReader","description":null,"fork":false,"url":"https://api.github.com/repos/di-shykh/RssReader","forks_url":"https://api.github.com/repos/di-shykh/RssReader/forks","keys_url":"https://api.github.com/repos/di-shykh/RssReader/keys{/key_id}","collaborators_url":"https://api.github.com/repos/di-shykh/RssReader/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/di-shykh/RssReader/teams","hooks_url":"https://api.github.com/repos/di-shykh/RssReader/hooks","issue_events_url":"https://api.github.com/repos/di-shykh/RssReader/issues/events{/number}","events_url":"https://api.github.com/repos/di-shykh/RssReader/events","assignees_url":"https://api.github.com/repos/di-shykh/RssReader/assignees{/user}","branches_url":"https://api.github.com/repos/di-shykh/RssReader/branches{/branch}","tags_url":"https://api.github.com/repos/di-shykh/RssReader/tags","blobs_url":"https://api.github.com/repos/di-shykh/RssReader/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/di-shykh/RssReader/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/di-shykh/RssReader/git/refs{/sha}","trees_url":"https://api.github.com/repos/di-shykh/RssReader/git/trees{/sha}","statuses_url":"https://api.github.com/repos/di-shykh/RssReader/statuses/{sha}","languages_url":"https://api.github.com/repos/di-shykh/RssReader/languages","stargazers_url":"https://api.github.com/repos/di-shykh/RssReader/stargazers","contributors_url":"https://api.github.com/repos/di-shykh/RssReader/contributors","subscribers_url":"https://api.github.com/repos/di-shykh/RssReader/subscribers","subscription_url":"https://api.github.com/repos/di-shykh/RssReader/subscription","commits_url":"https://api.github.com/repos/di-shykh/RssReader/commits{/sha}","git_commits_url":"https://api.github.com/repos/di-shykh/RssReader/git/commits{/sha}","comments_url":"https://api.github.com/repos/di-shykh/RssReader/comments{/number}","issue_comment_url":"https://api.github.com/repos/di-shykh/RssReader/issues/comments{/number}","contents_url":"https://api.github.com/repos/di-shykh/RssReader/contents/{+path}","compare_url":"https://api.github.com/repos/di-shykh/RssReader/compare/{base}...{head}","merges_url":"https://api.github.com/repos/di-shykh/RssReader/merges","archive_url":"https://api.github.com/repos/di-shykh/RssReader/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/di-shykh/RssReader/downloads","issues_url":"https://api.github.com/repos/di-shykh/RssReader/issues{/number}","pulls_url":"https://api.github.com/repos/di-shykh/RssReader/pulls{/number}","milestones_url":"https://api.github.com/repos/di-shykh/RssReader/milestones{/number}","notifications_url":"https://api.github.com/repos/di-shykh/RssReader/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/di-shykh/RssReader/labels{/name}","releases_url":"https://api.github.com/repos/di-shykh/RssReader/releases{/id}","deployments_url":"https://api.github.com/repos/di-shykh/RssReader/deployments","created_at":"2018-03-05T04:40:55Z","updated_at":"2018-06-20T15:45:31Z","pushed_at":"2018-10-02T20:07:11Z","git_url":"git://github.com/di-shykh/RssReader.git","ssh_url":"git@github.com:di-shykh/RssReader.git","clone_url":"https://github.com/di-shykh/RssReader.git","svn_url":"https://github.com/di-shykh/RssReader","homepage":null,"size":333,"stargazers_count":1,"watchers_count":1,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":12,"license":null,"forks":0,"open_issues":12,"watchers":1,"default_branch":"master"}},"base":{"label":"di-shykh:master","ref":"master","sha":"cdb6677bf8538035ed15bf2f86690c19e1d44453","user":{"login":"di-shykh","id":18648208,"node_id":"MDQ6VXNlcjE4NjQ4MjA4","avatar_url":"https://avatars0.githubusercontent.com/u/18648208?v=4","gravatar_id":"","url":"https://api.github.com/users/di-shykh","html_url":"https://github.com/di-shykh","followers_url":"https://api.github.com/users/di-shykh/followers","following_url":"https://api.github.com/users/di-shykh/following{/other_user}","gists_url":"https://api.github.com/users/di-shykh/gists{/gist_id}","starred_url":"https://api.github.com/users/di-shykh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/di-shykh/subscriptions","organizations_url":"https://api.github.com/users/di-shykh/orgs","repos_url":"https://api.github.com/users/di-shykh/repos","events_url":"https://api.github.com/users/di-shykh/events{/privacy}","received_events_url":"https://api.github.com/users/di-shykh/received_events","type":"User","site_admin":false},"repo":{"id":123865536,"node_id":"MDEwOlJlcG9zaXRvcnkxMjM4NjU1MzY=","name":"RssReader","full_name":"di-shykh/RssReader","private":false,"owner":{"login":"di-shykh","id":18648208,"node_id":"MDQ6VXNlcjE4NjQ4MjA4","avatar_url":"https://avatars0.githubusercontent.com/u/18648208?v=4","gravatar_id":"","url":"https://api.github.com/users/di-shykh","html_url":"https://github.com/di-shykh","followers_url":"https://api.github.com/users/di-shykh/followers","following_url":"https://api.github.com/users/di-shykh/following{/other_user}","gists_url":"https://api.github.com/users/di-shykh/gists{/gist_id}","starred_url":"https://api.github.com/users/di-shykh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/di-shykh/subscriptions","organizations_url":"https://api.github.com/users/di-shykh/orgs","repos_url":"https://api.github.com/users/di-shykh/repos","events_url":"https://api.github.com/users/di-shykh/events{/privacy}","received_events_url":"https://api.github.com/users/di-shykh/received_events","type":"User","site_admin":false},"html_url":"https://github.com/di-shykh/RssReader","description":null,"fork":false,"url":"https://api.github.com/repos/di-shykh/RssReader","forks_url":"https://api.github.com/repos/di-shykh/RssReader/forks","keys_url":"https://api.github.com/repos/di-shykh/RssReader/keys{/key_id}","collaborators_url":"https://api.github.com/repos/di-shykh/RssReader/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/di-shykh/RssReader/teams","hooks_url":"https://api.github.com/repos/di-shykh/RssReader/hooks","issue_events_url":"https://api.github.com/repos/di-shykh/RssReader/issues/events{/number}","events_url":"https://api.github.com/repos/di-shykh/RssReader/events","assignees_url":"https://api.github.com/repos/di-shykh/RssReader/assignees{/user}","branches_url":"https://api.github.com/repos/di-shykh/RssReader/branches{/branch}","tags_url":"https://api.github.com/repos/di-shykh/RssReader/tags","blobs_url":"https://api.github.com/repos/di-shykh/RssReader/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/di-shykh/RssReader/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/di-shykh/RssReader/git/refs{/sha}","trees_url":"https://api.github.com/repos/di-shykh/RssReader/git/trees{/sha}","statuses_url":"https://api.github.com/repos/di-shykh/RssReader/statuses/{sha}","languages_url":"https://api.github.com/repos/di-shykh/RssReader/languages","stargazers_url":"https://api.github.com/repos/di-shykh/RssReader/stargazers","contributors_url":"https://api.github.com/repos/di-shykh/RssReader/contributors","subscribers_url":"https://api.github.com/repos/di-shykh/RssReader/subscribers","subscription_url":"https://api.github.com/repos/di-shykh/RssReader/subscription","commits_url":"https://api.github.com/repos/di-shykh/RssReader/commits{/sha}","git_commits_url":"https://api.github.com/repos/di-shykh/RssReader/git/commits{/sha}","comments_url":"https://api.github.com/repos/di-shykh/RssReader/comments{/number}","issue_comment_url":"https://api.github.com/repos/di-shykh/RssReader/issues/comments{/number}","contents_url":"https://api.github.com/repos/di-shykh/RssReader/contents/{+path}","compare_url":"https://api.github.com/repos/di-shykh/RssReader/compare/{base}...{head}","merges_url":"https://api.github.com/repos/di-shykh/RssReader/merges","archive_url":"https://api.github.com/repos/di-shykh/RssReader/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/di-shykh/RssReader/downloads","issues_url":"https://api.github.com/repos/di-shykh/RssReader/issues{/number}","pulls_url":"https://api.github.com/repos/di-shykh/RssReader/pulls{/number}","milestones_url":"https://api.github.com/repos/di-shykh/RssReader/milestones{/number}","notifications_url":"https://api.github.com/repos/di-shykh/RssReader/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/di-shykh/RssReader/labels{/name}","releases_url":"https://api.github.com/repos/di-shykh/RssReader/releases{/id}","deployments_url":"https://api.github.com/repos/di-shykh/RssReader/deployments","created_at":"2018-03-05T04:40:55Z","updated_at":"2018-06-20T15:45:31Z","pushed_at":"2018-10-02T20:07:11Z","git_url":"git://github.com/di-shykh/RssReader.git","ssh_url":"git@github.com:di-shykh/RssReader.git","clone_url":"https://github.com/di-shykh/RssReader.git","svn_url":"https://github.com/di-shykh/RssReader","homepage":null,"size":333,"stargazers_count":1,"watchers_count":1,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":12,"license":null,"forks":0,"open_issues":12,"watchers":1,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/di-shykh/RssReader/pulls/18"},"html":{"href":"https://github.com/di-shykh/RssReader/pull/18"},"issue":{"href":"https://api.github.com/repos/di-shykh/RssReader/issues/18"},"comments":{"href":"https://api.github.com/repos/di-shykh/RssReader/issues/18/comments"},"review_comments":{"href":"https://api.github.com/repos/di-shykh/RssReader/pulls/18/comments"},"review_comment":{"href":"https://api.github.com/repos/di-shykh/RssReader/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/di-shykh/RssReader/pulls/18/commits"},"statuses":{"href":"https://api.github.com/repos/di-shykh/RssReader/statuses/3f9632818b4f5fa5046d31b5f209746369bcb0d9"}},"author_association":"OWNER"}}
{"actor":{"display_login":"nLight"}}