origin) {
      e.dataTransfer.setData(DRAG_DATA_GRID_IMAGE_URL, origin);
      e.dataTransfer.setDragImage(dragImage, -25, 50);
    }
  };

  private handleDrop = (e: React.DragEvent<HTMLDivElement>) => {
    events.imageAdded(this.props.frontId, 'drop');
    e.preventDefault();
    validateImageEvent(e, this.props.frontId, this.props.criteria)
     .then(this.props.input.onChange)
     .catch((err) => {
        alert(err);
        // tslint:disable-next-line no-console
        console.log('@todo:handle error', err);
      });
  };

  private handlePasteImgSrcChange = (e: React.FormEvent<HTMLInputElement>) => {
    e.preventDefault();
    e.persist();
    this.setState(
      { imageSrc: e.currentTarget.value },
      this.validateAndGetImage
    );
  };

  private validateAndGetImage = () => {
    events.imageAdded(this.props.frontId, 'paste');

    validateImageSrc(
      this.state.imageSrc,
      this.props.frontId,
      this.props.criteria
    )
     .then((mediaItem) => {
        this.props.input.onChange(mediaItem);
      })
     .catch((err) => {
        alert(err);
        // tslint:disable-next-line no-console
        console.log('@todo:handle error', err);
      });
    this.setState({ imageSrc: '' });
  };

  private clearField = () => this.props.input.onChange(null);

  private validMessage(data: GridData) {
    return data && data.crop && data.crop.data && data.image && data.image.data;
  }

  private onMessage = (event: MessageEvent) => {
    if (event.origin!== this.props.gridUrl) {
      // Log: did not come from the grid
      return;
    }

    const data: GridData = event.data;

    if (!data) {
      // TODO Log did not get data
      return;
    }

    if (!this.validMessage(data)) {
      // TODO Log not a valid message
      return;
    }

    this.closeModal();
    const crop = data.crop.data;
    const gridImage = data.image.data;
    const imageOrigin = `${this.props.gridUrl}/images/${gridImage.id}`;

    return validateMediaItem(
      crop,
      imageOrigin,
      this.props.frontId,
      this.props.criteria
    )
     .then((mediaItem) => {
        events.imageAdded(this.props.frontId, 'click to modal');
        this.props.input.onChange(mediaItem);
      })
     .catch((err) => {
        alert(err);
        // tslint:disable-next-line no-console
        console.log('@todo:handle error', err);
      });
  };

  private closeModal = () => {
    this.setState({ modalOpen: false });
    window.removeEventListener('message', this.onMessage, false);
  };

  private openModal = () => {
    this.setState({ modalOpen: true });
    window.addEventListener('message', this.onMessage, false);
  };
}

const mapStateToProps = (state: State) => {
  return {
    gridUrl: selectGridUrl(state),
    editMode: selectEditMode(state),
  };
};

export default connect(mapStateToProps)(InputImage);
You're right. And I don't think anyone has...except for Hardwick which really irks me. Look, I get that everyone is entitled to their opinions. I just don't get, for the life of me, how someone can even ATTEMPT to rationalize that decison. Everyone is in agreement that it was just lame and unnecessary, which makes his indignant protests so obnoxious. 
It's like he's saying we are the ones who are being silly for being up in arms and angry!

Even if he just downplayed and didn't mention it or just said,'meh I thought it was fine', it'd be forgivable. Instead, he goes out of his way to justify the decisons Gimple made. Reeks of company bias and his credibility with me is now shot. Infact, anyone who defends that trash of a cliffhanger immediately exposes him/herself as someone who doesn't know a thing about effective story telling. Stop it Chris, for Christ's sake!You're welcome to speculate and discuss new channels coming to Bell TV in 2011 but PLEASE unless it's been confirmed by an official press release, be clear about what is speculation and what is fact.
If its posted on the CRTC site that its been approved by the CRTC but Bell TV has not said anything, I would consider that in the "not very likely at this time" category.
There was talk that Bell was going to offer just HBO as a separate package, nothing yet. I asked Bell customer service a few months back.
This is not allowed by the Movie Network. Won't be happening.
It's even more complicated than that. HBO Canada is a multiplex of TMN and MC, therefore CRTC regulations prevent the sale of HBO without TMN or MC.
To keep the discussion going, let's (again) list the channels that are offered by Bell competitors that are not found on Bell. Hopefully, some of these will actually make the "2011 New Channels" list!
Going from memory (ok, I added more after looking at Rogers), quote and add if you know more...
After typing this (and I believe there are more), I realize, again, that Bell is slipping behind rapidly. They need to start using MPEG4 sooner than later.
Looks like bell has re added Channels 271 and 272 for 2011. Both currently say off air.
both these channels were never up to date when were on the guide in 2010.
I stand corrected channel 271 list 3 Hockey games that will be shown in 3D two of which have already been shown.
CBS College Sports HD is on Channel 1413.
Hmm. One of those channels that doesn't show in my guide. I go from 1410 to 1418 (which I don't sub).
Global Winnipeg just went HD OTA.
When will it be on Bell?
CITY-Vancouver has been HD for a while but not available on Bell.
TVO HD is yet another one missing from Bell, which I know Rogers carries.
Will Spike HD be added at all in 2011?
I gave the wrong channel for CBS College Sports Network HD. It should be channel 1432.
Again based on my contacts....
Spike HD is still in the plans but no date...
By the way, jayoldschool, we DO have MFun! HD, and perhaps I need to check and see if it might have been removed in the past day or so. It has always been there for me.
I like the quotes on "news"
Personally, I don't think Spike HD is coming. No other Canadian carriers have it, correct? Doubt that Bell will lead the way, when they are clearly content to go with an "also ran" status.
Yes, my mistake! We have MFun. I was thinking of MFest (which I am not sure if there is an HD feed).
1432 also does not appear in my "All Chan". Goes from 1428 to 1436.
MFUN! HD = 1254 in my guide.
add if you know more...
Here is the list of missing HD channels French and English....
There you go... Feel free to use it on post #1..
@SpykeYs, you can probably add Global CKND-DT Winnipeg to the list of missing channels. It went live in Dec. 2010 and is carried by the local cable and telco.Easily personalise your messages by adding dynamic data fields to make your messages individual to each recipient – for example, their name or order number.
Create a library of pre-defined templates to ensure your messaging stays uniform and on-brand.
Yakara’s system allows you to send flexible campaigns via our online console or by secure file transfer. We offer secure uploading, de-duping and validation of customer data, and easy scheduling. Our system allows you to define set times for your message delivery to take into account inbound call volumes and the availability of your agents. With our online console, you can pause, stop, cancel or reschedule your jobs at any given time.
Inform comes with its own management interface, where you can set-up, manage and monitor your campaigns in real time. With our comprehensive reporting, you will get valuable insight into how your campaigns are performing from start to finish.
Yakara employs best practice in handling all customer data and is run