GeezerVison is showing github.com — feat(calendar): replace broken external appointment links with native… · CodingCatDev/codingcat.dev@6d3df84
File treeExpand file treeCollapse file tree Open diff view settings Expand file treeCollapse file tree Open diff view settings Collapse file Copy file name to clipboardExpand all lines: .github/workflows/deploy-workers.yml +24Lines changed: 24 additions & 0 deletions | Original file line number | Diff line number | Diff line change |
|---|
| 66 | 66 | if [ -n "$GUEST_PORTAL_SECRET" ]; then | 67 | 67 | echo "$GUEST_PORTAL_SECRET" | pnpm --filter @codingcatdev/site exec wrangler secret put GUEST_PORTAL_SECRET --env="" | 68 | 68 | fi | | 69 | + if [ -n "$GOOGLE_CLIENT_ID" ]; then | | 70 | + echo "$GOOGLE_CLIENT_ID" | pnpm --filter @codingcatdev/site exec wrangler secret put GOOGLE_CLIENT_ID --env="" | | 71 | + fi | | 72 | + if [ -n "$GOOGLE_CLIENT_SECRET" ]; then | | 73 | + echo "$GOOGLE_CLIENT_SECRET" | pnpm --filter @codingcatdev/site exec wrangler secret put GOOGLE_CLIENT_SECRET --env="" | | 74 | + fi | | 75 | + if [ -n "$GOOGLE_REFRESH_TOKEN" ]; then | | 76 | + echo "$GOOGLE_REFRESH_TOKEN" | pnpm --filter @codingcatdev/site exec wrangler secret put GOOGLE_REFRESH_TOKEN --env="" | | 77 | + fi | 69 | 78 | env: | 70 | 79 | CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }} | 71 | 80 | CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} | | 75 | 84 | SANITY_CONTEXT_TOKEN: ${{ secrets.SANITY_CONTEXT_TOKEN }} | 76 | 85 | OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }} | 77 | 86 | GUEST_PORTAL_SECRET: ${{ secrets.GUEST_PORTAL_SECRET }} | | 87 | + GOOGLE_CLIENT_ID: ${{ secrets.GOOGLE_CLIENT_ID }} | | 88 | + GOOGLE_CLIENT_SECRET: ${{ secrets.GOOGLE_CLIENT_SECRET }} | | 89 | + GOOGLE_REFRESH_TOKEN: ${{ secrets.GOOGLE_REFRESH_TOKEN }} | 78 | 90 |
| 79 | 91 | deploy-production: | 80 | 92 | if: github.ref == 'refs/heads/main' | @@ -128,6 +140,15 @@ jobs: | 128 | 140 | if [ -n "$GUEST_PORTAL_SECRET" ]; then | 129 | 141 | echo "$GUEST_PORTAL_SECRET" | pnpm --filter @codingcatdev/site exec wrangler secret put GUEST_PORTAL_SECRET --env production | 130 | 142 | fi | | 143 | + if [ -n "$GOOGLE_CLIENT_ID" ]; then | | 144 | + echo "$GOOGLE_CLIENT_ID" | pnpm --filter @codingcatdev/site exec wrangler secret put GOOGLE_CLIENT_ID --env production | | 145 | + fi | | 146 | + if [ -n "$GOOGLE_CLIENT_SECRET" ]; then | | 147 | + echo "$GOOGLE_CLIENT_SECRET" | pnpm --filter @codingcatdev/site exec wrangler secret put GOOGLE_CLIENT_SECRET --env production | | 148 | + fi | | 149 | + if [ -n "$GOOGLE_REFRESH_TOKEN" ]; then | | 150 | + echo "$GOOGLE_REFRESH_TOKEN" | pnpm --filter @codingcatdev/site exec wrangler secret put GOOGLE_REFRESH_TOKEN --env production | | 151 | + fi | 131 | 152 | env: | 132 | 153 | CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }} | 133 | 154 | CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} | @@ -137,3 +158,6 @@ jobs: | 137 | 158 | SANITY_CONTEXT_TOKEN: ${{ secrets.SANITY_CONTEXT_TOKEN }} | 138 | 159 | OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }} | 139 | 160 | GUEST_PORTAL_SECRET: ${{ secrets.GUEST_PORTAL_SECRET }} | | 161 | + GOOGLE_CLIENT_ID: ${{ secrets.GOOGLE_CLIENT_ID }} | | 162 | + GOOGLE_CLIENT_SECRET: ${{ secrets.GOOGLE_CLIENT_SECRET }} | | 163 | + GOOGLE_REFRESH_TOKEN: ${{ secrets.GOOGLE_REFRESH_TOKEN }} |
Collapse file Copy file name to clipboardExpand all lines: apps/ops/src/App.tsx +4-4Lines changed: 4 additions & 4 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -286,20 +286,20 @@ export function App() { | 286 | 286 | </p> | 287 | 287 | <div style={{ display: "flex", gap: 12, marginTop: 16 }}> | 288 | 288 | <a | 289 | | - href="https://calendar.app.google/s3B6PEqbVsGcY81MA" | | 289 | + href="https://codingcat.dev/book" | 290 | 290 | target="_blank" | 291 | 291 | rel="noreferrer" | 292 | 292 | style={{ padding: "10px 16px", background: "#111", color: "#fff", borderRadius: 8, textDecoration: "none", fontSize: 13, fontWeight: 600 }} | 293 | 293 | > | 294 | | - Open Podcast Recording Schedule ↗ | | 294 | + Open Podcast Recording Booking ↗ | 295 | 295 | </a> | 296 | 296 | <a | 297 | | - href="https://calendar.app.google/tyGiF6dGFQeaVrN66" | | 297 | + href="https://codingcat.dev/sponsorships#sponsorship-form" | 298 | 298 | target="_blank" | 299 | 299 | rel="noreferrer" | 300 | 300 | style={{ padding: "10px 16px", border: "1px solid #ccc", color: "#111", borderRadius: 8, textDecoration: "none", fontSize: 13, fontWeight: 600 }} | 301 | 301 | > | 302 | | - Open Sponsor Discovery Schedule ↗ | | 302 | + Open Sponsor Discovery & Deal Room ↗ | 303 | 303 | </a> | 304 | 304 | </div> | 305 | 305 | </section> | |
Collapse file Copy file name to clipboardExpand all lines: apps/sanity/schemas/documents/booking.ts +2-2Lines changed: 2 additions & 2 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -71,9 +71,9 @@ export default defineType({ | 71 | 71 | }), | 72 | 72 | defineField({ | 73 | 73 | name: 'appointmentScheduleUrl', | 74 | | - title: 'Google Calendar Appointment Schedule Link', | | 74 | + title: 'Google Calendar Event / Booking Link', | 75 | 75 | type: 'url', | 76 | | - initialValue: 'https://calendar.app.google/s3B6PEqbVsGcY81MA', | | 76 | + initialValue: 'https://codingcat.dev/book', | 77 | 77 | }), | 78 | 78 | defineField({ | 79 | 79 | name: 'googleCalendarEventId', | |
Collapse file Copy file name to clipboardExpand all lines: apps/sanity/schemas/singletons/sponsorConfig.ts +1-1Lines changed: 1 addition & 1 deletion | Original file line number | Diff line number | Diff line change |
|---|
@@ -96,7 +96,7 @@ export default defineType({ | 96 | 96 | type: "text", | 97 | 97 | description: "Template for automated sponsor outreach emails. Use {{companyName}} for personalization", | 98 | 98 | initialValue: | 99 | | - "Hi {{contactName}},\n\nSaw {{companyName}}'s recent momentum and put together two concrete technical video concepts we could build and distribute across CodingCat.dev (61K+ YouTube subscribers, 7-platform Shorts syndication, and canonical AEO blog posts).\n\n{{videoConcepts}}\n\nWould you be open to a quick 15-minute chat this week? You can grab a time directly here: https://calendar.app.google/tyGiF6dGFQeaVrN66\n\nBest,\nAlex Patterson\nFounder, CodingCat.dev", | | 99 | + "Hi {{contactName}},\n\nSaw {{companyName}}'s recent momentum and put together two concrete technical video concepts we could build and distribute across CodingCat.dev (61K+ YouTube subscribers, 7-platform Shorts syndication, and canonical AEO blog posts).\n\n{{videoConcepts}}\n\nWould you be open to a quick 15-minute chat this week? You can grab a live time slot directly here: https://codingcat.dev/sponsorships#sponsorship-form\n\nBest,\nAlex Patterson\nFounder, CodingCat.dev", | 100 | 100 | }), | 101 | 101 | defineField({ | 102 | 102 | name: "maxOutreachPerRun", | |
|