Presented By: Information and Technology Services (ITS)
Tech Talk: Holiday Showcase
Get the inside scoop on 2025 Holiday Showcase products at Tech Shop. Just in time for the holiday season, we’re offering hands-on demos of some of the new tech products we’re carrying for a limited time. Need gift ideas? This is the Tech Talk for you!
Who: Open to all
When: Thursdays at 3 p.m. (lasting 20-30 minutes, with option for Q&A and personal consulting to follow)
Where: Michigan Union | Ground Floor
It would be great if you registered to let us know you’re coming, but drop-ins are also welcome!
Who: Open to all
When: Thursdays at 3 p.m. (lasting 20-30 minutes, with option for Q&A and personal consulting to follow)
Where: Michigan Union | Ground Floor
It would be great if you registered to let us know you’re coming, but drop-ins are also welcome!
Related Links
Explore Similar Events
-
Loading Similar Events...
'+
'
'+
'';
$('#similar_events_list').empty();
var found_events=0;
for (var event in data) {
var event_obj=data[event];
var cur_event=event_template;
cur_event=cur_event.replace(/%_permalink_%/g,event_obj.permalink);
cur_event=cur_event.replace(/%_event_title_%/g,event_obj.event_title);
cur_event=cur_event.replace(/%_event_type_name_%/g,event_obj.event_type);
cur_event=cur_event.replace(/%25_event_type_%25/g,event_obj.event_type_id);
cur_event=cur_event.replace(/%_datetime_%/g,event_obj.datetime_start);
cur_event=cur_event.replace(/%_readable_datetime_%/g,formatDate(parseDateString(event_obj.date_start+' '+event_obj.time_start)));
cur_event=cur_event.replace(/%_location_name_%/g,event_obj.building_id>0?event_obj.building_name:event_obj.location_name);
if (event_obj.building_id>0)
cur_event=cur_event.replace(/%25_event_location_%25/g,event_obj.campus_maps_id);
else
cur_event=cur_event.replace(/%25_event_location_%25/g,1);
if (event_obj.image_url !== ""){
var image_url = event_obj.image_url
} else {
// use placeholder images based on event type
switch (+event_obj.event_type_id){
case 1:
var image_url = "/images/umicons_auditions.svg"
break
case 2:
var image_url = "/images/umicons_careerfair.svg"
break
case 3:
var image_url = "/images/umicons_ceremony.svg"
break
case 4:
var image_url = "/images/umicons_communityservice.svg"
break
case 5:
var image_url = "/images/umicons_conference.svg"
break
case 6:
var image_url = "/images/umicons_exercise.svg"
break
case 7:
var image_url = "/images/umicons_exhibition.svg"
break
case 8:
var image_url = "/images/umicons_classinstruction.svg"
break
case 9:
var image_url = "/images/umicons_rallymassmeet.svg"
break
case 10:
var image_url = "/images/umicons_fair.svg"
break
case 11:
var image_url = "/images/umicons_filmscreening.svg"
break
case 12:
var image_url = "/images/umicons_healthclinic.svg"
break
case 13:
var image_url = "/images/umicons_lecturediscussion.svg"
break
case 14:
var image_url = "/images/umicons_meeting.svg"
break
case 15:
var image_url = "/images/umicons_performance.svg"
break
case 16:
var image_url = "/images/umicons_presentation.svg"
break
case 17:
var image_url = "/images/umicons_openhouse.svg"
break
case 18:
var image_url = "/images/umicons_recgames.svg"
break
case 19:
var image_url = "/images/umicons_social.svg"
break
case 20:
var image_url = "/images/umicons_sportingevent.svg"
break
case 21:
var image_url = "/images/umicons_workshopseminar.svg"
break
case 23:
var image_url = "/images/umicons_bicentennial.png"
break
case 24:
var image_url = "/images/umicons_livestream.svg"
break
case 25:
var image_url = "/images/umicons_tours.svg"
break
default:
var image_url = "/images/umicons_other.svg"
}
}
cur_event=cur_event.replace(/%_event_image_%/g, image_url)
cur_event=cur_event.replace(/%_event_image_description_%/g, event_obj.event_title)
$('#similar_events_list').append(cur_event);
found_events++;
}
// We couldn't find any
if (found_events<1) {
$('#similar_events').hide();
}
},
error: function (data){
$('#similar_events').hide();
}
});
if ($('#show_sessions_registration').length) {
$.ajax({
url : 'https://sessions.studentlife.umich.edu/track//json',
type: 'GET',
dataType: 'json',
beforeSend: function( xhr ) {
$('#show_sessions_details').show();
},
statusCode: {
403: function(data) {
$('#show_sessions_text').html('Registration for this event is currently closed. Please check back later.');
$('#show_sessions_button').remove();
$('#show_sessions_details').remove();
},
404: function(data) {
$('#show_sessions_text').html('Registration for this event is currently closed. Please check back later.');
$('#show_sessions_button').remove();
$('#show_sessions_details').remove();
},
200: function(data) {
var html=''+ ' '+ ' %_event_title_%'+ ' '+ '
'+ '- '+
'
- '+ '
- %_event_type_name_% '+ '
- %_location_name_% '+ '
'+data.name+'
'; var show_event_titles=false; if (data.events.length>1) { show_event_titles=true; } for (var eventKey in data.events) { var event=data.events[eventKey]; if (show_event_titles) html+=''+event.name+'
'; for (var sessionKey in event.sessions) { var session=event.sessions[sessionKey]; html+=''+session.name+' '; if (session.status=='waitlist') { html+='Waitlist Only'; } else if (session.status=='closed') { html+='Session Has Been Closed'; } else if (session.status=='over') { html+='Session Is Over'; } else if (session.status=='full') { html+='Session Is Full'; } else if (session.status=='open') { if (session.slots) { html+='Available Seats: '+session.slots+''; } else { html+='Seats Are Available'; } } html+=''; } } $('#show_sessions_details').html(html); } } }); } if (loadLivestreamType!=null && loadLivestreamId!=null) { if (loadLivestreamType=="bluejeans") joinBJN(loadLivestreamId) else if (loadLivestreamType=="zoom") joinZoom(loadLivestreamId) } }); function formatDate(date) { var hours=date.getHours(); var minutes=date.getMinutes(); var ampm=hours>=12?'pm':'am'; if (hours>12) hours-=12; if (minutes<10) minutes='0'+minutes; var strTime=hours+':'+minutes+ampm; return (date.getMonth()+1)+'/'+date.getDate()+'/'+date.getFullYear()+' '+strTime; } function parseDateString(str) { var parsed=Date.parse(str); // Fix for Safari if (isNaN(parsed)) parsed=Date.parse(str.replace(/-/g, '/').replace(/[a-z]+/gi, ' ')); return new Date(parsed); }