added powered by calendso
This commit is contained in:
		
							parent
							
								
									17b880335a
								
							
						
					
					
						commit
						44e5158941
					
				
					 2 changed files with 214 additions and 89 deletions
				
			
		|  | @ -155,32 +155,58 @@ export default function Type(props) { | |||
|     return ( | ||||
|       <div> | ||||
|         <Head> | ||||
|                 <title>{props.eventType.title} | {props.user.name || props.user.username} | Calendso</title> | ||||
|           <title> | ||||
|             {props.eventType.title} | {props.user.name || props.user.username} | | ||||
|             Calendso | ||||
|           </title> | ||||
|           <link rel="icon" href="/favicon.ico" /> | ||||
|         </Head> | ||||
| 
 | ||||
|             <main className={"mx-auto my-24 transition-max-width ease-in-out duration-500 " + (selectedDate ? 'max-w-6xl' : 'max-w-3xl')}> | ||||
|         <main | ||||
|           className={ | ||||
|             "mx-auto my-24 transition-max-width ease-in-out duration-500 " + | ||||
|             (selectedDate ? "max-w-6xl" : "max-w-3xl") | ||||
|           } | ||||
|         > | ||||
|           <div className="bg-white shadow rounded-lg"> | ||||
|             <div className="sm:flex px-4 py-5 sm:p-4"> | ||||
|                         <div className={"pr-8 sm:border-r " + (selectedDate ? 'sm:w-1/3' : 'sm:w-1/2')}> | ||||
|                             {props.user.avatar && <img src={props.user.avatar} alt="Avatar" className="w-16 h-16 rounded-full mb-4"/>} | ||||
|               <div | ||||
|                 className={ | ||||
|                   "pr-8 sm:border-r " + (selectedDate ? "sm:w-1/3" : "sm:w-1/2") | ||||
|                 } | ||||
|               > | ||||
|                 {props.user.avatar && ( | ||||
|                   <img | ||||
|                     src={props.user.avatar} | ||||
|                     alt="Avatar" | ||||
|                     className="w-16 h-16 rounded-full mb-4" | ||||
|                   /> | ||||
|                 )} | ||||
|                 <h2 className="font-medium text-gray-500">{props.user.name}</h2> | ||||
|                             <h1 className="text-3xl font-semibold text-gray-800 mb-4">{props.eventType.title}</h1> | ||||
|                 <h1 className="text-3xl font-semibold text-gray-800 mb-4"> | ||||
|                   {props.eventType.title} | ||||
|                 </h1> | ||||
|                 <p className="text-gray-500 mb-1 px-2 py-1 -ml-2"> | ||||
|                   <ClockIcon className="inline-block w-4 h-4 mr-1 -mt-1" /> | ||||
|                   {props.eventType.length} minutes | ||||
|                 </p> | ||||
|                             <button onClick={toggleTimeOptions} className="text-gray-500 mb-1 px-2 py-1 -ml-2"> | ||||
|                 <button | ||||
|                   onClick={toggleTimeOptions} | ||||
|                   className="text-gray-500 mb-1 px-2 py-1 -ml-2" | ||||
|                 > | ||||
|                   <GlobeIcon className="inline-block w-4 h-4 mr-1 -mt-1" /> | ||||
|                   {selectedTimeZone} | ||||
|                   <ChevronDownIcon className="inline-block w-4 h-4 ml-1 -mt-1" /> | ||||
|                 </button> | ||||
|                             {isTimeOptionsOpen &&  | ||||
|                 {isTimeOptionsOpen && ( | ||||
|                   <div className="w-full rounded shadow border bg-white px-4 py-2"> | ||||
|                     <div className="flex mb-4"> | ||||
|                       <div className="w-1/2 font-medium">Time Options</div> | ||||
|                       <div className="w-1/2"> | ||||
|                                             <Switch.Group as="div" className="flex items-center justify-end"> | ||||
|                         <Switch.Group | ||||
|                           as="div" | ||||
|                           className="flex items-center justify-end" | ||||
|                         > | ||||
|                           <Switch.Label as="span" className="mr-3"> | ||||
|                             <span className="text-sm text-gray-500">am/pm</span> | ||||
|                           </Switch.Label> | ||||
|  | @ -188,16 +214,16 @@ export default function Type(props) { | |||
|                             checked={is24h} | ||||
|                             onChange={setIs24h} | ||||
|                             className={classNames( | ||||
|                                                         is24h ? 'bg-blue-600' : 'bg-gray-200', | ||||
|                                                         'relative inline-flex flex-shrink-0 h-5 w-8 border-2 border-transparent rounded-full cursor-pointer transition-colors ease-in-out duration-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500' | ||||
|                               is24h ? "bg-blue-600" : "bg-gray-200", | ||||
|                               "relative inline-flex flex-shrink-0 h-5 w-8 border-2 border-transparent rounded-full cursor-pointer transition-colors ease-in-out duration-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500" | ||||
|                             )} | ||||
|                           > | ||||
|                             <span className="sr-only">Use setting</span> | ||||
|                             <span | ||||
|                               aria-hidden="true" | ||||
|                               className={classNames( | ||||
|                                                         is24h ? 'translate-x-3' : 'translate-x-0', | ||||
|                                                         'pointer-events-none inline-block h-4 w-4 rounded-full bg-white shadow transform ring-0 transition ease-in-out duration-200' | ||||
|                                 is24h ? "translate-x-3" : "translate-x-0", | ||||
|                                 "pointer-events-none inline-block h-4 w-4 rounded-full bg-white shadow transform ring-0 transition ease-in-out duration-200" | ||||
|                               )} | ||||
|                             /> | ||||
|                           </Switch> | ||||
|  | @ -207,16 +233,40 @@ export default function Type(props) { | |||
|                         </Switch.Group> | ||||
|                       </div> | ||||
|                     </div> | ||||
|                                     <TimezoneSelect id="timeZone" value={selectedTimeZone} onChange={({ value }) =>setSelectedTimeZone(value)} className="mb-2 shadow-sm focus:ring-blue-500 focus:border-blue-500 mt-1 block w-full sm:text-sm border-gray-300 rounded-md" /> | ||||
|                     <TimezoneSelect | ||||
|                       id="timeZone" | ||||
|                       value={selectedTimeZone} | ||||
|                       onChange={({ value }) => setSelectedTimeZone(value)} | ||||
|                       className="mb-2 shadow-sm focus:ring-blue-500 focus:border-blue-500 mt-1 block w-full sm:text-sm border-gray-300 rounded-md" | ||||
|                     /> | ||||
|                   </div> | ||||
|                 )} | ||||
|                 <p className="text-gray-600 mt-3 mb-8"> | ||||
|                   {props.eventType.description} | ||||
|                 </p> | ||||
|               </div> | ||||
|               <div | ||||
|                 className={ | ||||
|                   "mt-8 sm:mt-0 " + | ||||
|                   (selectedDate | ||||
|                     ? "sm:w-1/3 border-r sm:px-4" | ||||
|                     : "sm:w-1/2 sm:pl-4") | ||||
|                 } | ||||
|                             <p className="text-gray-600 mt-3 mb-8">{props.eventType.description}</p> | ||||
|                         </div> | ||||
|                         <div className={"mt-8 sm:mt-0 " + (selectedDate ? 'sm:w-1/3 border-r sm:px-4' : 'sm:w-1/2 sm:pl-4')}> | ||||
|               > | ||||
|                 <div className="flex text-gray-600 font-light text-xl mb-4 ml-2"> | ||||
|                                 <span className="w-1/2">{dayjs().month(selectedMonth).format("MMMM YYYY")}</span> | ||||
|                   <span className="w-1/2"> | ||||
|                     {dayjs().month(selectedMonth).format("MMMM YYYY")} | ||||
|                   </span> | ||||
|                   <div className="w-1/2 text-right"> | ||||
|                                     <button onClick={decrementMonth} className={"mr-4 " + (selectedMonth < parseInt(dayjs().format('MM')) && 'text-gray-400')} disabled={selectedMonth < parseInt(dayjs().format('MM'))}> | ||||
|                     <button | ||||
|                       onClick={decrementMonth} | ||||
|                       className={ | ||||
|                         "mr-4 " + | ||||
|                         (selectedMonth < parseInt(dayjs().format("MM")) && | ||||
|                           "text-gray-400") | ||||
|                       } | ||||
|                       disabled={selectedMonth < parseInt(dayjs().format("MM"))} | ||||
|                     > | ||||
|                       <ChevronLeftIcon className="w-5 h-5" /> | ||||
|                     </button> | ||||
|                     <button onClick={incrementMonth}> | ||||
|  | @ -225,23 +275,57 @@ export default function Type(props) { | |||
|                   </div> | ||||
|                 </div> | ||||
|                 <div className="grid grid-cols-7 gap-y-4 text-center"> | ||||
|                                 <div className="uppercase text-gray-400 text-xs tracking-widest">Sun</div> | ||||
|                                 <div className="uppercase text-gray-400 text-xs tracking-widest">Mon</div> | ||||
|                                 <div className="uppercase text-gray-400 text-xs tracking-widest">Tue</div> | ||||
|                                 <div className="uppercase text-gray-400 text-xs tracking-widest">Wed</div> | ||||
|                                 <div className="uppercase text-gray-400 text-xs tracking-widest">Thu</div> | ||||
|                                 <div className="uppercase text-gray-400 text-xs tracking-widest">Fri</div> | ||||
|                                 <div className="uppercase text-gray-400 text-xs tracking-widest">Sat</div> | ||||
|                   <div className="uppercase text-gray-400 text-xs tracking-widest"> | ||||
|                     Sun | ||||
|                   </div> | ||||
|                   <div className="uppercase text-gray-400 text-xs tracking-widest"> | ||||
|                     Mon | ||||
|                   </div> | ||||
|                   <div className="uppercase text-gray-400 text-xs tracking-widest"> | ||||
|                     Tue | ||||
|                   </div> | ||||
|                   <div className="uppercase text-gray-400 text-xs tracking-widest"> | ||||
|                     Wed | ||||
|                   </div> | ||||
|                   <div className="uppercase text-gray-400 text-xs tracking-widest"> | ||||
|                     Thu | ||||
|                   </div> | ||||
|                   <div className="uppercase text-gray-400 text-xs tracking-widest"> | ||||
|                     Fri | ||||
|                   </div> | ||||
|                   <div className="uppercase text-gray-400 text-xs tracking-widest"> | ||||
|                     Sat | ||||
|                   </div> | ||||
|                   {calendar} | ||||
|                 </div> | ||||
|               </div> | ||||
|                         {selectedDate && <div className="sm:pl-4 mt-8 sm:mt-0 text-center sm:w-1/3  md:max-h-97 overflow-y-auto"> | ||||
|               {selectedDate && ( | ||||
|                 <div className="sm:pl-4 mt-8 sm:mt-0 text-center sm:w-1/3  md:max-h-97 overflow-y-auto"> | ||||
|                   <div className="text-gray-600 font-light text-xl mb-4 text-left"> | ||||
|                                 <span className="w-1/2">{dayjs(selectedDate).format("dddd DD MMMM YYYY")}</span> | ||||
|                     <span className="w-1/2"> | ||||
|                       {dayjs(selectedDate).format("dddd DD MMMM YYYY")} | ||||
|                     </span> | ||||
|                   </div> | ||||
|                   {!loading ? availableTimes : <div className="loader"></div>} | ||||
|                         </div>} | ||||
|                 </div> | ||||
|               )} | ||||
|             </div> | ||||
|           </div> | ||||
|           {/* note(peer):  | ||||
|             you can remove calendso branding here, but we'd also appreciate it, if you don't <3  | ||||
|           */} | ||||
|           <div className="text-xs text-right pt-1"> | ||||
|             <Link href="/pricing"> | ||||
|               <a className="text-white opacity-50 hover:opacity-100"> | ||||
|                 powered by{" "} | ||||
|                 <img | ||||
|                   style={{ top: -2 }} | ||||
|                   className="w-auto inline h-3 relative" | ||||
|                   src="calendso-logo-white-word.svg" | ||||
|                   alt="Calendso Logo" | ||||
|                 /> | ||||
|               </a> | ||||
|             </Link> | ||||
|           </div> | ||||
|         </main> | ||||
|       </div> | ||||
|  |  | |||
							
								
								
									
										41
									
								
								public/calendso-logo-white-word.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								public/calendso-logo-white-word.svg
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,41 @@ | |||
| <?xml version="1.0" encoding="utf-8"?> | ||||
| <!-- Generator: Adobe Illustrator 25.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  --> | ||||
| <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" | ||||
| 	 viewBox="0 0 427 97.5" style="enable-background:new 0 0 427 97.5;" xml:space="preserve"> | ||||
| <style type="text/css"> | ||||
| 	.st0{fill-rule:evenodd;clip-rule:evenodd;fill:#FFFFFF;} | ||||
| </style> | ||||
| <path class="st0" d="M27.5,88.2c-4.9,0-9.7-1.2-14-3.6c-4.2-2.4-7.6-5.8-9.9-10c-4.8-8.8-4.8-19.4,0-28.2c2.3-4.2,5.8-7.7,10-10 | ||||
| 	c4.3-2.4,9.1-3.7,14-3.6c6-0.1,11.8,1.7,16.5,5.3c4.7,3.6,8,8.7,9.9,15.4H42.8c-1.3-3-3.4-5.5-6.2-7.2c-2.6-1.6-5.6-2.5-8.7-2.5 | ||||
| 	c-2.8,0-5.6,0.7-8.1,2c-2.5,1.3-4.7,3.3-6.1,5.8c-3,5.3-3.1,11.9-0.2,17.3c1.4,2.5,3.4,4.5,5.8,6c2.4,1.5,5.2,2.3,8,2.2 | ||||
| 	c7.2,0,12.4-3.3,15.4-9.9h11.4c-1.1,4.2-3.1,8.1-5.8,11.5c-2.5,3-5.6,5.4-9.2,7C35.5,87.4,31.5,88.1,27.5,88.2L27.5,88.2z | ||||
| 	 M99.6,82.1C95,86.1,89,88.3,82.8,88.2c-4.9,0-9.7-1.2-14-3.6c-4.1-2.4-7.5-5.8-9.8-10c-2.5-4.5-3.7-9.5-3.6-14.6 | ||||
| 	c-0.1-15,11.9-27.2,26.9-27.3c0.1,0,0.2,0,0.3,0c6.4-0.2,12.6,2.1,17.5,6.2v-5.2h11.5v53.3H99.6V82.1z M83.5,43.7 | ||||
| 	c-3,0-5.9,0.7-8.4,2.2c-2.5,1.4-4.6,3.5-6,6c-1.5,2.5-2.2,5.4-2.2,8.4c-0.2,4.5,1.5,8.9,4.7,12.2c3.2,3.2,7.6,4.9,12.1,4.8 | ||||
| 	c2.9,0,5.8-0.7,8.3-2.2c2.5-1.4,4.5-3.5,5.9-6c2.9-5.3,2.9-11.7,0-17c-1.4-2.5-3.5-4.6-6-6C89.3,44.5,86.4,43.8,83.5,43.7L83.5,43.7 | ||||
| 	z M122,14.8h9.7v72.2H122C122,87.1,122,14.8,122,14.8z M149.8,65.2c0.5,2.3,1.5,4.4,3,6.3c1.4,1.8,3.3,3.2,5.4,4.1 | ||||
| 	c2.2,1,4.6,1.5,7,1.5c2.8,0.1,5.6-0.5,8.1-1.8c2.4-1.4,4.3-3.4,5.5-5.9h11.9c-2.7,6.5-6.2,11.2-10.4,14.2c-4.4,3.1-9.8,4.7-15.2,4.5 | ||||
| 	c-4.8,0.1-9.6-1.2-13.8-3.6c-4.1-2.4-7.5-5.8-9.7-10c-2.4-4.3-3.6-9.2-3.5-14.1c-0.1-4.9,1.1-9.8,3.5-14.1c2.3-4.2,5.7-7.6,9.8-10 | ||||
| 	c8.6-4.8,19.2-4.8,27.7,0.1c4.1,2.4,7.4,6,9.6,10.2c2.2,4.3,3.3,9.1,3.3,14c0,1-0.1,2.5-0.3,4.5H149.8z M165.2,43.6 | ||||
| 	c-3.4-0.1-6.8,0.9-9.6,2.9c-2.7,2-4.7,4.8-5.6,8h30.2c-0.9-3.2-2.9-6-5.6-8C171.9,44.5,168.6,43.5,165.2,43.6z M234.8,57.3 | ||||
| 	c0-4.7-1-8.2-3-10.5c-2-2.3-4.9-3.5-8.7-3.5c-2.3,0-4.6,0.7-6.5,2c-2,1.3-3.7,3.2-4.8,5.4c-1.2,2.3-1.8,4.8-1.8,7.4v28.9h-11.2V33.8 | ||||
| 	h10.5v4.8c3.9-3.9,9.3-6,14.9-5.8c3.9,0,7.7,1,11,3c3.3,2,6,4.8,7.9,8.2c1.9,3.5,2.9,7.5,2.9,11.5v31.6h-11.2L234.8,57.3L234.8,57.3 | ||||
| 	z M296.7,82.2c-2.4,1.9-5,3.4-7.9,4.4c-3,1-6.2,1.5-9.4,1.5c-4.8,0.1-9.6-1.2-13.8-3.7c-4.1-2.4-7.5-5.9-9.8-10.1 | ||||
| 	c-2.4-4.3-3.6-9.1-3.6-14.1c-0.1-5.1,1.1-10.1,3.5-14.7c2.3-4.2,5.7-7.7,9.8-10.1c4.3-2.5,9.2-3.8,14.1-3.7c3.1,0,6.1,0.5,9,1.4 | ||||
| 	c2.8,0.9,5.4,2.3,7.8,4.1V14.9h11.3v72.2h-11.1L296.7,82.2L296.7,82.2z M280.4,43.1c-3,0-5.9,0.7-8.4,2.2c-2.5,1.4-4.6,3.5-6,6 | ||||
| 	c-1.5,2.6-2.2,5.5-2.2,8.5c-0.2,4.6,1.5,9.1,4.7,12.4c3.2,3.2,7.5,5,12.1,4.8c2.9,0,5.8-0.7,8.3-2.3c2.5-1.5,4.5-3.6,5.9-6.1 | ||||
| 	c2.9-5.4,2.9-11.8,0-17.2C291.8,46.2,286.3,43,280.4,43.1z M335.8,88.2c-3.8,0.1-7.5-0.8-10.8-2.4c-3.1-1.6-5.7-4-7.5-7 | ||||
| 	c-1.9-3.3-2.9-7.1-3-10.9h11c0,2.7,1.1,5.3,3.1,7.1c2.1,1.7,4.8,2.6,7.5,2.5c1.8,0,3.6-0.2,5.3-0.8c1.3-0.4,2.4-1.2,3.3-2.2 | ||||
| 	c0.7-0.8,1.1-1.9,1.1-3c0.1-1.2-0.4-2.4-1.2-3.2c-0.5-0.5-1.1-0.8-1.7-1.2c-0.7-0.3-1.4-0.6-2.2-0.8c-1.8-0.4-3.9-0.9-6.1-1.3 | ||||
| 	c-1.8-0.2-3.5-0.6-5.1-1s-3.5-1-5-1.6c-0.8-0.2-1.6-0.6-2.4-1l-1-0.7c-0.4-0.4-0.8-0.7-1.2-1c-0.7-0.5-1.3-1.1-1.8-1.8 | ||||
| 	c-0.6-0.8-1.1-1.7-1.5-2.6c-0.9-2-1.3-4.2-1.2-6.4c0-3,0.9-6,2.7-8.5c1.8-2.5,4.3-4.5,7.2-5.7c3.3-1.4,6.8-2.1,10.3-2 | ||||
| 	c3.6-0.1,7.1,0.7,10.3,2.4c3,1.5,5.4,3.8,7.1,6.7c1.8,3.2,2.7,6.8,2.7,10.4h-10.7c-0.1-3-1-5.2-2.7-6.7s-4-2.3-7-2.3 | ||||
| 	s-5.2,0.5-6.8,1.5c-1.4,0.8-2.3,2.2-2.3,3.8c-0.1,1,0.3,2,1,2.6c0.6,0.5,1.2,0.9,1.8,1.2c0.6,0.3,1.3,0.5,2,0.7 | ||||
| 	c0.8,0.2,1.7,0.4,2.7,0.6l3.1,0.5c3.4,0.5,6.7,1.2,10,2.2c2.6,0.8,5,2.3,6.7,4.5c1.8,2.4,2.9,5.3,3,8.4l0.1,1.8 | ||||
| 	c0.1,3.2-0.9,6.4-2.8,9.1c-1.9,2.7-4.5,4.8-7.5,6C343.2,87.6,339.5,88.3,335.8,88.2L335.8,88.2z M412.4,74.6 | ||||
| 	c-2.4,4.2-5.9,7.7-10.2,10c-4.5,2.4-9.6,3.7-14.8,3.6c-4.9,0.1-9.7-1.2-14-3.6c-4.2-2.4-7.7-5.8-10.1-9.9c-2.5-4.2-3.8-9-3.7-13.8 | ||||
| 	c-0.1-5.1,1.1-10.1,3.6-14.6c2.4-4.2,6-7.7,10.2-10c4.4-2.4,9.3-3.6,14.3-3.6c5,0,9.9,1.2,14.3,3.6c4.2,2.3,7.8,5.7,10.2,9.9 | ||||
| 	c2.4,4.3,3.7,9.2,3.6,14.2C416.1,65.4,414.8,70.3,412.4,74.6L412.4,74.6z M387.8,43.3c-3,0-6,0.8-8.6,2.3c-2.6,1.5-4.8,3.6-6.3,6.2 | ||||
| 	c-1.5,2.6-2.3,5.5-2.3,8.5c0,4.6,1.8,9,5.2,12.2c3.2,3.4,7.6,5.3,12.3,5.3c3,0,6-0.8,8.5-2.4c2.6-1.5,4.7-3.7,6.2-6.3 | ||||
| 	c1.5-2.6,2.3-5.6,2.3-8.6c0-3-0.8-6-2.3-8.6c-1.5-2.6-3.7-4.7-6.3-6.2C393.9,44.1,390.9,43.3,387.8,43.3z"/> | ||||
| </svg> | ||||
| After Width: | Height: | Size: 4.3 KiB | 
		Loading…
	
		Reference in a new issue
	
	 Peer Richelsen
						Peer Richelsen