Iniziato Recent, Sistemato Navbar

This commit is contained in:
Gregorio
2019-02-12 18:58:15 +01:00
parent 4ac7f80d2f
commit 4e906261be
4 changed files with 71 additions and 41 deletions
+52 -32
View File
@@ -37,49 +37,69 @@ class TopBar extends Component {
<Navbar.Collapse id="basic-navbar-nav"> <Navbar.Collapse id="basic-navbar-nav">
<Nav className="mr-auto"> <Nav className="mr-auto">
<Link to="/" className="text-light nav-link">Home</Link> <Link to="/" className="text-light nav-link">Home</Link>
<Link to={{ pathname: `/video/${localStorage['lastId']}/vitali` }} className="text-light nav-link">Vitali</Link> <Link to={{ pathname: `/video/${localStorage['lastId']}/vitali` }} className="text-light nav-link">Vitali</Link>
<Link to={{ pathname: `/video/${localStorage['lastId']}/recent` }} className="text-light nav-link">Recent</Link> <Link to={{ pathname: `/video/${localStorage['lastId']}/recent` }} className="text-light nav-link">Recent</Link>
<Link to={{ pathname: `/video/${localStorage['lastId']}/random` }} className="text-light nav-link">Random</Link> <Link to={{ pathname: `/video/${localStorage['lastId']}/random` }} className="text-light nav-link">Random</Link>
<Link to={{ pathname: `/video/${localStorage['lastId']}/related` }} className="text-light nav-link">Related</Link> <Link to={{ pathname: `/video/${localStorage['lastId']}/related` }} className="text-light nav-link">Related</Link>
{ <NavDropdown title="Similarity" id="basic-nav-dropdown" > {<NavDropdown title="Similarity" id="basic-nav-dropdown" >
<NavDropdown.Item href="#action/3.1"> <NavDropdown.Item >
Artist <Link to={{ pathname: `/video/${localStorage['lastId']}/...` }} className="text-dark nav-link">
Artist
</Link>
</NavDropdown.Item> </NavDropdown.Item>
<NavDropdown.Item href="#action/3.2"> <NavDropdown.Item >
Genre <Link to={{ pathname: `/video/${localStorage['lastId']}/...` }} className="text-dark nav-link">
Genre
</Link>
</NavDropdown.Item> </NavDropdown.Item>
</NavDropdown> } </NavDropdown>}
{ <NavDropdown title="Popolarità locale" id="basic-nav-dropdown" > {<NavDropdown title="Popolarità locale" id="basic-nav-dropdown" >
<NavDropdown.Item href="#action/3.1"> <NavDropdown.Item >
Assoluta <Link to={{ pathname: `/video/${localStorage['lastId']}/...` }} className="text-dark nav-link">
Assoluta
</Link>
</NavDropdown.Item> </NavDropdown.Item>
<NavDropdown.Item href="#action/3.2"> <NavDropdown.Item>
Relativa <Link to={{ pathname: `/video/${localStorage['lastId']}/...` }} className="text-dark nav-link">
Relativa
</Link>
</NavDropdown.Item> </NavDropdown.Item>
</NavDropdown> } </NavDropdown>}
{ <NavDropdown title="Popolarità globale" id="basic-nav-dropdown" > {<NavDropdown title="Popolarità globale" id="basic-nav-dropdown" >
<NavDropdown.Item> <NavDropdown.Item>
<Link to={{ pathname: `/video/${localStorage['lastId']}/popGlobalAssoluta`}} /*className="text-light nav-link"*/> <Link to={{ pathname: `/video/${localStorage['lastId']}/popGlobalAssoluta` }} className="text-dark nav-link">
Assoluta Assoluta
</Link> </Link>
</NavDropdown.Item> </NavDropdown.Item>
<NavDropdown.Item href="#action/3.2"> <NavDropdown.Item >
Relativa <Link to={{ pathname: `/video/${localStorage['lastId']}/...` }} className="text-dark nav-link">
Relativa
</Link>
</NavDropdown.Item> </NavDropdown.Item>
</NavDropdown> } </NavDropdown>}
{ <NavDropdown title="Progetti" id="basic-nav-dropdown" > {<NavDropdown title="Progetti" id="basic-nav-dropdown" >
<NavDropdown.Item href="#action/3.1">Action</NavDropdown.Item> <NavDropdown.Item >
<NavDropdown.Item href="#action/3.2"> <Link to={{ pathname: `/video/${localStorage['lastId']}/...` }} className="text-dark nav-link">
Another action Action
</Link>
</NavDropdown.Item> </NavDropdown.Item>
<NavDropdown.Item href="#action/3.3"> <NavDropdown.Item >
Something <Link to={{ pathname: `/video/${localStorage['lastId']}/...` }} className="text-dark nav-link">
Another action
</Link>
</NavDropdown.Item>
<NavDropdown.Item >
<Link to={{ pathname: `/video/${localStorage['lastId']}/...` }} className="text-dark nav-link">
Something
</Link>
</NavDropdown.Item> </NavDropdown.Item>
<NavDropdown.Divider /> <NavDropdown.Divider />
<NavDropdown.Item href="#action/3.4"> <NavDropdown.Item>
Separated link <Link to={{ pathname: `/video/${localStorage['lastId']}/...` }} className="text-dark nav-link">
Separated link
</Link>
</NavDropdown.Item> </NavDropdown.Item>
</NavDropdown> } </NavDropdown>}
</Nav> </Nav>
<form className="form-inline" onSubmit={this.handleSubmit}> <form className="form-inline" onSubmit={this.handleSubmit}>
+13 -4
View File
@@ -93,12 +93,21 @@ class VideoPlayer extends React.Component {
response => console.info(response.data), response => console.info(response.data),
error => console.info(error, videoIdWatched.toString()) error => console.info(error, videoIdWatched.toString())
); );
// local storage logic for recent reccomender // local storage logic for recent reccomender//tmp è il video che devo inserire sulla lista
let tmp = JSON.parse(localStorage.getItem('lastWatched')) let tmp = JSON.parse(localStorage.getItem('lastWatched'))
tmp.push({ let j=tmp.findIndex(el=>el.id.toString()===videoIdWatched.toString())
if (j<0){
tmp.push({
'id': videoIdWatched.toString(), 'id': videoIdWatched.toString(),
'date' : new Date() 'lastWatched' : new Date(),
}); 'timesWatched' : 1
});}
else {
tmp[j].timesWatched++;
tmp[j].lastWatched= new Date();
}
localStorage.setItem('lastWatched', JSON.stringify(tmp)); localStorage.setItem('lastWatched', JSON.stringify(tmp));
//.finally(()=>{}) //.finally(()=>{})
clearInterval(timerId1); clearInterval(timerId1);
+1 -1
View File
@@ -5,7 +5,7 @@ import ReactDOM from 'react-dom';
import App from './App'; import App from './App';
import registerServiceWorker from './registerServiceWorker'; import registerServiceWorker from './registerServiceWorker';
import { HashRouter, BrowserRouter } from 'react-router-dom'; // eslint-disable-line import { HashRouter, BrowserRouter } from 'react-router-dom'; // eslint-disable-line
localStorage.setItem('lastWatched', JSON.stringify([])) localStorage['lastWatched'] ? function (){}() : localStorage.setItem('lastWatched', JSON.stringify([]))
localStorage['lastId'] ? function (){}() : localStorage.setItem('lastId','0J2QdDbelmY') localStorage['lastId'] ? function (){}() : localStorage.setItem('lastId','0J2QdDbelmY')
ReactDOM.render(<HashRouter><App /></HashRouter>, document.getElementById('root')); ReactDOM.render(<HashRouter><App /></HashRouter>, document.getElementById('root'));
+3 -2
View File
@@ -18,14 +18,15 @@ class popGlobaleAssoluta extends React.Component {
componentDidMount() { componentDidMount() {
// let listSiti = ['1828', '1829', '1838', '1839', '1846', '1822', '1847', '1831', '1827', '1848', '1824', '1830', '1836', '1850', '1849', '1851', '1861', '1823', '1863', '1834', '1904', '1906', '1901', '1862', '1859']; // let listSiti = ['1828', '1829', '1838', '1839', '1846', '1822', '1847', '1831', '1827', '1848', '1824', '1830', '1836', '1850', '1849', '1851', '1861', '1823', '1863', '1834', '1904', '1906', '1901', '1862', '1859'];
let listSiti = ['1828', '1838', '1839', '1846', '1847', '1831', '1827', '1848',, '1849', '1851', '1823', '1863', '1834', '1904', '1901', '1862', '1859']; let listSiti = ['1828', '1838', '1839', '1846', '1847', '1831', '1827', '1849', '1823', '1863', '1834', '1901', '1859'];
axios.all(listSiti.map(sito => { axios.all(listSiti.map(sito => {
axios.get(`http://site${sito}.tw.cs.unibo.it/globpop`, { axios.get(`http://site${sito}.tw.cs.unibo.it/globpop`, {
'params': { 'params': {
'id': this.props.match.params.id 'id': this.props.match.params.id
} }
}) })
})).then( res=>{console.log(res.data)} })).then( res=>{console.log(listSiti)
console.log(res.data)}
) )