StartSocialAuth.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /* jshint ignore:start */
  2. import React from 'react'
  3. import misago from 'misago'
  4. const StartSocialAuth = (props) => {
  5. const {
  6. buttonClassName,
  7. buttonLabel,
  8. formLabel,
  9. header,
  10. labelClassName,
  11. } = props;
  12. const socialAuth = misago.get('SETTINGS').SOCIAL_AUTH;
  13. if (socialAuth.length === 0) return null;
  14. return (
  15. <div className="form-group form-social-auth">
  16. <FormHeader className={labelClassName} text={header} />
  17. <div className="row">
  18. {socialAuth.map(({ id, name, url }) => {
  19. const className = 'btn btn-block btn-default btn-social-' + id;
  20. const finalButtonLabel = interpolate(buttonLabel, { site: name }, true);
  21. return (
  22. <div className={buttonClassName || 'col-xs-12'} key={id}>
  23. <a className={className} href={url}>
  24. {finalButtonLabel}
  25. </a>
  26. </div>
  27. );
  28. })}
  29. </div>
  30. <hr />
  31. <FormHeader className={labelClassName} text={formLabel} />
  32. </div>
  33. )
  34. }
  35. const FormHeader = ({ className, text }) => {
  36. if (!text) return null;
  37. return (
  38. <h5 className={className || ""}>{text}</h5>
  39. );
  40. }
  41. export default StartSocialAuth