diff --git a/media_commons_booking_app/src/client/routes/admin/components/Liaisons.tsx b/media_commons_booking_app/src/client/routes/admin/components/Liaisons.tsx
index f7687718..9e9f0d44 100644
--- a/media_commons_booking_app/src/client/routes/admin/components/Liaisons.tsx
+++ b/media_commons_booking_app/src/client/routes/admin/components/Liaisons.tsx
@@ -7,6 +7,7 @@ import { formatDate } from '../../../utils/date';
import { getLiaisonTableName } from '../../../../policy';
// This is a wrapper for google.script.run that lets us use promises.
import { serverFunctions } from '../../../utils/serverFunctions';
+import { Department } from '../../../../types';
const AddLiaisonForm = ({ liaisonEmails, reloadLiaisonEmails }) => {
const [email, setEmail] = useState('');
@@ -64,25 +65,18 @@ const AddLiaisonForm = ({ liaisonEmails, reloadLiaisonEmails }) => {
/>
-
+
{loading ? (
diff --git a/media_commons_booking_app/src/client/routes/booking/hooks/useSubmitBooking.tsx b/media_commons_booking_app/src/client/routes/booking/hooks/useSubmitBooking.tsx
index deffa7ff..0b64e677 100644
--- a/media_commons_booking_app/src/client/routes/booking/hooks/useSubmitBooking.tsx
+++ b/media_commons_booking_app/src/client/routes/booking/hooks/useSubmitBooking.tsx
@@ -149,7 +149,7 @@ export default function useSubmitBooking(): [
} else {
const getApprovalUrl = serverFunctions.approvalUrl(calendarEventId);
const getRejectedUrl = serverFunctions.rejectUrl(calendarEventId);
- const getBookingToolUrl = serverFunctions.scriptURL();
+ const getBookingToolUrl = serverFunctions.getBookingToolDeployUrl();
Promise.all([getApprovalUrl, getRejectedUrl, getBookingToolUrl]).then(
(values) => {
const userEventInputs: BookingFormDetails = {
diff --git a/media_commons_booking_app/src/server/admin.ts b/media_commons_booking_app/src/server/admin.ts
index 35b2f1f4..b59f91e8 100644
--- a/media_commons_booking_app/src/server/admin.ts
+++ b/media_commons_booking_app/src/server/admin.ts
@@ -4,7 +4,7 @@ import {
getSecondApproverEmail,
} from '../policy';
import { BookingFormDetails, BookingStatusLabel } from '../types';
-import { approvalUrl, rejectUrl, scriptURL } from './ui';
+import { approvalUrl, getBookingToolDeployUrl, rejectUrl } from './ui';
import {
fetchById,
fetchIndexByUniqueValue,
@@ -20,7 +20,7 @@ export const bookingContents = (id: string): BookingFormDetails => {
const bookingObj = fetchById(TableNames.BOOKING, id);
bookingObj.approvalUrl = approvalUrl(id);
bookingObj.rejectedUrl = rejectUrl(id);
- bookingObj.bookingToolUrl = scriptURL();
+ bookingObj.bookingToolUrl = getBookingToolDeployUrl();
return bookingObj;
};
diff --git a/media_commons_booking_app/src/server/index.ts b/media_commons_booking_app/src/server/index.ts
index 76d21ebe..8dee8a50 100644
--- a/media_commons_booking_app/src/server/index.ts
+++ b/media_commons_booking_app/src/server/index.ts
@@ -14,8 +14,9 @@ import {
approvalUrl,
doGet,
getActiveUserEmail,
+ getBookingToolDeployUrl,
rejectUrl,
- scriptURL,
+ scriptUrl,
} from './ui';
import {
approveBooking,
@@ -45,7 +46,8 @@ export {
getOldSafetyTrainingEmails,
// ui
- scriptURL,
+ getBookingToolDeployUrl,
+ scriptUrl,
approvalUrl,
rejectUrl,
doGet,
diff --git a/media_commons_booking_app/src/server/ui.ts b/media_commons_booking_app/src/server/ui.ts
index e5b2b0fd..9fb2c759 100644
--- a/media_commons_booking_app/src/server/ui.ts
+++ b/media_commons_booking_app/src/server/ui.ts
@@ -1,10 +1,23 @@
import { approveBooking, reject } from './admin';
-export const scriptURL = () => {
+import { DevBranch } from '../types';
+
+export const scriptUrl = () => {
const url = ScriptApp.getService().getUrl();
return url;
};
+export const getBookingToolDeployUrl = () => {
+ switch (process.env.BRANCH_NAME as DevBranch) {
+ case 'development':
+ return 'https://sites.google.com/nyu.edu/media-commons-dev/';
+ case 'staging':
+ return 'https://sites.google.com/nyu.edu/media-commons-staging/';
+ default:
+ return 'https://sites.google.com/nyu.edu/media-commons-prod/';
+ }
+};
+
export const approvalUrl = (calendarEventId: string) => {
const url = ScriptApp.getService().getUrl();
return `${url}?action=approve&page=admin&calendarEventId=${calendarEventId}`;
diff --git a/media_commons_booking_app/src/types.ts b/media_commons_booking_app/src/types.ts
index 47cc3943..422a9494 100644
--- a/media_commons_booking_app/src/types.ts
+++ b/media_commons_booking_app/src/types.ts
@@ -55,12 +55,14 @@ export type CalendarEvent = {
export enum Department {
ALT = 'ALT',
+ CDI = 'CDI',
GAMES = 'Game Center',
IDM = 'IDM',
ITP = 'ITP / IMA / Low Res',
MARL = 'MARL',
+ MPAP = 'MPAP',
MUSIC_TECH = 'Music Tech',
- RECORDED_MUSIC = 'Recorded Music',
+ OTHER = 'Other',
}
export type DevBranch = 'development' | 'staging' | 'production' | '';
diff --git a/media_commons_booking_app/webpack.config.js b/media_commons_booking_app/webpack.config.js
index d84c866d..71daafac 100755
--- a/media_commons_booking_app/webpack.config.js
+++ b/media_commons_booking_app/webpack.config.js
@@ -301,7 +301,7 @@ const clientConfigs = clientEntrypoints.map((clientEntrypoint) => {
}),
new HtmlWebpackPlugin({
template: clientEntrypoint.template,
- filename: `${clientEntrypoint.filename}${isProd ? '' : '-impl'}.html`,
+ filename: `${clientEntrypoint.filename}${isProd ? '' : ''}.html`,
inlineSource: '^/.*(js|css)$', // embed all js and css inline, exclude packages from dynamic cdn insertion
scriptLoading: 'blocking',
inject: 'body',