public ViewRestaurant(String str) {
		super();
		this.setLayout(null);
		this.name = str;

		// Title
		JLabel title = new JLabel(str, JLabel.CENTER);
		title.setBounds(200, 0, 700, 50);
		title.setFont(title.getFont().deriveFont(32f));
		this.add(title);

		// Back button
		btn1 = new JButton("Back");
		btn1.setBounds(20, 20, 75, 30);
		this.add(btn1);
		ButtonResponder br = new ButtonResponder();
		btn1.addActionListener(br);

		// Create list of food items
		db = new JDBC();
		ResultSet rs = db.getRestaurantFoodAndDrink(str);
		try {
			DefaultListModel listModel = new DefaultListModel();
			while (rs.next()) {
				listModel.addElement(rs.getString("name"));
			}
			list = new JList(listModel);
			list.setBackground(new Color(255, 255, 255, 0));
			list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
			ListListener ll = new ListListener();
			list.addMouseListener(ll);
			JScrollPane scroll = new JScrollPane(list);
			scroll.setBounds(25, 225, 300, 200);
			this.add(scroll);
		} catch (Exception e) {
			System.out.println("SQL Statement Failed.. probably");
		};

		// Availability of restaurants
		rs = db.getAvailability(name);
		StringBuilder sb = new StringBuilder();
		try {
			while (rs.next()) {
				sb.append(rs.getString("DayOpen") + " ");
				sb.append(rs.getString("TimeOpen") + " - ");
				sb.append(rs.getString("TimeClose"));
				sb.append("\n");
				// McDonalds, SoHi, papa johns, fiest charra, sushi nara,
				// krishna, steinkeller all have no available times
			}
		} catch (Exception e) {
			System.out.println("BlahLBalgh");
		}
		;
		db.closeDb();
		JTextPane availability = new JTextPane();
		SimpleAttributeSet attribs = new SimpleAttributeSet();
		StyleConstants.setAlignment(attribs, StyleConstants.ALIGN_CENTER);
		availability.setParagraphAttributes(attribs, true);
		availability.setText(sb.toString());
		availability.setBounds(400, 50, 300, 150);
		availability.setBackground(new Color(255, 255, 255, 0));
		availability.setEditable(false);
		this.add(availability);

		// Add food to table button
		JButton add = new JButton("Add food to table");
		add.setBounds(350, 275, 150, 25);
		AddFood af = new AddFood();
		add.addActionListener(af);
		this.add(add);

		// Delete food from table button
		JButton remove = new JButton("Remove food from table");
		remove.setBounds(350, 400, 150, 25);
		remove.setFont(new Font("Arial", Font.PLAIN, 11));
		RemoveFood rf = new RemoveFood();
		remove.addMouseListener(rf);
		this.add(remove);
		
		// Delete all food from table
		JButton removeAll = new JButton("Remove all food");
		removeAll.setBounds(350, 350, 150, 25);
		removeAll.setFont(new Font("Arial", Font.PLAIN, 11));
		RemoveAllFood raf = new RemoveAllFood();
		removeAll.addActionListener(raf);
		this.add(removeAll);

		// View all food
		JButton allFood = new JButton("View all food");
		allFood.setBounds(350, 225, 150, 25);
		AllFood allF = new AllFood();
		allFood.addActionListener(allF);
		this.add(allFood);

		// Table of food items with nutritional info
		String[] columnNames = { "Food Item", "Calories", "Fat", "Sugar",
				"Sodium", "Carbs", "Price" };
		foodList = new JTable();
		foodList.setModel(new DefaultTableModel(columnNames, 0) {
			@Override
			public boolean isCellEditable(int row, int column) {
				return false;
			}
		});
		foodList.getColumnModel().getColumn(0).setPreferredWidth(200);
		JScrollPane scrollTable = new JScrollPane(foodList);
		scrollTable.setBounds(25, 450, 750, 250);
		this.add(scrollTable);

		// Frame to show
		frame = new JFrame("Restaurant");
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.add(this);
		frame.setBounds(0, 0, 800, 800);
		frame.setLocationRelativeTo(null);
		frame.setVisible(true);
		frame.setResizable(false);

		// Add Review Button
		btn2 = new JButton("Review this restaurant");
		btn2.setFont(new Font("Arial", Font.PLAIN, 11));
		btn2.setBounds(625, 225, 150, 25);
		this.add(btn2);
		ButtonResponder br2 = new ButtonResponder();
		btn2.addActionListener(br2);

		// Add View Review Button
		btn3 = new JButton("View Reviews");
		btn3.setBounds(625, 275, 150, 25);
		this.add(btn3);
		ButtonResponder br3 = new ButtonResponder();
		btn3.addActionListener(br3);

		// Image to show
		BufferedImage myPicture = null;
		try {
			myPicture = ImageIO.read(getClass().getResource(
					"/images/" + name + ".jpg"));
		} catch (IOException e1) {
			e1.printStackTrace();
		}
		JLabel headerImage = new JLabel(new ImageIcon(myPicture));
		headerImage.setBounds(0, 0, 200, 300);
		this.add(headerImage);
	}