Tables.js 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. import React from "react";
  2. function Tables({persons}) {
  3. function addEventlistener(name){
  4. return function(event){
  5. var personDiv = document.getElementById(name);
  6. var extend = personDiv.children[0];
  7. if (extend.style.display === "block") {
  8. extend.style.display = "none";
  9. } else {
  10. extend.style.display = "block";
  11. }
  12. }
  13. }
  14. const sortedpersons = persons.sort(function(a, b){return b.speed - a.speed});
  15. return (
  16. <div>
  17. <div id="online">
  18. {sortedpersons.filter(person => person.speed>0).map(person => {
  19. return (
  20. <div key={person.name} className="person" id={person.name} data-status={person.speed>0 ? "online" : "offline"} onClick={addEventlistener(person.name)}>
  21. {person.name} ({person.speed} - {person.speed>0 ? "online" : "offline"})
  22. <div className='extend'>
  23. <img src='foto.png' alt={person.fullName}/>
  24. <p>{person.fullName}</p>
  25. <p>Geschwindigkeit: {person.speed}</p>
  26. <p>Status: {person.speed>0 ? "online" : "offline"}</p>
  27. </div>
  28. </div>
  29. );
  30. })}
  31. </div>
  32. <div id="offline">
  33. {sortedpersons.filter(person => person.speed<1).map(person => {
  34. return (
  35. <div key={person.name} className="person" id={person.name} data-status={person.speed>0 ? "online" : "offline"} onClick={addEventlistener(person.name)}>
  36. {person.name} ({person.speed>0 ? "online" : "offline"})
  37. <div className='extend'>
  38. <img src='foto.png' alt={person.fullName}/>
  39. <p>{person.fullName}</p>
  40. <p>Status: {person.speed>0 ? "online" : "offline"}</p>
  41. </div>
  42. </div>
  43. );
  44. })}
  45. </div>
  46. </div>
  47. );
  48. }
  49. export default Tables;