Home Manual Reference Source

src/page_objects/web/contacts/details/roomSystemDetails.panel.js

import BaseContactDetailsPanel from "./base.contactDetails.panel.js";

/** RoomSystemDetailsPanel
 * @extends BaseContactDetailsPanel
 */
class RoomSystemDetailsPanel extends BaseContactDetailsPanel {
  /**
   * @param {args} args Args from controller
   */
  constructor(args) {
    super(args);
  }

  // PAGE ELEMENTS
  /* eslint-disable require-jsdoc */
  meetingLink() {
    return this.contactDetailsDiv.elements("dd").value[0];
  }

  phone() {
    return this.contactDetailsDiv.elements("dd").value[1];
  }
  /* eslint-enable require-jsdoc */

  // PAGE FUNCTIONS

  /**
   * Get details for room system
   * @returns {Object} Object of room system details
   */
  parseRoomSystem() {
    const name = this.contactName().getText();
    const favorite = this.favoriteStar()
      .getAttribute("class")
      .match(/icon icon-favorite-outline/)
      ? false
      : true;
    const presence = this.presenceText()
      .getText()
      .toLowerCase();
    const meetingLink = this.meetingLink().getText();
    const phone = this.phone().getText();
    const videoAddress = this.videoAddress().getText();

    return {
      name: name,
      favorite: favorite,
      presence: presence,
      meetingLink: meetingLink,
      phone: phone,
      videoAddress: videoAddress
    };
  }
}

export default RoomSystemDetailsPanel;