ril: avoid sending null aid string in getIMSI

A change to how getIMSI works in JB causes null aid strings
to be sent.  The result for RILs older than v7 is a corrupt
ril response in SIMRecords::fetchSimRecords.  This corruption
ends up setting mImsi to null (in SIMRecords) and that causes
havoc w/ 3g/4g data connections.

This patch avoids sending null aid strings and has fixed
data connection issues on several Motorola devices.

Change-Id: Ic1fc363e35d79793c48d19080a2e028e428b888f
fix build: add missing instance variable mRilVer

Fixes commit 4b785569b338d150dccdb5bb6d3a290b068e603c

Change-Id: Id239285aff6997eaa42521b695b6812029f580c1
Merge "base/SystemUI: Added Turkish translations" into jellybean
Merge "Added missing hungarian translation for Navbar settings" into jellybean
Merge "DateView: Use Intent.ACTION_LOCALE_CHANGED to refresh notification bar clock" into jellybean
Framework Base: Allow Mock SMS (1/2)

This change brings the possibility of simulate the reception of SMS on real devices. Fow now,
the only way of simulate the reception of SMS is using the android emulator, but this hasn't have
a CM10 image.

This change adds a MockSmsReceiver inside SMSDispatcher that have a BroadcastReceiver listening
for Intents.MOCK_SMS_RECEIVED_ACTION action. This class accept the SMS simulation if and only if
Settings.Secure.ALLOW_MOCK_SMS is enabled. The application that sends the mock SMS
requires the "android.permission.SEND_MOCK_SMS" permission.

This receiver should be used in the next way:

Intent in = new Intent(Intents.MOCK_SMS_RECEIVED_ACTION);
in.putExtra("scAddr", "+01123456789");
in.putExtra("senderAddr", "+01123456789");
in.putExtra("msg", "This is a mock SMS message.");
sendBroadcast(in);

or

String pdu = "07914151551512f2040B916105551511f100006060605130308A04D4F29C0E";
byte[][] pdus = new byte[1][];
pdus[0] = HexDump.hexStringToByteArray(pdu);
Intent in = new Intent(Intents.MOCK_SMS_RECEIVED_ACTION);
intent.putExtra("pdus", pdus);
sendBroadcast(in);

Patch 2: * Protect the mock SMS BroadcastReceiver with the permission "android.permission.SEND_MOCK_SMS".
           This permission is required for send mock SMSs, in addition to ALLOW_MOCK_SMS system setting.
         * Add result to ordered broadcast requests.
             Activity.RESULT_OK -> Ok. At least one message was sent
             Activity.RESULT_CANCELED -> Error. No messages were sent
Patch 3: English typos
Patch 4: Add Marco Brohet's suggestion

Change-Id: I5322cf748449a863ea8e8deda977108b9b58a413
Merge "Update Russian Translation-SystemUI-CM10" into jellybean
Merge "Framework Base: Fix some korean translation" into jellybean
Merge "Turkish: Fix too long ON/OFF text for setting toggle for tablets/phones" into jellybean
Merge "SystemUI: Added missing danish translations for: frameworks/base/core" into jellybean
Merge "Implement resolving of icon attributes to resIds in AlertController" into jellybean
Merge "Framework: Use holo alert drawables" into jellybean
Merge "SystemUI: Updated italian translation" into jellybean
Merge "Fix hardcoded "Cancel" string in Navbar editor" into jellybean
NotificationBar: Force DateView to collapse to gain space for clear_all_button

When DateFormat.getLongDateFormat() text is too long, the notification "clear_all_button" button
is hidden because DateView width. This change redesign the notification bar layout to force
DateView to collapse. This forces you to change the position of the buttons to the right.

Alternatives:

Patch 1: Align buttons (rotation and settings) to the right

Patch 2: Align buttons (rotation and settings) to the middle

Patch 3: Compute the text width of DateView to fit the maximum allowed by the status bar.
           * Calculate dinamicaly the width of the DateView to assign the maximum width
             when it fit in the screen, and stretch when not fit
           * Redesign the DateView widget. Now is a LinearLayout with 2 TextView's. This allow
             the use of ellipsize, because it is set to single line. Otherwise when the text is set
             the DateView don't show the ellipsize, although the view fit to the width.
Patch 4: Fix bug that in some circumstances ellipsize is not displayed

Change-Id: I2486c5e6b7d83a3c483519c17cdf57e90b50c79e

Conflicts:

	packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java