def get_item_tds(item_id): """ Method conntect to ILS to retrieve item information and generates an html table cells with the information. :param item_id: Item id :rtype: HTML string """ item_bot = ItemBot(opac_url=ils_settings.OPAC_URL,item_id=item_id) output_html = "<td>{0}</td><td>{1}</td><td>{2}</td>".format(item_bot.status(), item_bot.location(), item_bot.callnumber()) return mark_safe(output_html)
def display_ill(record): """Displays an ill and Hold links if the item's status is Checked out """ ils_numbers = record.get('item_ids') ill_template = loader.get_template('ill_link_li.html') if not ils_numbers: ils_numbers = [] for item_id in ils_numbers: item_bot = ItemBot(opac_url=ils_settings.OPAC_URL,item_id=item_id) status = item_bot.status() if status is not None: if item_bot.status().startswith('Due'): hold_link = settings.ILS_HOLD_URL % (3*(record.get('id'),)) ill_link = generate_prospector_url(record.get('id')) context = Context({'hold_link':hold_link, 'ill_link':ill_link, 'title':record.get('title')}) return mark_safe(ill_template.render(context)) return ''
def get_item_status(item_id): """Method connects to ILS and retrieves the current circulation status of a an item. :param item_id: Item id, required :rtype: String of status """ item_bot = ItemBot(opac_url=ils_settings.OPAC_URL,item_id=item_id) item_status = item_bot.status() if item_status is None: css_class = '' elif item_status.startswith('Due'): css_class = 'due-back' else: css_class = 'available' status_txt = '''<span class="%s">%s ''' % (css_class,item_status) volume = item_bot.volume() if volume is not None: status_txt += item_bot.volume() status_txt += '</span>' location = item_bot.location() if location is not None: if not location.startswith('Online'): status_txt += ' located in %s' % location call_number = item_bot.callnumber() if call_number is not None: status_txt += ' with call number <b>%s</b>' % call_number return mark_safe(status_txt)
def get_item_status(item_id): """Method connects to ILS and retrieves the current circulation status of a an item. """ item_bot = ItemBot(opac_url=ils_settings.OPAC_URL,item_id=item_id) item_status = item_bot.status() if item_status is None: css_class = '' elif item_status.startswith('Due'): css_class = 'due-back' else: css_class = 'available' status_txt = '''<span class="%s">%s ''' % (css_class,item_status) volume = item_bot.volume() if volume: status_txt += item_bot.volume() status_txt += '</span>' location = item_bot.location() if location is not None: if not location.startswith('Online'): status_txt += ' located at %s' % location return mark_safe(status_txt)